framework/claude/skills/sdd-roadmap/SKILL.md
Unified spec lifecycle (design, impl, review, roadmap management)
npx skillsauth add sync-dev-org/sync-sdd sdd-roadmapInstall 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.
Unified entry point for all spec lifecycle operations. Roadmap is always required — even single-feature work auto-creates a 1-spec roadmap. Lifecycle subcommands (design, impl, review) ensure a roadmap exists before executing. Management subcommands (create, run, revise, update, delete) handle multi-feature orchestration.
# Lifecycle subcommands (auto-create roadmap if needed)
$ARGUMENTS = "design {feature-or-description}" → Design Subcommand
$ARGUMENTS = "impl {feature} [task-numbers]" → Impl Subcommand
$ARGUMENTS = "review design {feature}" → Review Subcommand
$ARGUMENTS = "review impl {feature}" → Review Subcommand
$ARGUMENTS = "review impl --cross-cutting {specs}" → Review Subcommand
$ARGUMENTS = "review dead-code" → Review Subcommand
$ARGUMENTS = "review dead-code --wave N" → Review Subcommand
$ARGUMENTS = "review design --cross-check" → Review Subcommand
$ARGUMENTS = "review impl --cross-check" → Review Subcommand
$ARGUMENTS = "review design --wave N" → Review Subcommand
$ARGUMENTS = "review impl --wave N" → Review Subcommand
# Management subcommands
$ARGUMENTS = "run" → Run Mode
$ARGUMENTS = "run --gate" → Run Mode
$ARGUMENTS = "revise {feature} [instructions]" → Revise Mode (Single-Spec) — first word matches a spec name in specs/
$ARGUMENTS = "revise [instructions]" → Revise Mode (Cross-Cutting) — first word does not match any spec name
# revise Detect Mode: first word after "revise" is matched against spec directory names using
# word-prefix matching (e.g., "auth" matches "auth-service"). Caveat: if instructions begin
# with a word that prefix-matches a spec name, it will be misidentified as Single-Spec.
# Use the full spec name, or start instructions with a non-matching word for unambiguous
# Cross-Cutting invocation. 曖昧な場合は AskUserQuestion で Single-Spec か Cross-Cutting かを確認する。
$ARGUMENTS = "create" or "create -y" → Create Mode
$ARGUMENTS = "update" → Update Mode
$ARGUMENTS = "delete" → Delete Mode
$ARGUMENTS = "-y" → Auto-detect: run if roadmap exists, create if not (skip Step 2 user choice)
$ARGUMENTS = "" → Auto-detect with user choice
{{SDD_DIR}}/project/specs/roadmap.md existsWhen a lifecycle subcommand (design, impl, review) is detected:
{{SDD_DIR}}/project/specs/roadmap.md exists{{SDD_DIR}}/project/specs/{feature}/spec.yamlspec.yaml.roadmap is non-null → proceed to subcommand executiondesign → auto-add to roadmap (with Backfill):
dependencies: [] (no dependencies yet at design time)
b. Find highest incomplete wave where adding a dependency-free spec causes no conflict
c. If backfill possible: present option — "Add to Wave {N} (with {M} existing specs)" or "New Wave {max+1}"
d. If -y flag or no backfill possible: default to max(existing waves) + 1spec.yaml.roadmap = {wave: chosen_wave, dependencies: []}roadmap.md Wave Overview with new spec entryimpl/review → BLOCK: "Spec '{feature}' not found. Use /sdd-roadmap design \"description\" to create."spec.yaml.roadmap is null → BLOCK: "{feature} exists but is not enrolled in the roadmap. Use /sdd-roadmap update to sync."review dead-code, review design|impl --cross-check, and review design|impl --wave N operate on the whole codebase/wave, not a single spec → skip enrollment checkreview dead-code, review design|impl --cross-check, or review design|impl --wave N → BLOCK: "No roadmap found. Run /sdd-roadmap create first."design with a new description: generate feature name (kebab-case), create spec directory, initialize spec.yaml from {{SDD_DIR}}/settings/templates/specs/init.yaml
b. For design with existing spec name: verify spec directory exists (create if not)
c. For impl/review {feature}: verify spec exists → BLOCK if not: "Spec '{feature}' not found. Use /sdd-roadmap design \"description\" to create."
d. Create roadmap.md with single-wave structure containing the target spec
e. Set spec.yaml.roadmap = {wave: 1, dependencies: []}
f. Inform user: "Created single-spec roadmap for {feature}."When roadmap.md contains exactly 1 spec:
/sdd-roadmap review dead-code manually{feature}: {summary} (not Wave 1: {summary})After mode detection and roadmap ensure, Read the reference file for the detected mode:
refs/design.mdrefs/impl.md/sdd-review skill. Pass the review arguments directly (e.g., Skill(skill="sdd-review", args="design {feature}")). The /sdd-review skill handles engine resolution, Inspector dispatch, Auditor synthesis, and verdict persistence. Dispatch-loop context (run): reviews are decomposed into sub-phases per refs/run.md §Review Decomposition — Lead executes sdd-review steps directly within the dispatch loop for Spec Stagger. For auto-fix loops and Wave QG, see refs/run.md.refs/run.mdrefs/revise.mdrefs/crud.mdThen follow the instructions in the loaded file.
verdicts.yaml の永続化スキーマは {{SDD_DIR}}/settings/rules/agent/verdict-format.md §4 Verdict Index に準拠する。
{{SDD_DIR}}/session/handover.md/sdd-roadmap create first."/sdd-steering first/sdd-roadmap update to add it."/sdd-roadmap design \"description\" to create."/sdd-roadmap design {feature} first."/sdd-roadmap design {feature} first."/sdd-roadmap impl {feature} first."tools
--- name: sdd-steering description: Set up project-wide context (create, update, delete, custom) allowed-tools: Bash, Glob, Grep, Read, Write, Edit, Skill argument-hint: [-y] [custom] --- # SDD Steering (Unified) <instructions> ## Core Task Manage project steering documents. Lead handles directly (no SubAgent dispatch needed) since it requires user interaction. **Before any steering operation**, read `{{SDD_DIR}}/settings/rules/agent/steering-principles.md` and apply its principles (content
tools
--- name: sdd-status description: Check progress and analyze downstream impact allowed-tools: Read, Glob, Grep argument-hint: [feature-name] [--impact] --- # SDD Status (Unified) <instructions> ## Core Task Display comprehensive status for specifications and optionally analyze downstream impact of changes. Lead handles directly (read-only, no SubAgent needed). ## Step 1: Parse Arguments ``` $ARGUMENTS = "" → Overall roadmap + all specs progress $ARGUMENTS = "{feature}"
tools
Session start — invoke on "再開", "continue", "resume", or at every session start
development
Unified review pipeline for design, impl, and dead-code reviews