From sdd
Discovers required technical components by asking targeted questions on classified requirements and tech pack knowledge. Outputs component list for SPEC.md without system changes.
npx claudepluginhub liorcohen/sdd --plugin sddThis skill uses the workspace's default tool permissions.
Identifies required technical components through analysis of classified requirements and targeted discovery questions. **This skill is purely analytical - it never modifies sdd-settings.yaml or scaffolds components.**
Creates implementation-ready technical specifications via 4-step conversational workflow with tasks, acceptance criteria, and code investigation for feature planning.
Scaffolds greenfield project architecture, test infrastructure, guard rails, and AI agent harness via interview-driven layers to requirements.md. Use for /scaffold, new projects, or setup.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Share bugs, ideas, or general feedback.
Identifies required technical components through analysis of classified requirements and targeted discovery questions. This skill is purely analytical - it never modifies sdd-settings.yaml or scaffolds components.
Based on transformation output (classified requirements):
IMPORTANT: This skill does NOT:
sdd-settings.yamlIt only analyzes and documents. Implementation decides when to actually create components.
/sdd I want to create a new feature interactive mode to identify needed componentsSchema: schemas/input.schema.json
Accepts change name, type, existing components, and optionally classified requirements from external spec processing.
Before asking discovery questions, load the tech-specific discovery knowledge:
Invoke techpacks.routeSkills with:
namespace: <active-namespace>
phase: component-discovery
This loads component types, descriptions, discovery question sets, and settings schemas from the active tech pack.
The tech pack's discovery skill provides the mapping from requirements to component types. Use the loaded question sets to:
General discovery approach:
When UI/UX is involved and spec doesn't include visual assets:
Do you have any visual assets I can reference?
- Mockups or wireframes (Figma, Sketch, etc.)
- Screenshots of existing UI
- Rough sketches or drawings
- Reference images from other products
If you can share images, I can extract much more accurate
requirements than from text descriptions alone.
Skip this if spec already includes images or links to design tools.
Schema: schemas/output.schema.json
Returns a list of components with names, types, and settings.
Component settings from this output flow into the SPEC.md ## Components section's Settings column, where they inform the scaffolding phase during implementation.
Use the following skills for reference:
techpacks — Gateway for all tech-pack interactions. Use techpacks.listComponents to get available component types and techpacks.routeSkills(phase: component-discovery) to load tech-specific discovery knowledge.Invoke techpacks.listComponents for the active tech pack namespace to get the full list of available component types, their descriptions, directory patterns, and whether they support multiple instances. Do NOT hardcode component types — the tech pack manifest is the source of truth.
Map discovered information to component types from the tech pack. Use techpacks.routeSkills(phase: component-discovery) to load the tech-specific discovery knowledge that maps requirements to component types and settings.
Based on what you've described, I recommend:
**Components:**
- **[Component Name]** - to handle <purpose>
- Settings: <key settings from discovery>
- **[Component Name]** - for <purpose>
- Settings: <key settings from discovery>
[Additional components with justification]
Does this match what you had in mind?
If the user wants changes, update both components and settings based on the tech pack's component type definitions and cross-reference rules.
Some component types support multiple instances. When the requirements suggest multiple instances of the same type (e.g., separate services for different domains), ask the user whether to consolidate or split.
The tech pack's discovery knowledge provides guidance on when to split vs consolidate for each component type.
Before returning, validate discovered configuration against the tech pack's cross-reference rules. Invoke techpacks.routeSkills(phase: component-discovery) to get the validation rules.
Return the final configuration with all settings.
sdd-settings.yaml - only documents in SPEC.mdExternal Spec → Transformation → **Component Discovery** → Decomposition → SPEC.md
↓
Documents in SPEC.md
(no system changes)
Components are actually created during implementation phase:
sdd-settings.yamlspec-solicitation skill populates the Components section of SPEC.md using discovered components and solicited technical details