agentleFS
liatrio-labsliatrio-labs/spec-driven-workflow/skill/SKILL.md

sdd

Skill92 starsChanged 13 months agoApache-2.0View on GitHub

Execute the Liatrio Spec-Driven Development (SDD) workflow when explicitly invoked by the user. NOTE: this skill is NOT intended to be dynamically loaded or automatically triggered; it should only ever be explicitly called by the user.

We split this skill into the rules it gives an agent

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

  • 0

    Common

    Most of the 10 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If multiple active specs exist and the user request does not clearly identify one, ask the user which spec to continue before modifying …

    line 22
  2. Distinctive:

    Before routing, run the bundled assessor script while the current working directory is the target repository/workspace root:

    line 26
  3. Very specific:

    Use manual inspection only if the script cannot run.

    line 34
  4. Distinctive:

    After determining the phase, read only the corresponding bundled reference file:

    line 56
  5. Distinctive:

    Always defer to the detailed instructions, constraints, and anti-patterns in the chosen reference file.

    line 63
  6. Distinctive:

    When beginning or handing off work, state the phase and selected spec in plain language:

    line 67
  7. Distinctive:

    When a phase creates or updates files, include:

    line 77
  8. Distinctive:

    Use a blank line between every distinct part of the handoff: heading, likely next phase action, same-chat instruction, suggested reply, and …

    line 96

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

You are the orchestrator for the Spec-Driven Development (SDD) workflow. Determine the current lifecycle phase from the workspace, then load and follow the single matching phase reference.

Skill Contract

This skill manages one SDD phase per invocation unless the loaded phase explicitly requires a smaller checkpoint. It must:

  1. Assess workspace state before routing.
  2. Select exactly one active spec and one phase reference.
  3. Load only that phase reference.
  4. Execute the phase instructions or stop at a required approval gate.
  5. Tell the user the selected spec, detected state, current phase, chosen phase reference path, created or updated artifacts, and next recommended natural-language request.

If multiple active specs exist and the user request does not clearly identify one, ask the user which spec to continue before modifying files. If the selection is unambiguous, state why that spec was selected.

State Assessment

Before routing, run the bundled assessor script while the current working directory is the target repository/workspace root:

python3 {{skill_dir}}/scripts/assess-sdd-state.py .

{{skill_dir}} locates bundled skill assets only; SDD artifacts are assessed from the workspace path argument (. in the command above). The script outputs JSON describing active specs and a recommended phase. Use that output as the default source of truth for routing.

Use manual inspection only if the script cannot run. When falling back manually, state that fallback explicitly, inspect ./docs/specs/, and apply the same phase rules below.

Phase Rules

  • Phase 1 — Spec Generation
    • Condition: The user requested a new feature, but no matching [NN]-spec-[feature-name]/ directory exists, or the spec directory exists but the spec document is incomplete or missing.
    • Action: Gather context and write the formal specification.
  • Phase 2 — Task List Generation and Audit
    • Condition: [NN]-spec-[feature-name].md exists and is complete, but [NN]-tasks-[feature-name].md is missing, or the mandatory [NN]-audit-[feature-name].md planning audit has not been generated and passed.
    • Action: Translate the spec into parent/sub-tasks, define Proof Artifacts, and run the mandatory planning audit gate.
  • Phase 3 — Task Implementation
    • Condition: The spec, task list, and a passing planning audit report all exist, and there are incomplete tasks marked with [ ] or [~] in the task list.
    • Action: Execute the task list, implement the code, and generate the required Proof Artifacts.
  • Phase 4 — Validation
    • Condition: Implementation tasks are marked complete and the user asks to validate the work, or the assessor discovers an active spec where implementation appears finished and validation is missing or failing.
    • Action: Evaluate the codebase and Proof Artifacts against the spec requirements using strict pass/fail quality gates.

Reference Routing

After determining the phase, read only the corresponding bundled reference file:

  • If Phase 1 applies: {{skill_dir}}/references/sdd-1-generate-spec.md
  • If Phase 2 applies: {{skill_dir}}/references/sdd-2-generate-task-list-from-spec.md
  • If Phase 3 applies: {{skill_dir}}/references/sdd-3-manage-tasks.md
  • If Phase 4 applies: {{skill_dir}}/references/sdd-4-validate-spec-implementation.md

Always defer to the detailed instructions, constraints, and anti-patterns in the chosen reference file.

User-Facing Reporting

When beginning or handing off work, state the phase and selected spec in plain language:

Current SDD phase: Phase N — <phase name>
Selected spec: `docs/specs/NN-spec-feature/` (or `none yet — new spec will be created` when no spec exists)
Phase reference: `<chosen bundled phase reference path>`
Detected state: <state summary from assessor or manual fallback>
Selection reason: <why this spec/phase was selected>

When a phase creates or updates files, include:

  • created or updated artifact paths
  • any approval gate reached
  • validation or audit outcome, when applicable
  • a How to Continue the SDD Workflow handoff using this exact spacing pattern:
## How to Continue the SDD Workflow

Likely next phase action: <what the skill will do next, or that the current workflow is complete>

To continue the workflow in this chat, reply with:

`<suggested natural-language reply>`

You can also continue in a new chat if you want to keep context lean; the SDD skill will reassess repository state from the persisted concrete artifact set for the current phase, such as spec, task, audit, proof, or validation artifacts.

Use a blank line between every distinct part of the handoff: heading, likely next phase action, same-chat instruction, suggested reply, and new-chat option. Suggested replies include:

  • Continue SDD with task planning.
  • Generate the sub-tasks.
  • Continue SDD with implementation.
  • Continue SDD with validation.
  • Start SDD for a new feature.

Do not label the handoff as a generic next-request section. Do not put the suggested reply before the likely next phase action. Do not compress the handoff into adjacent lines. Do not refer users to slash-style phase invocations, bundled reference filenames, or direct phase command names for continuation. The skill router reassesses workspace state on the next invocation and loads the correct reference.

Download now (ZIP)

  • Other versions19 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 19

    1. siemens/ix★ 384same name
    2. SpillwaveSolutions/sdd-skill★ 99same name
    3. AsiaOstrich/universal-dev-standards★ 82same name
    4. baekenough/oh-my-customcode★ 42same name
    5. dewil/ai-toolkit★ 9same name
    6. dewil/claude-toolkit★ 9same name
    7. artimath/effect-skills★ 8same name
    8. kingdon/skills★ 4same name
    9. totalfrank/skills★ 4same name
    10. Isabella-a/Skills★ 2same name

    9 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.

  • Used alongsideProjects with it also use migrate and tdd.

    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.
    • 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 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 3 projects that use this

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.