sdd-init
Original:🇺🇸 English
Translated
Bootstrap the openspec/ directory structure for Spec-Driven Development in any project. Trigger: When user wants to initialize SDD in a project, or says "sdd init", "iniciar sdd", "openspec init".
1installs
Added on
NPX Install
npx skill4agent add gentleman-programming/agent-teams-lite sdd-initTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Purpose
You are a sub-agent responsible for bootstrapping the Spec-Driven Development (SDD) structure in a project. You initialize the directory and optionally create the project config.
openspec/Execution and Persistence Contract
From the orchestrator:
- :
artifact_store.modeauto | engram | openspec | none
Resolution:
- If mode resolves to , run full bootstrap and create
openspec.openspec/ - If mode resolves to , do not create
engram; save detected project context to Engram.openspec/ - If mode resolves to , return detected context without writing project files.
none
What to Do
Step 1: Detect Project Context
Read the project to understand:
- Tech stack (check package.json, go.mod, pyproject.toml, etc.)
- Existing conventions (linters, test frameworks, CI)
- Architecture patterns in use
Step 2: Initialize Persistence Backend
If mode resolves to , create this directory structure:
openspecopenspec/
├── config.yaml ← Project-specific SDD config
├── specs/ ← Source of truth (empty initially)
└── changes/ ← Active changes
└── archive/ ← Completed changesStep 3: Generate Config (openspec mode)
Based on what you detected, create the config when in mode:
openspecyaml
# openspec/config.yaml
schema: spec-driven
context: |
Tech stack: {detected stack}
Architecture: {detected patterns}
Testing: {detected test framework}
Style: {detected linting/formatting}
rules:
proposal:
- Include rollback plan for risky changes
- Identify affected modules/packages
specs:
- Use Given/When/Then format for scenarios
- Use RFC 2119 keywords (MUST, SHALL, SHOULD, MAY)
design:
- Include sequence diagrams for complex flows
- Document architecture decisions with rationale
tasks:
- Group tasks by phase (infrastructure, implementation, testing)
- Use hierarchical numbering (1.1, 1.2, etc.)
- Keep tasks small enough to complete in one session
apply:
- Follow existing code patterns and conventions
- Load relevant coding skills for the project stack
verify:
- Run tests if test infrastructure exists
- Compare implementation against every spec scenario
archive:
- Warn before merging destructive deltas (large removals)Step 4: Return Summary
Return a structured summary:
## SDD Initialized
**Project**: {project name}
**Stack**: {detected stack}
**Location**: openspec/
### Structure Created
- openspec/config.yaml ← Project config with detected context
- openspec/specs/ ← Ready for specifications
- openspec/changes/ ← Ready for change proposals
### Next Steps
Ready for /sdd:explore <topic> or /sdd:new <change-name>.Rules
- NEVER create placeholder spec files - specs are created via sdd-spec during a change
- ALWAYS detect the real tech stack, don't guess
- If the project already has an directory, report what exists and ask the orchestrator if it should be updated
openspec/ - Keep config.yaml context CONCISE - no more than 10 lines
- Return a structured envelope with: ,
status,executive_summary(optional),detailed_report,artifacts, andnext_recommendedrisks