implementation-specs
Skill2 starsChanged 36 days agoMITView on GitHub
Takes the engineering plan document produced by the engineering-planner skill (docs/engineering/engineering-doc.md) and expands it into a full set of granular, runnable implementation specification files. Use this skill after engineering-planner has finished — it is the second step before any coding begins. Trigger when the user says things like "generate implementation specs", "create detailed specs from the plan", "I need the Supabase SQL schema", "give me the auth flow spec", "break down the engineering plan into buildable specs", or "what do I need to start building". Stage 2 of the PRD → Production pack.
- Reads credentials
In this repository21 other files it gives its agents.
- analytics-question-framingSkill
- clinical-ai-evaluation-designSkill
- cohort-retentionSkill
- design-systemSkill
- engineering-plannerSkill
- experiment-designSkill
- frontend-setupSkill
- gxp-part11-checkerSkill
- insight-storytellerSkill
- market-researchSkill
- metric-root-causeSkill
- opportunity-finderSkill
- opportunity-sizingSkill
- prd-evaluatorSkill
- prd-writerSkill
- product-strategy-canvasSkill
- security-foundationSkill
- strategy-sprintSkill
- trial-eligibility-matcherSkill
- trial-failure-investigatorSkill
- user-researchSkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 4 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 25
Identify: every distinct concern in the plan — features, integrations, user roles, data models, flows, infrastructure decisions, etc.
- Distinctive: line 28
Do not: ask clarifying questions — all decisions are already captured in the plan.
- Distinctive: line 40
Use your judgment on how to split concerns.
- Distinctive: line 51
All tables (in dependency order) with columns, types, constraints, and defaults
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
PRD → Production pack · Stage 2 of 5.
engineering-planner→implementation-specs→security-foundation→frontend-setup→ build features (withdesign-systemalways on) Stop after this stage, show the user what was produced, and wait for approval before moving on.
Input
docs/engineering/engineering-doc.md from Stage 1. If it isn't there, ask the user to share the engineering plan.
Steps
- Read the engineering plan that the user has provided in full.
- Identify every distinct concern in the plan — features, integrations, user roles, data models, flows, infrastructure decisions, etc.
- Decide what spec files are needed based on what the plan contains. Do not use a fixed list — derive the right set of files from the plan itself.
- Generate each spec file inside
docs/specs/. Name each file clearly after what it specifies. - Do not ask clarifying questions — all decisions are already captured in the plan.
Principles for generating specs
Each spec file you create must be:
- Self-contained — a developer can read it alone and know exactly what to build
- Concrete — no vague statements, no "TBD", no "as needed"
- Runnable where applicable — SQL must execute, API contracts must be precise, env vars must be real
Use your judgment on how to split concerns. Some features may warrant their own file; others may combine naturally. The goal is that every meaningful concern in the engineering plan has a corresponding spec that makes it unambiguous to implement.
Always include: docs/specs/supabase-schema.sql
Regardless of what other specs you generate, always produce this file. It must be a single SQL file that can be pasted directly into the Supabase SQL Editor and run on a fresh project without errors.
The SQL must cover everything the plan specifies:
- Extensions
- Custom enums and types
- All tables (in dependency order) with columns, types, constraints, and defaults
- Foreign keys
- Indexes
updated_atauto-update triggers for every table that has that column- Row Level Security enabled on every table + all RLS policies derived from the auth and role decisions in the plan
- Storage bucket creation and policies (if the plan includes file storage)
Always include: .env.example
Regardless of what other specs you generate, always produce this file at the project root.
It must list every environment variable the app needs — derived from all integrations, services, and infrastructure decisions in the plan. For each variable include an inline comment explaining what it is and where to get it.
# Supabase
NEXT_PUBLIC_SUPABASE_URL= # Supabase project URL — Settings > API
NEXT_PUBLIC_SUPABASE_ANON_KEY= # Supabase anon/public key — Settings > API
SUPABASE_SERVICE_ROLE_KEY= # Supabase service role key — Settings > API # SERVER ONLY
# Add every other variable the plan requires (LLM provider, storage, email, payments, etc.)Rules:
- Values must be empty (this is
.env.example, not.env) - Group variables by service with a
# ServiceNamecomment header - Mark variables that must never be exposed to the browser with a
# SERVER ONLYcomment - Cover every service mentioned in the engineering plan — nothing omitted
After generating all files
Print a summary listing:
- Each file created with its path
- One sentence describing what it specifies
Then ask:
"All implementation specs are in
docs/specs/, and the Supabase schema SQL is ready to run. Review them and let me know when you're ready for Stage 3 — Security Foundation (security-foundation)."
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

