spec-design

spec-design is a command for coding agents from gotalab/cc-sdd. It costs 7 tokens per session (460 once invoked), scanned A, original, MIT.

A command that creates a technical design document for a feature specification after its requirements are complete.

In plain words
What is it for?
Use it to generate or update design and research documents, optionally approving the design automatically.
Why use it?
It turns requirements into an implementation plan and records research needed to support design decisions.

Command

About the project

cc-sdd is a spec-driven development workflow for coding agents: it turns approved software specifications into requirements, designs, task plans, and extended autonomous implementation. Developers use it across several AI coding agents, with independent review and task-level continuation for long-running work. The catalogue entries provide commands, skills, agents, and instructions for using this workflow.

gotalab/cc-sdd · 3,652 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/gotalab/cc-sdd/spec-design
Clone the repo
git clone --depth 1 https://github.com/gotalab/cc-sdd

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for spec-design

README.md
[![agentmods](https://agentmods.dev/badge/commands/gotalab/cc-sdd/spec-design.svg)](https://agentmods.dev/commands/gotalab/cc-sdd/spec-design)
Your own site
<a href="https://agentmods.dev/commands/gotalab/cc-sdd/spec-design"><img src="https://agentmods.dev/badge/commands/gotalab/cc-sdd/spec-design.svg" alt="Measured on agentmods" height="20"></a>
Per session 7 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 460 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00007 $0.00460
Opus 5 $0.00003 $0.00230
Sonnet 5 $0.00001 $0.00092
Haiku 4.5 $0.00001 $0.00046

Measured 5d ago against content hash efc1eded2ba3, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

spec-design scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

tools/cc-sdd/templates/agents/claude-code-agent/commands/spec-design.md · 64 lines

What it actually says

Technical Design Generator

Parse Arguments

  • Feature name: $1
  • Auto-approve flag: $2 (optional, "-y")

Validate

Check that requirements have been completed:

  • Verify {{KIRO_DIR}}/specs/$1/ exists
  • Verify {{KIRO_DIR}}/specs/$1/requirements.md exists

If validation fails, inform user to complete requirements phase first.

Invoke Subagent

Delegate design generation to spec-design-agent:

Use the Task tool to invoke the Subagent with file path patterns:

Task(
  subagent_type="spec-design-agent",
  description="Generate technical design and update research log",
  prompt="""
Feature: $1
Spec directory: {{KIRO_DIR}}/specs/$1/
Auto-approve: {true if $2 == "-y", else false}

File patterns to read:
- {{KIRO_DIR}}/specs/$1/*.{json,md}
- {{KIRO_DIR}}/steering/*.md
- {{KIRO_DIR}}/settings/rules/design-*.md
- {{KIRO_DIR}}/settings/templates/specs/design.md
- {{KIRO_DIR}}/settings/templates/specs/research.md

Discovery: auto-detect based on requirements
Mode: {generate or merge based on design.md existence}
Language: respect spec.json language for design.md/research.md outputs
"""
)

Display Result

Show Subagent summary to user, then provide next step guidance:

Next Phase: Task Generation

If Design Approved:

  • Review generated design at {{KIRO_DIR}}/specs/$1/design.md
  • Optional: Run /kiro:validate-design $1 for interactive quality review
  • Then /kiro:spec-tasks $1 -y to generate implementation tasks

If Modifications Needed:

  • Provide feedback and re-run /kiro:spec-design $1
  • Existing design used as reference (merge mode)

Note: Design approval is mandatory before proceeding to task generation.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 64 lines · 7 tokens per session scan A efc1eded2ba3

Subscribe to this mod's changes

spec-design is a command published in the GitHub repository gotalab/cc-sdd (3,652 stars, last pushed 3mo ago), licensed MIT. It adds 7 tokens to every session and 460 once invoked, about $0.0000 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other commands, from other repositories

implementation-plan

Define an incremental, reviewable, production-safe implementation plan for the active task and persist it as IMPLEMENTATIONPLAN.md plus a TASKSTATE.md update. Breaks work into the smallest safe slices with objective, exact scope, ordering rationale, key risks, validation approach, exit criteria, and work complexity…

Mozurok/fhorja.dev · 207 tokens

slice-closure

Decide whether the current slice is ready to close, distinguishing slice completion from full task completion, then persist the result in slice notes and TASKSTATE.md as explicit reviewable closure notes. For single-slice tasks may route directly to delivery. Returns no-op when slice memory would not materially…

Mozurok/fhorja.dev · 146 tokens

task-close

Perform the terminal task lifecycle transition for a finished task: verify the spec done-conditions, set TASKSTATE.md to its final closed state, and move the task folder from active/ to archive/. The symmetric counterpart to task-init and the only official way to close a whole task. Use when every slice is closed, the…

Mozurok/fhorja.dev · 177 tokens

task-init

Initialize the official task folder and base task memory inside projects/ /active/YYYY-MM-DD /. Creates README.md, TASKSTATE.md, SOURCEOFTRUTH.md, DECISIONS.md, IMPLEMENTATIONPLAN.md; seeds from PROJECTCHARTER.md when present; emits a multi-repo.

Mozurok/fhorja.dev · 70 tokens

autonomous-run

Drive an approved, waved IMPLEMENTATIONPLAN through the autonomous delivery track. A thin dispatcher over the existing fleet primitives (the Workflow tool, implement-approved-slice as single writer) bounded by two human gates and a runtime governor. Runs verifiable slices with little supervision and emits PROPOSED…

Mozurok/fhorja.dev · 210 tokens

decision-interview

Ask the minimum set of high-value decision questions needed before turning the task into canonical implementation rules. Decisions that would change runtime behavior, data integrity, rollout safety, or test strategy. Use when the missing information is decision-driven (not factual), different answers would change…

Mozurok/fhorja.dev · 146 tokens