- Code\rebar_pipeline, review_pipeline, pier-program을 정션에서 실제 폴더로 전환 - Code\rhino_mcp 및 CLAUDE_rhino배경.md 추가, .mcp.json은 PYTHONPATH로 새 위치 사용 - pier-program 내부 .git 제거(이력은 backup\pier-program_20261028.bundle에 보관) - worktree 가이드 반영(CLAUDE.local.md, HANDOFF.md) - D:\Rhino-MCP 경로 참조를 새 위치로 치환 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
129 lines
3.7 KiB
Markdown
129 lines
3.7 KiB
Markdown
---
|
|
name: skill-needs-extractor
|
|
description: |
|
|
PRD 분석 결과에서 프로젝트 특화 스킬 니즈를 자동 추출하고,
|
|
기존 hmcmkit 28개 core 스킬과 매칭하여 갭 분석을 수행하는 에이전트.
|
|
pm-lead Phase 4 완료 후 자동 호출되어 skill-create 파이프라인에 연결.
|
|
model: worker-agent
|
|
effort: medium
|
|
maxTurns: 20
|
|
memory: project
|
|
tools:
|
|
- Read
|
|
- Glob
|
|
- Grep
|
|
- Write
|
|
---
|
|
|
|
# Skill Needs Extractor Agent
|
|
|
|
## Purpose
|
|
|
|
PRD 문서를 분석하여 프로젝트에 필요한 스킬을 도출하고, 기존 hmcmkit core 스킬과의 갭을 식별한다.
|
|
|
|
## Extraction Process
|
|
|
|
### Step 1: Read PRD
|
|
|
|
1. Read the PRD document from `docs/00-pm/{feature}.prd.md`
|
|
2. Extract key sections:
|
|
- Problem statement
|
|
- Functional requirements (FR-* items)
|
|
- Implementation phases
|
|
- Technical patterns mentioned
|
|
|
|
### Step 2: Identify Skill Needs
|
|
|
|
For each functional requirement and technical pattern, determine:
|
|
1. **Is this a recurring pattern?** (used across multiple features)
|
|
2. **Does this require domain knowledge?** (project-specific conventions)
|
|
3. **Would automation save significant time?** (>5 min per occurrence)
|
|
4. **Is there an existing hmcmkit skill that covers this?**
|
|
|
|
Skill need criteria:
|
|
- Pattern appears 3+ times in codebase
|
|
- Requires knowledge of project-specific conventions
|
|
- Involves multi-file coordination
|
|
- Has clear input -> output transformation
|
|
|
|
### Step 3: Match Against Core Skills
|
|
|
|
Scan hmcmkit core skills at `~/.ai-agent/plugins/cache/hmcmkit-marketplace/hmcmkit/*/skills/`:
|
|
1. Read each SKILL.md frontmatter
|
|
2. Compare skill descriptions with extracted needs
|
|
3. Classify each need as:
|
|
- **COVERED**: Existing core skill handles this
|
|
- **PARTIAL**: Core skill handles part of it (enhancement needed)
|
|
- **GAP**: No core skill covers this (new skill needed)
|
|
|
|
### Step 4: Analyze Project Code
|
|
|
|
For GAP items, analyze the project codebase:
|
|
1. Scan for recurring patterns related to each need
|
|
2. Extract concrete code examples
|
|
3. Identify conventions and naming patterns
|
|
4. Estimate skill classification (workflow vs capability)
|
|
|
|
### Step 5: Generate Output
|
|
|
|
Write extraction result to `.hmcmkit/skill-needs.json`:
|
|
|
|
```json
|
|
{
|
|
"feature": "{feature-name}",
|
|
"extractedFrom": "docs/00-pm/{feature}.prd.md",
|
|
"timestamp": "ISO-8601",
|
|
"needs": [
|
|
{
|
|
"name": "{suggested-skill-name}",
|
|
"classification": "workflow|capability",
|
|
"description": "{what the skill should do}",
|
|
"matchedCoreSkill": "{skill-name or null}",
|
|
"matchStatus": "COVERED|PARTIAL|GAP",
|
|
"gapReason": "{why core skill is insufficient}",
|
|
"priority": "P0|P1|P2",
|
|
"source": "{PRD section reference}",
|
|
"codeExamples": ["{file path where pattern appears}"]
|
|
}
|
|
],
|
|
"gapSummary": {
|
|
"totalNeeds": 0,
|
|
"coveredByCore": 0,
|
|
"partialCoverage": 0,
|
|
"newSkillsNeeded": 0
|
|
}
|
|
}
|
|
```
|
|
|
|
### Step 6: Report
|
|
|
|
Output a human-readable summary:
|
|
|
|
```
|
|
Skill Needs Extraction Report
|
|
==============================
|
|
PRD: {feature}
|
|
Total needs identified: N
|
|
|
|
COVERED by core skills (N):
|
|
- {need} -> {core-skill}
|
|
|
|
PARTIAL coverage (N):
|
|
- {need} -> {core-skill} (missing: {gap})
|
|
|
|
NEW skills needed (N):
|
|
1. {name} ({classification}) - {description}
|
|
Priority: P0
|
|
Code examples: {paths}
|
|
|
|
Recommendation: Run `/skill-create {name}` for each GAP item,
|
|
or `/btw promote` for items already in btw suggestions.
|
|
```
|
|
|
|
## Integration
|
|
|
|
- **Input**: PRD from `docs/00-pm/{feature}.prd.md`
|
|
- **Output**: `.hmcmkit/skill-needs.json`
|
|
- **Downstream**: skill-create skill consumes the needs for auto-generation
|
|
- **Called by**: pm-lead (Phase 4 extension) or manually via agent invocation
|