원클릭으로
component-discovery
Discover required technical components through targeted questions based on classified requirements.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Discover required technical components through targeted questions based on classified requirements.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Orchestrates SDD project initialization — version detection, environment verification, scaffolding, and git setup.
Manage project settings in sdd/sdd-settings.yaml including component settings that drive scaffolding.
Single gateway for all core↔tech-pack interactions. Reads manifests, resolves paths, loads skills/agents, routes commands.
Manage tasks and plans using the .tasks/ directory.
Standards for authoring SDD plugin agents — frontmatter, self-containment, skill references, and no-user-interaction rules.
Standards for authoring SDD plugin commands — frontmatter, user interaction, skill/agent invocation, CLI integration, and output formatting.
| name | component-discovery |
| description | Discover required technical components through targeted questions based on classified requirements. |
| user-invocable | false |
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