agentleFS
monaccodemonaccode/astromesh-sdd/skills/sdd/SKILL.md

sdd

Skill0 starsChanged 29 days agoApache-2.0View on GitHub

Use when starting or resuming any feature with Spec-Driven Development, or when unsure which SDD phase comes next. Explains the cycle and routes to sdd-specify, sdd-plan, sdd-tasks, sdd-implement or sdd-verify based on which files exist.

20 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use bdd, migrate and 3 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.
  • TashanGKDSkill

    bdd

    行为驱动开发(BDD)流程助手。用 Given-When-Then 描述验收标准,包含 Feature 文件管理、步骤定义实现。用户提到 BDD、验收测试、Gherkin 时使用。

    Also in 3 projects that use this

  • tuistSkill

    migrate

    Migrates existing Xcode projects to Tuist generated workspaces with build and run validation, external dependency mapping, and migration checklists. Use when adopting Tuist for an existing app or converting a hand-edited Xcode project to generated projects.

    Also in 4 projects that use this

  • BlockSkill

    plan

    Draft a TDD, PRD, or lightweight plan in the conversation without committing it.

    Also in 3 projects that use this

  • Hugging FaceSkill

    implement

    Make tests pass. Invoke after /write-tests produces failing tests.

    Also in 3 projects that use this

  • GoogleSkill

    tdd

    Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.

    Also in 4 projects that use this

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 1 is distinctive, and 6 are very specific to this project.

  • 0

    Common

    Most of the 11 edited versions we read keep these.

  • 1

    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
  1. Distinctive:

    Never keep the state of a feature only in the conversation.

    line 11
  2. Very specific:

    Read .sdd/config.yaml (project, else ~/.sdd/config.yaml) for specs_dir, gates and phases.

    line 29
  3. Very specific:

    If the user describes something new, start a new feature with sdd-specify.

    line 33
  4. Very specific:

    After a FAIL: If verify.md says Verdict: FAIL, do its "Next actions" (they send you back to specify, tasks or implement).

    line 50
  5. Very specific:

    Human gate: After each phase listed in gates (default specify, plan, tasks), show the artifact and stop until the user approves.

    line 58
  6. Very specific:

    Traceability: Every plan step and every task cites at least one REQ-n.

    line 62
  7. Very specific:

    Spec first: When work reveals a new or changed requirement, it goes into spec.md as a new REQ-n before any code changes.

    line 66

“Common” is measured: kept by at least 6 in 10 of the 11 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Spec-Driven Development (SDD)

Work flows spec → plan → tasks → implement → verify. Every phase leaves a file on disk. Those files are the shared memory between sessions, people and agents: anyone — you in a fresh session, a teammate, a different coding agent — can pick the work up by reading them. Never keep the state of a feature only in the conversation.

Artifacts

specs/
  constitution.md          project principles (optional, once per repo)
  NNN-<slug>/
    spec.md                REQ-1…  what and why; verifiable acceptance criteria
    plan.md                decisions, files touched, risks; each step cites REQ-n
    tasks.md               T-1…    checklist; each task cites REQ-n and names its check
    verify.md              REQ → task → evidence matrix; uncovered items flagged

specs/ and the REQ/T prefixes are defaults; .sdd/config.yaml can change them.

Where am I? (routing)

  1. Read .sdd/config.yaml (project, else ~/.sdd/config.yaml) for specs_dir, gates and phases. Missing file = defaults: specs_dir: specs, gates: [specify, plan, tasks], phases: [constitution, specify, plan, tasks, implement, verify].
  2. Pick the feature dir: the one the user names, else the highest NNN-* in specs_dir. If the user describes something new, start a new feature with sdd-specify.
  3. Walk phases in order. The next step is the first phase in phases that is not done:
PhaseDone whenSkill
constitutionalways (optional — suggest it once if <specs_dir>/constitution.md is missing, never block on it)sdd-constitution
specifyspec.md existssdd-specify
planplan.md existssdd-plan
taskstasks.md existssdd-tasks
implementtasks.md has no - [ ] leftsdd-implement
verifyverify.md says Verdict: PASSsdd-verify
any other namethe file its skill says it writes existssdd-<name>, else <name>

Approval lives in the file. A phase listed in gates is only done when its artifact's **Status:** line says approved. If the artifact exists but its status is not approved, the next step is that phase's gate: show the artifact and ask for approval — do not move on.

After a FAIL. If verify.md says Verdict: FAIL, do its "Next actions" (they send you back to specify, tasks or implement). Once they are done and every task is ticked again, run sdd-verify again; it rewrites verify.md.

Tell the user where the feature stands (one line), then use the next skill.

Rules that hold in every phase

Human gate. After each phase listed in gates (default specify, plan, tasks), show the artifact and stop until the user approves. Approval of one phase is not approval of the next.

Traceability. Every plan step and every task cites at least one REQ-n. A requirement nobody cites is not going to be built; a task citing nothing is scope creep. sdd-verify fails both.

Spec first. When work reveals a new or changed requirement, it goes into spec.md as a new REQ-n before any code changes. IDs are permanent: never renumber, never reuse.

One task at a time. Implement a task, run its check, tick it, commit. Then the next.

Customizing

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.