implement-spec
Skill0 starsChanged 4 months agoMITView on GitHub
Implement and verify one approved Spec-Driven Development slice from requirements.md, design.md, tasks.md, and progress.md. Use when a user asks to build an approved feature slice, continue its active tasks, or complete its verification gate while preserving scope, stop conditions, proof evidence, and specification write-back.
107 other projects use a version of this.
Adopted by
Most recently taken up by
- maxatwork/skillstheir own version, first seen Nov 8, 2026
- rodeyseijkens/skillstheir own version, first seen Nov 8, 2026
- ivanrvpereira/.agentstheir own version, first seen Nov 8, 2026
- 5thlayer/skillworkstheir own version, first seen Nov 8, 2026
- dfirmin/compasstheir own version, first seen Nov 8, 2026
- zhikedan/mattpocock-skills-dshtheir own version, first seen Nov 8, 2026
Used with
Projects with it also use implement-spec-with-codex, close-spec and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
dzhngSkillimplement-spec-with-codex
Run [implement-spec](../implement-spec/SKILL.md) with Codex doing the implementation passes while you orchestrate, integrate, and review. Use when the user asks to implement a spec with Codex, or to run implement-spec with Codex as the implementer.
Also in 4 projects that use this
dzhngSkillclose-spec
When a spec under specs/<feature>/ is done shipping (a write-spec build, or any planned task that produced a spec), archive it to specs/done/ and rewrite it from a build-plan into a durable rationale — the why, the principles, the invariants — pointing back to the real code for the how. Use when implementation has landed and the plan no longer matches what shipped, or the user says a feature/spec is finished. Pairs with [write-spec](../write-spec/SKILL.md) (the plan this closes) and [review](../review/SKILL.md) (run before closing).
Also in 4 projects that use this
wolverin0Skillaudit-decisions
Standardize remediation decisions, baseline-policy entries, and legal-review banners for accepted, deferred, or policy-blocked audit findings.
Also in 4 projects that use this
saffron-healthSkillget-pr-reviews
Get nicely formatted output of the last review comments on a PR. Used internally by other skills.
Also in 3 projects that use this
saffron-healthSkillpush-everything
Stage ALL changes in the repository (not just session changes), commit, and push. Use when you need to commit all pending changes.
Also in 3 projects that use this
transitive-bullshitSkillcompare-screenshots
Compare screenshots against the intended design, distinguishing approved references from historical baselines. Use for iterative implementation matching, before/after visual review, objective image telemetry, or checking a lone capture for flat, empty, or badly framed content.
Also in 4 projects that use this
- +5 more from dzhng
Other versions107 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 107
- mattpocock/skills★ 309ksame name
- formbricks/formbricks★ 13ksame name
- ArcReel/ArcReel★ 6.3ksame name
- vinvcn/mattpocock-skills-zh-CN★ 5.5ksame name
- withcoral/coral★ 4.9ksame name
- dzhng/jevgrep★ 3.2ksame name
- dzhng/skills★ 1.5ksame name
- a16z/jolt★ 1.1ksame name
- cashew-labs/libretto★ 898same name
- saffron-health/libretto★ 883same name
97 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository7 other files it gives its agents.
- AGENTS.mdAGENTS.md
- templates/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- templates/CLAUDE.mdCLAUDE.md
- add-specSkill
- review-specSkill
- update-specSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. 0 are common, 10 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 100 edited versions we read keep these.
10
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
Read the applicable AGENTS.md and the feature's requirements.md, design.md, and tasks.md.
- Very specific: line 17
Before broad code exploration, run python3 .agents/scripts/validate_spec.py specs/<feature>, python3 .agents/scripts/validate_spec.py --all …
- Distinctive: line 30
Do not run unscoped full tests, the full browser matrix, dependency installation, production proof, or repository-wide security and quality …
- Very specific: line 31
Write progress, failures, discoveries, proof receipts, capability readiness, and deferred work into progress.md.
- Very specific: line 32
Stop and use update-spec when implementation changes behavior, design, scope, slice size, task size, proof scope, capability ownership, …
- Very specific: line 33
Run every complete verification-gate command through python3 .agents/scripts/run_proof.py slice -- <command> and preserve each successful …
- Distinctive: line 40
Do not stop implementation only because a recorded deployment or release gate remains incomplete.
- Distinctive: line 48
Do not implement unapproved scope.
- Distinctive: line 49
Do not change acceptance criteria to fit code.
- Distinctive: line 50
Do not treat proof as ownership of implementation.
- Distinctive: line 51
Do not continue implementation after discovering that task order or an engineering mechanism must change the specification.
- Distinctive: line 52
Do not hide failing checks or unresolved decisions.
- Distinctive: line 53
Do not record a proof as passing without a verified real exit status, and do not stage another agent's concurrent changes.
- Very specific: line 54
Do not bypass the proof runner when the specification has adopted ## Proof Scope Gate, and do not use slice scope to evade a focused-task …
- Distinctive: line 55
Do not mark work complete without its proof.
- Distinctive: line 56
Do not describe verified implementation as deployable or releasable unless its release gates also pass.
“Common” is measured: kept by at least 6 in 10 of the 100 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Implement Spec
Implement only the active approved slice and preserve the agreement around it.
Preconditions
Confirm that expected behavior, design decisions, implementation boundary, cross-specification capabilities, slice size, task size, proof scope, task ownership, traceability, execution order, proof, and project checks are clear. Stop and use update-spec when a required capability is missing, ambiguous, cyclic, unavailable, or redefined by the consumer; when an adopted slice or a new or refined task is oversized or has an unjustified exception; when proof scope is missing or unjustifiably broad; when a decision blocks active implementation or required verification; when a required delivery surface is unmapped or ambiguously owned; when an active acceptance criterion or data entity lacks task ownership; or when a task needs a surface first delivered by a later task. A later deployment or release gate is not an implementation stop condition unless the requested work would cross that gate.
Workflow
- Read the applicable
AGENTS.mdand the feature'srequirements.md,design.md, andtasks.md. Read only the latest entries inprogress.mdthat affect the active task, its dependencies, or current blockers. - Before broad code exploration, run
python3 .agents/scripts/validate_spec.py specs/<feature>,python3 .agents/scripts/validate_spec.py --all specs, andpython3 .agents/scripts/split_progress_log.py --checkwhen available. These checks are authoritative for adopted mechanical contracts. An absent Slice Size, Task Size, or Proof Scope gate in a new or materially refined plan is a routing signal, not a pass. - Resolve every capability needed by the active task with
python3 .agents/scripts/capability_index.py --capability <name>when available. Treatreadyas a navigation result derived from the provider checkbox, not as approval; the global validator remains authoritative. Open the provider task plan only for a pending, missing, ambiguous, or unresolved capability, or when the task would change the provider-owned contract. Stop for a missing or ambiguous provider, malformed edge, cycle, incomplete provider task or proof, or consumer-owned duplicate. - Identify the active task as the first incomplete task in listed execution order, not the lowest numeric label. Confirm every named
Depends on:task is complete. For a legacy task without the declaration, reconstruct its prerequisites and useupdate-specwhen the ordering is not explicit enough to trust. - Preflight delivery coverage: inventory every UI, API, domain, persistence, integration, security or privacy, and operational surface named by the active slice, then confirm each has one primary task through
Owned surfaces. - Preflight traceability: confirm every task has exactly one
Owns:line, every active[AC-<n>]criterion has exactly one owner, that owner delivers or depends only on earlier delivery of every surface needed to prove it, every active data entity has at least one owner, and every deferred or release item is classified without an active owner. - Preflight execution order: inspect the active task's purpose, owned surfaces, traceability items, and proof. Confirm every schema, interface, route, service, fixture, earlier result, and external capability it needs exists in the baseline, comes from an available capability, belongs to this task, or was delivered by an earlier completed task.
- Judge the declarations whose syntax the validator checks but whose truth it cannot. Accept a slice exception only for an indivisible authority, lifecycle, or verification boundary; accept a task exception only for the recorded invalid intermediate state caused by splitting an atomic migration, transaction, or invariant; accept broad proof only when the task owns that broader gate. Confirm
validate_task_commandand its tests cover the project's broad test, build, browser, and release commands before relying on focused-proof enforcement. - Confirm unresolved items name the stage they block. Keep deferred and deployment-only coverage visible without treating it as active implementation work.
- Stop and use
update-specif the task combines independently testable behaviors, separable adapter integrations, mixed domain foundation plus UI plus authentication or recovery, source-owned integration from another specification, independently failing proof modalities, or more than one meaningful implementation commit; if a capability, surface, traceability item, or prerequisite is missing, unavailable, unmapped, ambiguous, cyclic, or first delivered later; or if any adopted gate is false or unjustified. Record the corrected agreement and stop before implementation resumes. - Inspect relevant existing code and confirm ownership boundaries, scoped to the active task.
- Preflight the services, runtimes, credentials, ports, databases, build outputs, and other mutable state required by the task proof. Treat an unavailable dependency as an environment blocker: pause the affected proof, continue independent work, surface it to the user, and record the incident in
progress.mdplus any resulting status intasks.md. - Mark the active task
In Progressintasks.md. - Implement one task at a time. Run focused proof through
python3 .agents/scripts/run_proof.py task --task <n> -- <command>; add--broadonly for a validator-approved broad task. Record the exact successful receipt in the task's newest-firstprogress.mdentry. Confirm the real exit status and never treat piped or truncated output as proof. - Do not run unscoped full tests, the full browser matrix, dependency installation, production proof, or repository-wide security and quality gates during focused task work unless the task owns an approved broad gate. Keep other broad checks at slice verification.
- Write progress, failures, discoveries, proof receipts, capability readiness, and deferred work into
progress.md; write only current task, blocker, and slice state intotasks.md. Keep## Progress Logintasks.mdas exactlySee [progress.md](progress.md). - Stop and use
update-specwhen implementation changes behavior, design, scope, slice size, task size, proof scope, capability ownership, traceability, execution order, or blocker classification, or reveals more than one independently useful commit. - Run every complete verification-gate command through
python3 .agents/scripts/run_proof.py slice -- <command>and preserve each successful receipt inprogress.md. - Mark the slice
Verifiedonly after every task is complete, every verification item is checked, the broad slice receipt exists, and the validator passes. Report release readiness separately.
Stop Conditions
Stop when work expands beyond the approved boundary, an adopted slice fails the Slice Size Gate or its exception is unjustified, the active task fails the Task Size Gate or its exception does not preserve an atomic invariant, its proof scope is missing or unjustifiably broad, a required capability is missing, unavailable, ambiguous, cyclic, or redefined, a missing decision affects behavior or architecture required by the active slice, a required delivery surface lacks one clear owning task, the active task depends on a surface first delivered later, implementation conflicts with the specification, a required check fails outside the slice, or ownership overlaps another task or agent.
Do not stop implementation only because a recorded deployment or release gate remains incomplete. Do stop before deploying, releasing, or claiming release readiness while that gate remains incomplete.
An unavailable environment dependency, such as a stopped service, missing daemon, or absent credential, is an environment blocker, not an implementation defect. Pause the affected proofs, continue independent work, surface it to the user, and record it as environment-blocked. Verify evidence by real exit status and re-run ambiguous results; do not record a masked or piped exit code as a pass.
When delegation is available and authorized, give each sub-agent a closed brief containing the active task, decided design, hard constraints, owned paths and surfaces, exclusions, proof, and commit boundary; the main thread owns the repository-wide preflight and the sub-agent does not repeat it. Run different tasks in parallel only when dependencies, files, surfaces, proofs, ports, databases, build outputs, and other mutable runtime state are isolated. Never implement two task labels concurrently in one shared worktree; give each parallel task a short-lived branch and isolated worktree. Keep reconciliation, real-exit proof confirmation, specification write-back, and commit decisions in the main thread.
Boundaries
- Do not implement unapproved scope.
- Do not change acceptance criteria to fit code.
- Do not treat proof as ownership of implementation.
- Do not continue implementation after discovering that task order or an engineering mechanism must change the specification.
- Do not hide failing checks or unresolved decisions.
- Do not record a proof as passing without a verified real exit status, and do not stage another agent's concurrent changes.
- Do not bypass the proof runner when the specification has adopted
## Proof Scope Gate, and do not use slice scope to evade a focused-task restriction. - Do not mark work complete without its proof.
- Do not describe verified implementation as deployable or releasable unless its release gates also pass.
Completion
Finish when approved behavior works, required checks pass, the specification files reflect the final implementation state, and any remaining release gate is reported explicitly.
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.

