sdd
Skill390 starsChanged 37 days agoMITView on GitHub
Spec-Driven Development for Siemens IX: turns user-provided issue or tracking text into spec.md, plan.md, and tasks.md (GitHub spec-kit style, size-aware, no tracker integration). Use when the user asks for SDD, spec-kit planning, or structured feature docs from issue text (e.g. IX-1234 plus pasted description). Outputs live under .sdd/{tracking-id}/.
20 other projects use a version of this.
Adopted by
Most recently taken up by
- AsiaOstrich/EngramGraphtheir own version, first seen Nov 8, 2026
- AsiaOstrich/universal-dev-standardstheir own version, first seen Nov 1, 2026
- totalfrank/skillstheir own version, first seen Oct 27, 2026
- monaccode/astromesh-sddtheir own version, first seen Oct 20, 2026
- Isabella-a/Skillstheir own version, first seen Oct 19, 2026
- IulaiJedi/sdd-skilltheir own version, first seen Oct 18, 2026
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.
TashanGKDSkillbdd
行为驱动开发(BDD)流程助手。用 Given-When-Then 描述验收标准,包含 Feature 文件管理、步骤定义实现。用户提到 BDD、验收测试、Gherkin 时使用。
Also in 3 projects that use this
tuistSkillmigrate
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
BlockSkillplan
Draft a TDD, PRD, or lightweight plan in the conversation without committing it.
Also in 3 projects that use this
Hugging FaceSkillimplement
Make tests pass. Invoke after /write-tests produces failing tests.
Also in 3 projects that use this
GoogleSkilltdd
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
Other versions20 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 20
- SpillwaveSolutions/sdd-skill★ 99same name
- liatrio-labs/spec-driven-workflow★ 92same name
- AsiaOstrich/universal-dev-standards★ 84same name
- baekenough/oh-my-customcode★ 42same name
- dewil/ai-toolkit★ 9same name
- dewil/claude-toolkit★ 9same name
- artimath/effect-skills★ 8same name
- AsiaOstrich/EngramGraph★ 4same name
- kingdon/skills★ 4same name
- totalfrank/skills★ 4same name
10 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
- .github/copilot-instructions.mdCopilot instructions
- changeset-decisionSkill
- create-changesetSkill
- visual-testing-snapshotsSkill
- ix-installationSkill
- ixSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
24 rules. 0 are common, 8 are distinctive, and 16 are very specific to this project.
0
Common
Most of the 11 edited versions we read keep these.
8
Distinctive
This author's own choices. Worth a look.
16
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 24
Before Phase 1, confirm you have:
- Distinctive: line 31
If the user only pastes prose without clear AC, extract implied AC into the spec and add a Clarifications note listing assumptions.
- Distinctive: line 33
Do not: call tracker APIs or assume an MCP.
- Distinctive: line 41
Progressive disclosure: Read spec → plan → tasks when implementing.
- Distinctive: line 53
After creating or updating each artifact, stop and ask the user to review the created file before continuing:
- Very specific: line 55
After spec.md: ask whether to continue to planning or revise the spec.
- Very specific: line 56
After updated spec.md clarifications: ask whether to continue to planning or revise the clarified spec.
- Very specific: line 57
After plan.md: ask whether to continue to task breakdown or revise the plan.
- Very specific: line 58
After tasks.md: ask whether to implement, revise tasks, or stop at handoff.
- Very specific: line 60
Do not proceed to the next phase automatically after writing an artifact.
- Very specific: line 62
If the XS strategy omits spec.md or tasks.md, skip only the omitted file's review gate.
- Very specific: line 66
Create spec.md from the pasted issue only (optional: spawn a read-only explore subagent for codebase context after spec is drafted if gaps …
- Very specific: line 70
Review gate: After writing spec.md, stop and ask the user to review .sdd/{TRACKING_ID}/spec.md.
- Very specific: line 138
If requirements are ambiguous, ask targeted questions in chat.
- Very specific: line 147
Review gate: After adding clarifications, stop and ask the user to review the updated .sdd/{TRACKING_ID}/spec.md.
- Very specific: line 170
Review gate: After writing plan.md, stop and ask the user to review .sdd/{TRACKING_ID}/plan.md.
- Very specific: line 185
Review gate: After writing tasks.md, stop and ask the user to review .sdd/{TRACKING_ID}/tasks.md.
- Very specific: line 196
Create research.md only for unusual dependency or API verification — not for routine Stencil/Playwright usage.
- Very specific: line 206
Stop after writing the merged plan.md and ask the user to review it before implementation.
- Very specific: line 245
Do not generate narrative.md or standalone alternatives.md — keep decisions inline in plan.md.
- Distinctive: line 254
When artifacts are ready:
- Distinctive: line 271
plan.md: No requirement duplication.
- Distinctive: line 275
Overall: No cross-file duplication.
- Very specific: line 279
Prefer paths under packages/core, packages/angular, packages/react, packages/documentation, etc., as appropriate — discover real paths from …
“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.
Files
Spec-Driven Development (IX)
Overview
Transform user-provided issue or tracking text (no tracker integration required) into structured specifications following GitHub spec-kit methodology: clear separation, progressive disclosure, minimal duplication.
When to use: User wants SDD / spec planning for an IX change and supplies (or will supply) a tracking/issue identifier plus title, description, and acceptance criteria as plain text.
Required input (no tracker integration)
Before Phase 1, confirm you have:
- Tracking/issue identifier (e.g.
IX-3896, issue number, ticket key) — if missing, ask once; if still missing, derive a short folder slug from the title (lowercase, hyphens, max ~40 chars). - Issue title (summary line).
- Description — user story, context, bullets, links as pasted.
- Acceptance criteria — pasted AC block or checklist from the issue/tracking source.
If the user only pastes prose without clear AC, extract implied AC into the spec and add a Clarifications note listing assumptions.
Do not call tracker APIs or assume an MCP; treat the chat message as the source of truth.
Key principles
- Separation:
spec.md(WHAT),plan.md(HOW),tasks.md(DO) — no duplication. - Tech-agnostic specs: Requirements do not name Stencil/React/etc.
- Size-aware output: XS compact; L fuller (see below).
- Line limits: Each artifact file under 500 lines.
- Progressive disclosure: Read spec → plan → tasks when implementing.
Workflow phases
Pasted issue text → Specify → Review → Clarify → Review → Plan → Review → Tasks → Review → Implement
↓ ↓ ↓ ↓
spec.md spec.md plan.md tasks.mdMandatory phase gates:
After creating or updating each artifact, stop and ask the user to review the created file before continuing:
- After
spec.md: ask whether to continue to planning or revise the spec. - After updated
spec.mdclarifications: ask whether to continue to planning or revise the clarified spec. - After
plan.md: ask whether to continue to task breakdown or revise the plan. - After
tasks.md: ask whether to implement, revise tasks, or stop at handoff.
Do not proceed to the next phase automatically after writing an artifact. If the runtime provides an ask_user tool, use it for these phase gates instead of asking in plain text.
If the XS strategy omits spec.md or tasks.md, skip only the omitted file's review gate; still stop after the merged plan.md and ask the user to review it before implementation.
Phase 1: Specify (requirements)
Create spec.md from the pasted issue only (optional: spawn a read-only explore subagent for codebase context after spec is drafted if gaps exist — do not block spec on repo-wide search).
Output path: .sdd/{TRACKING_ID}/spec.md (use the agreed tracking/issue identifier or slug for {TRACKING_ID}).
Review gate: After writing spec.md, stop and ask the user to review .sdd/{TRACKING_ID}/spec.md. Continue only when the user approves moving to planning; otherwise revise spec.md first.
Frontmatter:
---
tracking_id: { ID or slug }
feature: { TITLE }
date: { ISO date }
status: ready-for-planning
source: user-pasted-issue
---Body template (adapt length to size tier):
# Feature Spec: {TITLE}
## User input (from issue)
{2–5 lines summarizing pasted description — no copy-paste dump of entire ticket}
## User scenarios and testing
### US1 [P1] - {Scenario}
**As** {role}
**I want** {goal}
**So that** {benefit}
**Acceptance scenarios:**
**Given** {context}
**When** {action}
**Then** {outcome}
**Edge cases:** {if any}
## Requirements
### Functional requirements
**FR-001**: {requirement}
**FR-002**: {requirement}
### Key entities
{Only if data or domain models matter}
## Success criteria
**SC-001**: {measurable outcome}
**SC-002**: {measurable outcome}
## Assumptions
{Scope boundaries, dependencies on other IX areas}Size guide (spec.md only):
- XS: ~40 lines
- S: ~80 lines
- M: ~100 lines
- L: ~150 lines
Phase 2: Clarify (optional)
If requirements are ambiguous, ask targeted questions in chat; when answered, append to spec.md:
## Clarifications
**Q1**: …
**A**: …Review gate: After adding clarifications, stop and ask the user to review the updated .sdd/{TRACKING_ID}/spec.md. Continue only when the user approves moving to planning; otherwise revise spec.md first.
Phase 3: Plan (technical approach)
Output: .sdd/{TRACKING_ID}/plan.md
- Read
spec.md. - Align with IX repo: skim
CONTRIBUTING.mdand relevant package/component paths touched; follow existing patterns in the monorepo. - Record technical decisions with short rationale; do not repeat requirements from
spec.md— reference them (See spec.md US1).
Plan frontmatter:
---
tracking_id: { ID or slug }
phase: plan
created: { ISO date }
depends_on: []
---Sections: Summary, Technical context (language, packages, tests), Architecture (decisions with alternatives rejected), Implementation structure, Risks and mitigations, Deployment strategy only if non-trivial.
Review gate: After writing plan.md, stop and ask the user to review .sdd/{TRACKING_ID}/plan.md. Continue only when the user approves creating tasks; otherwise revise plan.md first.
Size guide (plan.md):
- XS: merge spec + plan into a single
plan.mdonly (~80 lines total) — skip separatespec.mdonly when doing XS merge (see XS strategy below). - S: ~120 lines
- M: ~150 lines
- L: ~200 lines
Phase 4: Tasks (implementation steps)
Output: .sdd/{TRACKING_ID}/tasks.md
Ordered steps; each task: id, file path in repo, action, optional snippet, dependencies. Mark parallelizable tasks with [P]. Do not repeat plan rationale.
Review gate: After writing tasks.md, stop and ask the user to review .sdd/{TRACKING_ID}/tasks.md. Implement only if the user explicitly approves implementation; otherwise revise tasks.md or stop at handoff.
Size guide (tasks.md):
- XS: omit
tasks.md(implement from merged plan). - S: ~100 lines
- M: ~150 lines
- L: ~200 lines
Phase 5: Research (optional)
Create research.md only for unusual dependency or API verification — not for routine Stencil/Playwright usage.
Output: .sdd/{TRACKING_ID}/research.md (<300 lines).
XS output strategy
For XS (<~2h) work:
- Produce one file:
.sdd/{TRACKING_ID}/plan.md(~80 lines) that merges concise requirements + approach + minimal task list + validation checklist. - Omit separate
spec.md/tasks.mdunless the user explicitly wants full spec-kit layout. - Stop after writing the merged
plan.mdand ask the user to review it before implementation.
S / M / L output strategy
| Tier | Outputs | Approx. total lines |
| S | spec.md + plan.md + tasks.md | ~300 |
| M | spec.md + plan.md + tasks.md | ~400 |
| L | spec.md + plan.md + tasks.md (+ optional research.md) | ~600 |
Classify size from pasted story points, AC count, and breadth (single component vs cross-package).
Anti-duplication rules
Before each paragraph:
- Already in
spec.md? → Link, do not repeat. - Technical decision? →
plan.mdonly. - Implementation step? →
tasks.mdonly. - Obvious to an IX maintainer? → Skip (standard monorepo test commands, changeset rules — point to existing skills if needed).
- Project-wide rule? → Reference
CONTRIBUTING.mdor the relevant package README.
Cross-reference pattern:
See spec.md US1 for acceptance criteria.
See plan.md Architecture for rationale.File layout
.sdd/{TRACKING_ID}/
├── spec.md # Requirements (tech-agnostic)
├── plan.md # Technical approach
├── tasks.md # Implementation steps
└── research.md # Optional tech verificationDo not generate narrative.md or standalone alternatives.md — keep decisions inline in plan.md.
Context management
- Main chat: clarify scope, write
plan.md/tasks.md, discuss trade-offs. - Read-only exploration: large codebase search to ground
plan.mdpaths — use sparingly afterspec.mdexists.
Implementation handoff
When artifacts are ready:
Specification complete for {TRACKING_ID}.
Files:
- spec.md — requirements
- plan.md — technical approach
- tasks.md — steps (if created)
Next: implement a task, all tasks in order, or revise the plan — say which you prefer.Quality checklist
spec.md: Tech-agnostic; Given/When/Then where applicable; numbered FRs; measurable success criteria; <500 lines.
plan.md: No requirement duplication; decisions with 1–2 line rationale; references spec; IX-realistic paths; <500 lines.
tasks.md: Exact repo paths; dependency order; [P] for parallel; no decision essays; <500 lines.
Overall: No cross-file duplication; size tier matches work; each file has one job.
IX-specific notes
- Prefer paths under
packages/core,packages/angular,packages/react,packages/documentation, etc., as appropriate — discover real paths from the tree, do not invent directories. - Testing and release hygiene: use existing project skills (component tests, Storybook a11y, changesets) when the user’s workflow requires them; do not restate full skill bodies here.
References
- GitHub spec-kit
- Project skill definition:
.github/skills/sdd/SKILL.md— this repo skill uses pasted issue/tracking text and.sdd/…for generated artifacts.
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.

