@kood/claude-code 0.6.1 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +1 -1
  3. package/templates/.claude/instructions/agent-patterns/delegation-patterns.md +389 -0
  4. package/templates/.claude/instructions/context-optimization/phase-based-execution.md +410 -0
  5. package/templates/.claude/instructions/context-optimization/redundant-exploration-prevention.md +646 -0
  6. package/templates/.claude/instructions/context-optimization/sub-agent-distribution.md +476 -0
  7. package/templates/.claude/instructions/glossary.md +48 -0
  8. package/templates/.claude/instructions/project-context-template.md +453 -0
  9. package/templates/.claude/instructions/skill-integration.md +90 -0
  10. package/templates/.claude/instructions/sourcing/reliable-search.md +411 -0
  11. package/templates/.claude/instructions/validation/forbidden-patterns.md +47 -0
  12. package/templates/.claude/instructions/validation/required-behaviors.md +120 -0
  13. package/templates/.claude/instructions/validation/scope-completeness.md +367 -0
  14. package/templates/.claude/instructions/workflow-patterns/todowrite-pattern.md +2 -0
  15. package/templates/.claude/skills/brainstorm/SKILL.md +75 -672
  16. package/templates/.claude/skills/bug-fix/SKILL.md +9 -137
  17. package/templates/.claude/skills/docs-fetch/SKILL.md +64 -232
  18. package/templates/.claude/skills/elon-musk/SKILL.md +57 -310
  19. package/templates/.claude/skills/execute/SKILL.md +18 -397
  20. package/templates/.claude/skills/plan/SKILL.md +12 -986
  21. package/templates/.claude/skills/prd/SKILL.md +13 -1
  22. package/templates/.claude/skills/ralph/SKILL.md +15 -497
  23. package/templates/.claude/skills/refactor/SKILL.md +11 -655
  24. package/templates/.claude/skills/research/SKILL.md +20 -23
@@ -7,6 +7,9 @@ user-invocable: true
7
7
  @../../instructions/workflow-patterns/sequential-thinking.md
8
8
  @../../instructions/agent-patterns/parallel-execution.md
9
9
  @../../instructions/agent-patterns/model-routing.md
10
+ @../../instructions/sourcing/reliable-search.md
11
+ @../../instructions/context-optimization/redundant-exploration-prevention.md
12
+ @../../instructions/validation/scope-completeness.md
10
13
  @../../instructions/validation/forbidden-patterns.md
11
14
  @../../instructions/validation/required-behaviors.md
12
15
 
@@ -333,36 +336,9 @@ npm run build
333
336
 
334
337
  ## Parallel Agent Execution
335
338
 
336
- ### Smart Model Routing
337
-
338
- | 복잡도 | 버그 유형 | 모델 | 작업 예시 |
339
- |--------|----------|------|----------|
340
- | **LOW** | 단순 버그 | haiku | 오타, 명백한 로직 오류, 누락된 import |
341
- | **MEDIUM** | 일반 버그 | sonnet | 기능 오작동, 상태 관리 이슈, API 에러 |
342
- | **HIGH** | 복잡한 버그 | opus | 아키텍처 설계 결함, 성능 이슈, 보안 취약점 |
343
-
344
- **에이전트 호출 시 항상 `model` 파라미터 명시:**
345
-
346
- ```typescript
347
- Task(subagent_type="implementation-executor", model="sonnet", ...)
348
- Task(subagent_type="explore", model="haiku", ...)
349
- Task(subagent_type="architect", model="opus", ...)
350
- ```
351
-
352
- ### Recommended Agents
353
-
354
- | 도메인 | 에이전트 | 권장 모델 | 용도 |
355
- |--------|---------|----------|------|
356
- | 탐색 | explore | haiku | 버그 재현 경로, 관련 파일 탐색 |
357
- | 아키텍처 | architect | sonnet/opus | 근본 원인 분석, 설계 논의 (READ-ONLY) |
358
- | 구현 | implementation-executor | sonnet | 버그 수정 구현 |
359
- | 검증 | code-reviewer | opus | 수정 후 코드 리뷰, 회귀 검증 |
360
- | 린트 | lint-fixer | sonnet | tsc/eslint 오류 수정 |
361
- | 문서 | document-writer | haiku/sonnet | 버그 리포트, 수정 내역 문서화 |
362
- | 보안 | security-reviewer | opus | 보안 취약점 버그, SQL Injection, XSS |
363
- | 테스트 | qa-tester | sonnet | 수정 후 CLI/서비스 테스트 검증 |
364
- | 조사 | researcher | sonnet | 외부 라이브러리 버그, API 문서 조사 |
365
- | 시각 | vision | sonnet | UI 버그 스크린샷 분석, 레이아웃 검증 |
339
+ @../../instructions/agent-patterns/delegation-patterns.md
340
+ @../../instructions/agent-patterns/parallel-execution.md
341
+ @../../instructions/agent-patterns/model-routing.md
366
342
 
367
343
  ### Bug Severity별 병렬 처리
368
344
 
@@ -497,111 +473,7 @@ Task({
497
473
  // → 3가지 테스트 레벨을 동시에 검증
498
474
  ```
499
475
 
500
- ### Parallel Execution Patterns
501
-
502
- ### Read 도구 병렬화
503
-
504
- **프로젝트 분석 시 파일 병렬 읽기:**
505
-
506
- ```typescript
507
- // ❌ 순차 읽기 (느림)
508
- Read({ file_path: "src/file1.ts" })
509
- // 대기...
510
- Read({ file_path: "src/file2.ts" })
511
-
512
- // ✅ 병렬 읽기 (빠름)
513
- Read({ file_path: "src/file1.ts" })
514
- Read({ file_path: "src/file2.ts" })
515
- Read({ file_path: "src/file3.ts" })
516
- Read({ file_path: "docs/api.md" })
517
- ```
518
-
519
- **복잡한 탐색은 explore 에이전트 활용:**
520
-
521
- ```typescript
522
- // 여러 영역 동시 탐색
523
- Task(subagent_type="explore", model="haiku",
524
- prompt="영역 1 파일 구조 및 패턴 분석")
525
- Task(subagent_type="explore", model="haiku",
526
- prompt="영역 2 의존성 및 관계 분석")
527
- ```
528
-
529
- ---
530
-
531
- #### 패턴 1: 탐색 + 분석 병렬
532
-
533
- ```typescript
534
- // ❌ 순차 실행 (느림)
535
- Task({
536
- subagent_type: 'explore',
537
- model: 'haiku',
538
- prompt: '간헐적 500 에러 재현 경로 탐색'
539
- })
540
- // 대기...
541
- Task({
542
- subagent_type: 'architect',
543
- model: 'sonnet',
544
- prompt: '500 에러 근본 원인 분석'
545
- })
546
-
547
- // ✅ 병렬 실행 (빠름)
548
- Task({
549
- subagent_type: 'explore',
550
- model: 'haiku',
551
- prompt: '간헐적 500 에러 재현 경로 탐색 및 재현 조건 파악'
552
- })
553
- Task({
554
- subagent_type: 'architect',
555
- model: 'sonnet',
556
- prompt: '500 에러 패턴 분석 및 근본 원인 파악 (로그, 스택 트레이스 기반)'
557
- })
558
-
559
- // → 탐색 결과와 분석 결과를 종합하여 수정 방향 결정
560
- ```
561
-
562
- #### 패턴 2: 수정 + 문서화 병렬
563
-
564
- ```typescript
565
- // ✅ 코드 수정과 동시에 문서화
566
- Task({
567
- subagent_type: 'implementation-executor',
568
- model: 'sonnet',
569
- prompt: '인증 버그 수정: 토큰 재발급 로직 개선'
570
- })
571
- Task({
572
- subagent_type: 'document-writer',
573
- model: 'haiku',
574
- prompt: '버그 리포트 작성: 원인, 수정 내용, 영향 범위'
575
- })
576
- Task({
577
- subagent_type: 'document-writer',
578
- model: 'haiku',
579
- prompt: 'CHANGELOG.md 업데이트: 버그 수정 항목 추가'
580
- })
581
- ```
582
-
583
- #### 패턴 3: 다중 검증 병렬
584
-
585
- ```typescript
586
- // ✅ 수정 후 여러 관점에서 동시 검토
587
- Task({
588
- subagent_type: 'code-reviewer',
589
- model: 'opus',
590
- prompt: '보안 검토: 수정으로 인한 새로운 취약점 확인'
591
- })
592
- Task({
593
- subagent_type: 'code-reviewer',
594
- model: 'opus',
595
- prompt: '성능 검토: 수정이 성능에 미치는 영향 분석'
596
- })
597
- Task({
598
- subagent_type: 'code-reviewer',
599
- model: 'opus',
600
- prompt: '회귀 검토: 다른 기능에 부작용 없는지 확인'
601
- })
602
- ```
603
-
604
- ### Practical Examples (시간 비교 포함)
476
+ ### Bug-Fix-Specific Parallel Patterns
605
477
 
606
478
  #### 예시 1: 여러 독립 버그 동시 수정
607
479
 
@@ -852,11 +724,11 @@ Task({
852
724
  **상황:** 외부 라이브러리 버전 업그레이드 후 오류 발생
853
725
 
854
726
  ```typescript
855
- // ✅ 라이브러리 버그 조사 + 수정 병렬
727
+ // ✅ 라이브러리 버그 조사 + 수정 병렬 (@reliable-search.md 적용)
856
728
  Task({
857
729
  subagent_type: 'researcher',
858
730
  model: 'sonnet',
859
- prompt: 'TanStack Query v5.60.0 breaking changes 조사 및 마이그레이션 가이드 탐색'
731
+ prompt: 'TanStack Query v5.60.0 breaking changes 2026 조사 및 마이그레이션 가이드 탐색. 검색 시 현재 연도 포함. 출처: URL + 발행일 + 소스유형(공식/블로그/커뮤니티). 공식 changelog 우선.'
860
732
  })
861
733
  Task({
862
734
  subagent_type: 'explore',
@@ -12,6 +12,7 @@ user-invocable: true
12
12
  @../../instructions/agent-patterns/model-routing.md
13
13
  @../../instructions/validation/forbidden-patterns.md
14
14
  @../../instructions/validation/required-behaviors.md
15
+ @../../instructions/sourcing/reliable-search.md
15
16
 
16
17
  # Docs Fetch Skill
17
18
 
@@ -65,24 +66,7 @@ ARGUMENT 있음 → 다음 단계 진행
65
66
 
66
67
  <sourcing_strategy>
67
68
 
68
- ## 3-Tier Fallback
69
-
70
- ```
71
- Tier 1 (MCP 도구 우선):
72
- Firecrawl MCP + SearXNG MCP → /map 구조 파악 → /crawl 수집 + 보충 검색 병렬
73
- Context7 MCP → 라이브러리 문서 직접 조회
74
-
75
- Tier 2 (내장 도구):
76
- llms.txt → WebFetch("{도메인}/llms.txt") 우선 확인
77
- GitHub → gh API + GitHub MCP (README, docs/, CHANGELOG)
78
- WebFetch → 공식 문서 핵심 페이지 직접 읽기
79
- WebSearch → 보충 검색
80
-
81
- Tier 3 (최후 수단):
82
- Playwright → SPA 사이트, JS 렌더링 필요 시 crawler skill 연계
83
- ```
84
-
85
- ### 소싱 우선순위 (항상 이 순서)
69
+ ## 소싱 우선순위 (docs-fetch 특화)
86
70
 
87
71
  | 순서 | 소스 | 이유 |
88
72
  |------|------|------|
@@ -93,6 +77,8 @@ Tier 3 (최후 수단):
93
77
  | **5** | WebFetch | 개별 페이지 직접 읽기 |
94
78
  | **6** | WebSearch | 최후 보충 검색 |
95
79
 
80
+ **Smart Tier Fallback 및 MCP 통합 전략**: @../../instructions/sourcing/reliable-search.md 참조
81
+
96
82
  </sourcing_strategy>
97
83
 
98
84
  ---
@@ -106,15 +92,16 @@ Tier 3 (최후 수단):
106
92
  - "prisma@7" → name: prisma, version: 7
107
93
  - "https://..." → URL에서 라이브러리명 추론
108
94
 
109
- 2. MCP 도구 감지
110
- - Firecrawl MCP 사용 가능? Tier 1 활성화
111
- - SearXNG MCP 사용 가능? → Tier 1 검색 활성화 (Firecrawl과 병렬)
112
- - Context7 MCP 사용 가능? → Tier 1 문서 조회 활성화
113
- - GitHub MCP 사용 가능? → GitHub MCP 우선 사용
114
- - 모두 없으면 → Tier 2 (내장 도구만)
95
+ 2. MCP 도구 감지 (ToolSearch로 감지)
96
+ - Firecrawl, SearXNG, Context7, GitHub MCP 활성화 여부 확인
97
+
98
+ 3. 버전 최신성 확인
99
+ - npm registry에서 latest 버전 확인 (WebFetch 'https://registry.npmjs.org/{name}/latest')
100
+ - 사용자 지정 버전과 비교, 최신 아니면 경고 표시
115
101
 
116
- 3. 기존 문서 확인
117
- - docs/library/[name]/ 이미 존재? → 업데이트 모드
102
+ 4. 기존 문서 확인
103
+ - docs/library/[name]/ 이미 존재? → 생성일 확인
104
+ - 6개월 이상 경과 → "기존 문서 업데이트 권장" 표시
118
105
  ```
119
106
 
120
107
  ---
@@ -166,53 +153,28 @@ Task(subagent_type="researcher", model="haiku",
166
153
  Context7 MCP 없으면 스킵.")
167
154
  ```
168
155
 
169
- ### Step 1-4: 보충 검색 (병렬)
156
+ ### Step 1-4: 보충 검색 (병렬, 현재 연도 포함 필수)
170
157
 
171
158
  ```typescript
172
- // SearXNG MCP 있으면 사용, 없으면 WebSearch
159
+ // 현재 연도 포함 필수 (2026년 기준)
173
160
  Task(subagent_type="researcher", model="haiku",
174
- prompt="{name} v{version} breaking changes, migration guide 검색.
175
- SearXNG MCP 있으면 사용, 없으면 WebSearch.")
161
+ prompt="{name} v{version} breaking changes 2026 migration guide 검색.
162
+ 검색 쿼리에 현재 연도 포함, 12개월 이내 자료 우선.
163
+ 'v{version} [2026] migration', '{name} breaking changes 2026' 패턴 사용.")
176
164
 
177
165
  Task(subagent_type="researcher", model="haiku",
178
- prompt="{name} v{version} best practices, common mistakes 검색.
179
- SearXNG MCP 있으면 사용, 없으면 WebSearch.")
166
+ prompt="{name} v{version} best practices 2026, common mistakes 검색.
167
+ 현재 연도 포함, 최신 트렌드 반영.")
180
168
  ```
181
169
 
182
170
  ---
183
171
 
184
172
  ## Phase 2: 핵심 페이지 읽기
185
173
 
186
- ### Tier 1 경로 (Firecrawl + SearXNG MCP 있을 때)
187
-
188
- ```typescript
189
- // Firecrawl + SearXNG 병렬 실행
190
- // 1. 문서 사이트 URL 구조 파악 + 보충 검색 동시
191
- firecrawl_map({ url: "{docs_url}" })
192
- searxng_search("{name} v{version} breaking changes migration")
193
-
194
- // 2. 핵심 페이지 일괄 크롤링 (최대 50페이지)
195
- firecrawl_crawl({
196
- url: "{docs_url}",
197
- limit: 50,
198
- scrapeOptions: { formats: ["markdown"] }
199
- })
200
- ```
201
-
202
- ### Tier 2 경로 (내장 도구만)
203
-
204
- ```typescript
205
- // llms.txt 링크가 있으면 → 링크된 페이지만 WebFetch
206
- // 없으면 → GitHub docs/ + 공식 문서 상위 10-15페이지
207
-
208
- // 병렬 WebFetch (최대 5개씩)
209
- Task(subagent_type="researcher", model="haiku",
210
- prompt="다음 URL들을 WebFetch로 읽기: {url_list_1}")
211
- Task(subagent_type="researcher", model="haiku",
212
- prompt="다음 URL들을 WebFetch로 읽기: {url_list_2}")
213
- Task(subagent_type="researcher", model="haiku",
214
- prompt="다음 URL들을 WebFetch로 읽기: {url_list_3}")
215
- ```
174
+ | Tier | 경로 | 실행 |
175
+ |------|------|------|
176
+ | **1 (MCP)** | Firecrawl + SearXNG | `firecrawl_map` → `firecrawl_crawl` (최대 50p) + `searxng_search` 병렬 |
177
+ | **2 (내장)** | WebFetch | llms.txt 링크 우선, 없으면 GitHub docs/ + 공식 문서 10-15p (5개씩 병렬) |
216
178
 
217
179
  ### 공통: Breaking Changes 추출
218
180
 
@@ -229,24 +191,18 @@ CHANGELOG.md에서 추출할 정보:
229
191
  ## Phase 2.5: 수집 정보 분석 (analyst + architect 병렬)
230
192
 
231
193
  ```typescript
232
- // 수집된 정보 기반 분석 (Phase 3 전에 실행)
233
194
  Task(subagent_type="analyst", model="sonnet",
234
- prompt=`수집된 {name} v{version} 정보를 분석:
235
- - 문서에 반드시 포함해야 핵심 주제 식별
236
- - 누락된 정보 영역 (추가 수집 필요?)
237
- - forbidden/required 후보 패턴 추출
238
- - 버전별 breaking changes 정리`)
195
+ prompt=`수집된 {name} v{version} 정보 분석:
196
+ - 수집 자료 발행일 검증 (12개월 초과 시 최신 자료 보충 검색)
197
+ - 핵심 주제 식별, 누락 영역 확인
198
+ - forbidden/required 패턴 추출, breaking changes 정리`)
239
199
 
240
200
  Task(subagent_type="architect", model="sonnet",
241
- prompt=`{name} v{version} 라이브러리 아키텍처 분석:
242
- - 핵심 API surface (public API 구조)
243
- - 주요 사용 패턴 및 안티패턴
244
- - 의존성 관계 및 설정 요구사항
245
- - quick_reference에 포함할 코드 패턴 선별`)
201
+ prompt=`{name} v{version} 아키텍처 분석:
202
+ - 핵심 API surface, 사용 패턴/안티패턴
203
+ - quick_reference 코드 패턴 선별`)
246
204
  ```
247
205
 
248
- **분석 결과** → Phase 3 document-writer에 전달하여 문서 품질 향상
249
-
250
206
  ---
251
207
 
252
208
  ## Phase 3: 문서 생성 (병렬 writer)
@@ -286,27 +242,16 @@ Task(subagent_type="document-writer", model="haiku",
286
242
  ## Phase 5: 품질 검증 (critic)
287
243
 
288
244
  ```typescript
289
- // 생성된 문서 품질 검증
290
245
  Task(subagent_type="critic", model="sonnet",
291
- prompt=`생성된 docs/library/{name}/index.md 문서 검증:
292
- - <context>, <forbidden>, <required>, <quick_reference>, <version_info> 섹션 존재 여부
293
- - 버전 정보 정확성
246
+ prompt=`생성된 docs/library/{name}/index.md 검증:
247
+ - 필수 섹션 (<context>, <forbidden>, <required>, <quick_reference>, <version_info>)
248
+ - 버전 최신성 (npm latest 버전과 비교)
294
249
  - 코드 예시 복사 가능 여부
295
- - 기존 docs/ 포맷과 일관성
296
- - 한글 주석, ✅/❌ 마커 사용 여부
250
+ - 기존 docs/ 포맷 일관성
297
251
  OKAY/REJECT 판정.`)
298
252
  ```
299
253
 
300
- **REJECT 시** 피드백 기반으로 document-writer 재실행
301
- **OKAY 시** → 결과 리포트 출력
302
-
303
- ```
304
- 결과 리포트:
305
- - 생성된 파일 목록
306
- - 소싱 경로 (어떤 Tier 사용했는지)
307
- - 토큰 수 추정
308
- - critic 검증 결과
309
- ```
254
+ **REJECT** → document-writer 재실행 | **OKAY** → 결과 리포트 (파일 목록, 소싱 경로, 검증 결과)
310
255
 
311
256
  </workflow>
312
257
 
@@ -432,60 +377,16 @@ researcher(검색) ──┘
432
377
 
433
378
  <mcp_integration>
434
379
 
435
- ## MCP 도구 활용
436
-
437
- ### Firecrawl MCP (자체 호스팅)
438
-
439
- ```bash
440
- # 셋업
441
- claude mcp add firecrawl \
442
- -e FIRECRAWL_API_URL=http://localhost:3002 \
443
- -- npx -y firecrawl-mcp
444
- ```
445
-
446
- | 도구 | 용도 |
447
- |------|------|
448
- | `firecrawl_map` | 문서 사이트 URL 구조 파악 |
449
- | `firecrawl_crawl` | 핵심 페이지 일괄 수집 (MD 변환) |
450
- | `firecrawl_scrape` | 단일 페이지 스크랩 |
451
-
452
- ### SearXNG MCP (자체 호스팅)
380
+ ## MCP 도구별 용도
453
381
 
454
- ```bash
455
- # 셋업
456
- claude mcp add searxng \
457
- -e SEARXNG_BASE_URL=http://localhost:8080 \
458
- -- npx -y @sacode/searxng-simple-mcp
459
- ```
460
-
461
- | 용도 | 검색 쿼리 예시 |
462
- |------|---------------|
463
- | Breaking Changes | `"{name} v{ver} breaking changes migration"` |
464
- | Best Practices | `"{name} v{ver} best practices common mistakes"` |
465
- | 비교 | `"{name} vs {alt} comparison 2026"` |
466
-
467
- ### Context7 MCP
382
+ | MCP | 도구 | 용도 |
383
+ |-----|------|------|
384
+ | **Firecrawl** | `firecrawl_map/crawl/scrape` | 문서 사이트 구조 파악 → 일괄 수집 (MD 변환) |
385
+ | **SearXNG** | `web_search` | Breaking changes 검색 (연도 포함 필수) |
386
+ | **Context7** | `resolve-library-id`, `get-library-docs` | 라이브러리 문서 즉시 조회 (업데이트 지연 가능) |
387
+ | **GitHub** | `get_file_contents`, `get_latest_release` | README, docs/, CHANGELOG |
468
388
 
469
- | 도구 | 용도 |
470
- |------|------|
471
- | `resolve-library-id` | 라이브러리 식별자 확인 |
472
- | `get-library-docs` | 라이브러리 문서 조회 (업데이트 지연 가능성 있음) |
473
-
474
- ### GitHub MCP
475
-
476
- | 도구 | 용도 |
477
- |------|------|
478
- | `get_file_contents` | README.md, docs/ 폴더 내용 |
479
- | `list_commits` | 최근 변경사항 확인 |
480
- | `get_latest_release` | 최신 릴리스 + CHANGELOG |
481
-
482
- ### MCP 미설치 시 폴백
483
-
484
- | MCP 없음 | 대체 도구 |
485
- |----------|----------|
486
- | Firecrawl + SearXNG | WebFetch (페이지별) + WebSearch (내장) |
487
- | Context7 | WebFetch (개별 페이지 직접 읽기) |
488
- | GitHub MCP | `gh api` (CLI) |
389
+ **MCP 미설치** WebFetch (페이지별) + WebSearch (내장) + `gh api` (CLI) 폴백
489
390
 
490
391
  </mcp_integration>
491
392
 
@@ -516,71 +417,21 @@ claude mcp add searxng \
516
417
 
517
418
  <examples>
518
419
 
519
- ## 예시 1: llms.txt 있는 라이브러리
420
+ ## 핵심 예시: llms.txt 있는 라이브러리
520
421
 
521
422
  ```bash
522
- 사용자: /docs-fetch zod@4
523
-
524
- Phase 0: 환경 감지
525
- → Firecrawl MCP: 없음, SearXNG MCP: 없음 → Tier 2
526
-
527
- Phase 1: 정보 수집 (병렬)
528
- researcher 1: WebFetch("https://zod.dev/llms.txt") → ✅ 있음!
529
- researcher 2: npm registry → version 4.x, repo: colinhacks/zod
530
- researcher 3: gh api repos/colinhacks/zod/readme
531
- researcher 4: WebSearch "zod v4 breaking changes"
423
+ /docs-fetch zod@4
532
424
 
533
- Phase 2: llms.txt 링크된 페이지만 WebFetch
534
- 10페이지 병렬 읽기 (효율적)
535
-
536
- Phase 3: 문서 생성
537
- document-writer (sonnet): docs/library/zod/index.md
538
- document-writer (haiku): docs/library/zod/validation.md
539
-
540
- Phase 4: 저장
541
- → docs/library/zod/ 에 2개 파일 생성
542
- → "CLAUDE.md에 @docs/library/zod/index.md 추가 권장"
425
+ Phase 0: npm latest 확인 → 4.x 최신
426
+ Phase 1: llms.txt + GitHub + 검색 (병렬, 연도 포함)
427
+ Phase 2: llms.txt 링크 10페이지 WebFetch
428
+ Phase 2.5: analyst (발행일 검증 + 주제 식별) + architect (패턴 선별)
429
+ Phase 3: index.md + validation.md 생성
430
+ Phase 5: critic 검증 ✅ → docs/library/zod/ 저장
543
431
  ```
544
432
 
545
- ## 예시 2: Firecrawl + SearXNG MCP 있는 경우
546
-
547
- ```bash
548
- 사용자: /docs-fetch tanstack-query@5
549
-
550
- Phase 0: 환경 감지
551
- → Firecrawl MCP: ✅ + SearXNG MCP: ✅ → Tier 1 활성화
552
-
553
- Phase 1: 정보 수집 (병렬)
554
- firecrawl_map: https://tanstack.com/query/latest/docs → URL 200개 발견
555
- searxng: "tanstack query v5 breaking changes migration" → 보충 정보
556
- researcher 1: npm registry → version 5.x
557
- researcher 2: GitHub README + CHANGELOG
558
- researcher 3: Context7 → 문서 조회
559
-
560
- Phase 2: Firecrawl 일괄 수집
561
- firecrawl_crawl: 핵심 50페이지 → 깨끗한 MD
562
-
563
- Phase 3: 문서 생성 (병렬)
564
- document-writer (sonnet): index.md
565
- document-writer (haiku): use-query.md
566
- document-writer (haiku): use-mutation.md
567
- document-writer (haiku): invalidation.md
568
-
569
- Phase 4: 저장
570
- → docs/library/tanstack-query/ 에 4개 파일 생성
571
- ```
572
-
573
- ## 예시 3: URL 직접 지정
574
-
575
- ```bash
576
- 사용자: /docs-fetch https://www.prisma.io/docs/orm
577
-
578
- Phase 0: URL 파싱 → name: prisma, docs_url: prisma.io/docs/orm
579
-
580
- Phase 1-2: WebFetch로 주요 페이지 수집
581
- Phase 3: 문서 생성
582
- Phase 4: docs/library/prisma/ 에 저장
583
- ```
433
+ **Firecrawl MCP 있으면**: `/map` `/crawl` 50페이지 일괄 수집
434
+ **URL 지정**: `/docs-fetch https://www.prisma.io/docs/orm` → 직접 WebFetch
584
435
 
585
436
  </examples>
586
437
 
@@ -590,37 +441,18 @@ Phase 4: docs/library/prisma/ 에 저장
590
441
 
591
442
  ## 검증 체크리스트
592
443
 
593
- **실행 전:**
594
- - [ ] ARGUMENT 확인 (라이브러리명 또는 URL)
595
- - [ ] MCP 도구 감지 완료
596
- - [ ] llms.txt 확인 완료
597
-
598
- **수집 후:**
599
- - [ ] 최소 README + 1개 이상 문서 페이지 수집
600
- - [ ] 버전 정보 확인
601
- - [ ] Breaking Changes 확인 시도
602
-
603
- **생성 후:**
604
- - [ ] `<context>` 섹션 포함
605
- - [ ] `<forbidden>` 섹션 포함 (Breaking Changes 있으면)
606
- - [ ] `<required>` 섹션 포함
607
- - [ ] `<quick_reference>` 코드 예시 포함
608
- - [ ] `<version_info>` 버전 명시
609
- - [ ] 한글 주석 포함
610
- - [ ] ✅/❌ 마커 사용
611
-
612
- **저장 후:**
613
- - [ ] docs/library/[name]/ 에 파일 저장됨
614
- - [ ] 결과 리포트 출력 (파일 목록 + 소싱 경로)
615
- - [ ] CLAUDE.md @참조 추가 제안
444
+ | 단계 | 체크 |
445
+ |------|------|
446
+ | **실행 전** | ARGUMENT, MCP 감지, llms.txt 확인, npm latest 버전 확인 |
447
+ | **수집 후** | 최소 README + 1p 문서, 수집 자료 발행일 12개월 이내, Breaking Changes 확인 |
448
+ | **생성 후** | 필수 섹션 (`<context>`, `<forbidden>`, `<required>`, `<quick_reference>`, `<version_info>`) |
449
+ | **저장 후** | docs/library/[name]/ 저장, 결과 리포트, CLAUDE.md @참조 제안 |
616
450
 
617
451
  ## 절대 금지
618
452
 
619
- - ❌ llms.txt 확인 없이 바로 크롤링
620
- - ❌ 단일 소스만으로 문서 생성 (최소 2개 소스 교차)
621
- - ❌ 버전 정보 누락
622
- - ❌ `<forbidden>` 섹션 없이 생성 (Breaking Changes 확인 필수)
623
- - ❌ 기존 docs 포맷과 다른 형식 사용
624
- - ❌ 결과 저장 없이 종료
453
+ - ❌ llms.txt 확인 없이 크롤링
454
+ - ❌ 단일 소스만으로 문서 생성 (최소 2개 교차)
455
+ - ❌ 버전 정보 누락, 연도 없는 검색 쿼리
456
+ - ❌ 기존 docs 포맷과 다른 형식
625
457
 
626
458
  </validation>