skills/governor/SKILL.md
Use when the user says 'new project', 'project init', 'what tier', 'scope', or discusses project maturity, complexity budget, or what's appropriate to build.
npx skillsauth add cwinvestments/memstack governorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Enforce tier-appropriate complexity. Prevent over-engineering the #1 waste of time in AI-assisted development.
When this skill activates, output:
🏛️ Governor — Checking project tier constraints...
Then execute the protocol below.
| Context | Status | Priority | |---------|--------|----------| | User starts a new project ("new project", "init", "scaffold") | ACTIVE — assign tier | P1 | | User asks "what tier", "what's allowed", "scope check" | ACTIVE — report current tier constraints | P1 | | User proposes work that exceeds current tier | ACTIVE — flag and advise | P2 | | User is executing work within tier constraints | DORMANT — don't interrupt | — | | User explicitly overrides ("I know, do it anyway") | DORMANT — user has authority | — |
If you're thinking any of these, STOP — you're about to let scope creep happen:
| You're thinking... | Reality | |---|---| | "Adding tests is always good practice" | Not for prototypes. Tests for throwaway code waste time. | | "This needs proper auth" | Single-user tools don't need auth. Add it when there are users. | | "Let me add CI/CD while I'm at it" | CI/CD for a prototype is gold-plating. Ship first. | | "Error handling should be comprehensive" | Prototype error handling = crash and log. That's it. | | "I should add monitoring" | < 10 users? Console.log is your monitoring. | | "This should be configurable" | Hardcode it. Make it configurable when someone asks. |
Ask or infer the project tier from context:
| Tier | Description | Effort Allocation | |------|-------------|-------------------| | Prototype | Exploring an idea. May be thrown away. | Minimal — working code only | | MVP | Validated idea, building for first users. | Moderate — basic quality gates | | Production | Serving real users, needs reliability. | Full — complete quality stack |
If tier is unclear, default to Prototype and escalate only when evidence suggests otherwise.
| Allowed | NOT Allowed | |---------|-------------| | Working code that demonstrates the idea | Unit tests | | Hardcoded config values | CI/CD pipelines | | Console.log for debugging | Type systems / strict typing | | Single-file scripts | Monitoring / alerting | | README with setup instructions | Authentication / authorization | | | Infrastructure-as-code | | | Rate limiting | | | Database migrations (use SQLite) |
Prototype rule: If it works in a demo, ship it.
| Allowed | NOT Allowed | |---------|-------------| | Everything from Prototype, plus: | Integration test suites | | Basic unit tests (happy path only) | Full CI/CD with staging | | Simple error handling (try/catch at boundaries) | Monitoring dashboards | | Environment variables for config | Multi-environment deploys | | Basic input validation | Performance optimization | | Simple auth (if multi-user) | Horizontal scaling | | README + basic API docs | Comprehensive logging |
MVP rule: If the first 10 users can use it reliably, ship it.
| Allowed | Required | |---------|----------| | Everything from MVP, plus: | Comprehensive tests (unit + integration) | | Performance optimization | CI/CD pipeline | | Monitoring and alerting | Error tracking (Sentry or equivalent) | | Multi-environment deployment | Input validation at all boundaries | | Horizontal scaling | Authentication + authorization | | Database migrations | Logging with structured output | | Rate limiting | API documentation |
Production rule: If it breaks at 3 AM, someone gets paged.
Output a brief summary:
🏛️ Project: {name}
Tier: {Prototype | MVP | Production}
Allowed: {brief list}
NOT allowed: {brief list of key restrictions}
When the user proposes work that exceeds the tier, flag it:
🏛️ Governor — Scope check:
You're proposing {X}, but this is a {Tier} project.
{X} is a {higher tier} concern. Current tier doesn't require it.
Want to proceed anyway, or skip it for now?
Always defer to the user if they override. Governor advises, doesn't block.
git push is your CItools
Use when the user says 'save diary', 'log session', 'wrapping up', or at end of a productive session.
tools
Use when the user says 'submit to marketplace', 'publish my skill', 'share this skill', 'list on marketplace', 'submit plugin', 'publish to community', or needs to submit a skill or plugin to a community marketplace via PR. Do NOT use for building skills or writing plugin code.
development
Use when the user says 'write browser tests', 'test this page', 'playwright test', 'e2e test', 'end to end test', 'browser test', 'test the UI', or needs Playwright-based browser testing for a web application. Do NOT use for unit tests, API tests, or non-browser testing.
development
Use when the user says 'teach me', 'explain as you go', 'mentor mode', 'walk me through', 'help me learn', 'explain why', 'learning mode', or wants real-time plain language narration of decisions and tradeoffs while building. Do NOT use for code review or debugging.