maskweaver 0.9.3 → 0.9.5
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.
- package/README.ko.md +279 -325
- package/README.md +109 -113
- package/assets/commands/meta/commands.json +34 -34
- package/assets/commands/weave-agents.md +12 -52
- package/assets/commands/weave-approve.md +12 -51
- package/assets/commands/weave-archive.md +21 -0
- package/assets/commands/weave-build.md +20 -89
- package/assets/commands/weave-craft.md +22 -43
- package/assets/commands/weave-help.md +37 -106
- package/assets/commands/weave-init.md +26 -108
- package/assets/commands/weave-interview.md +13 -111
- package/assets/commands/weave-map.md +13 -99
- package/assets/commands/weave-prepare.md +23 -69
- package/assets/commands/weave-refine-plan.md +26 -59
- package/assets/commands/weave-repair.md +22 -70
- package/assets/commands/weave-status.md +22 -155
- package/assets/commands/weave-troubleshoot.md +11 -47
- package/assets/commands/weave-verify.md +23 -44
- package/assets/commands/weave-worktree.md +27 -69
- package/dist/cli/doctor.js +5 -21
- package/dist/cli/install.d.ts +0 -8
- package/dist/cli/install.js +0 -39
- package/dist/context/config.d.ts +0 -22
- package/dist/context/config.js +0 -28
- package/dist/context/feature.d.ts +0 -39
- package/dist/context/feature.js +0 -77
- package/dist/context/files.d.ts +0 -13
- package/dist/context/files.js +1 -24
- package/dist/context/index.d.ts +0 -7
- package/dist/context/index.js +0 -12
- package/dist/context/project.d.ts +0 -21
- package/dist/context/project.js +0 -30
- package/dist/context/types.d.ts +0 -48
- package/dist/context/types.js +0 -12
- package/dist/context/utils.d.ts +0 -18
- package/dist/context/utils.js +0 -27
- package/dist/core/engine/promptBuilder.d.ts +0 -17
- package/dist/core/engine/promptBuilder.js +0 -28
- package/dist/core/index.d.ts +0 -6
- package/dist/core/index.js +0 -9
- package/dist/core/loader/MaskLoader.d.ts +0 -23
- package/dist/core/loader/MaskLoader.js +0 -29
- package/dist/core/schema/types.d.ts +0 -47
- package/dist/core/schema/types.js +0 -6
- package/dist/core/schema/validator.d.ts +0 -14
- package/dist/core/schema/validator.js +0 -18
- package/dist/i18n/index.d.ts +0 -18
- package/dist/i18n/index.js +4 -23
- package/dist/index.d.ts +0 -8
- package/dist/index.js +0 -8
- package/dist/lib.d.ts +0 -5
- package/dist/lib.js +0 -12
- package/dist/memory/chunking.d.ts +0 -22
- package/dist/memory/chunking.js +2 -37
- package/dist/memory/core.d.ts +0 -29
- package/dist/memory/core.js +1 -52
- package/dist/memory/index.d.ts +0 -5
- package/dist/memory/index.js +0 -10
- package/dist/memory/indexer.d.ts +0 -21
- package/dist/memory/indexer.js +0 -44
- package/dist/memory/providers/examples.d.ts +0 -5
- package/dist/memory/providers/examples.js +4 -64
- package/dist/memory/providers/factory.d.ts +0 -44
- package/dist/memory/providers/factory.js +0 -46
- package/dist/memory/providers/index.d.ts +0 -26
- package/dist/memory/providers/index.js +0 -28
- package/dist/memory/providers/ollama.d.ts +0 -6
- package/dist/memory/providers/ollama.js +1 -8
- package/dist/memory/providers/openai.d.ts +0 -6
- package/dist/memory/providers/openai.js +1 -8
- package/dist/memory/providers/openrouter.d.ts +0 -6
- package/dist/memory/providers/openrouter.js +0 -8
- package/dist/memory/providers/text-only.d.ts +0 -13
- package/dist/memory/providers/text-only.js +0 -17
- package/dist/memory/providers/types.d.ts +0 -39
- package/dist/memory/providers/types.js +0 -7
- package/dist/memory/providers/voyage.d.ts +0 -22
- package/dist/memory/providers/voyage.js +1 -24
- package/dist/memory/search/hybrid.d.ts +0 -12
- package/dist/memory/search/hybrid.js +1 -22
- package/dist/memory/store/sqlite.d.ts +0 -72
- package/dist/memory/store/sqlite.js +4 -127
- package/dist/plugin/config/index.d.ts +0 -112
- package/dist/plugin/config/index.js +0 -115
- package/dist/plugin/index.d.ts +0 -13
- package/dist/plugin/index.js +1 -124
- package/dist/plugin/tools/command-registry.d.ts +0 -6
- package/dist/plugin/tools/command-registry.js +0 -14
- package/dist/plugin/tools/context.d.ts +0 -12
- package/dist/plugin/tools/context.js +0 -58
- package/dist/plugin/tools/maskSave.d.ts +0 -3
- package/dist/plugin/tools/maskSave.js +0 -3
- package/dist/plugin/tools/memoryGet.d.ts +0 -3
- package/dist/plugin/tools/memoryGet.js +0 -3
- package/dist/plugin/tools/memoryIndexer.d.ts +0 -3
- package/dist/plugin/tools/memoryIndexer.js +0 -10
- package/dist/plugin/tools/memorySearch.d.ts +0 -31
- package/dist/plugin/tools/memorySearch.js +0 -79
- package/dist/plugin/tools/memoryWrite.d.ts +0 -8
- package/dist/plugin/tools/memoryWrite.js +0 -32
- package/dist/plugin/tools/retrospect.d.ts +0 -3
- package/dist/plugin/tools/retrospect.js +0 -3
- package/dist/plugin/tools/slashcommand.d.ts +0 -11
- package/dist/plugin/tools/slashcommand.js +0 -38
- package/dist/plugin/tools/squad.d.ts +0 -12
- package/dist/plugin/tools/squad.js +11 -83
- package/dist/plugin/tools/weave.d.ts +0 -6
- package/dist/plugin/tools/weave.js +0 -78
- package/dist/plugin/types.d.ts +0 -20
- package/dist/plugin/types.js +0 -7
- package/dist/retrospect/index.d.ts +0 -7
- package/dist/retrospect/index.js +0 -9
- package/dist/retrospect/mask-save.d.ts +0 -12
- package/dist/retrospect/mask-save.js +1 -80
- package/dist/retrospect/retrospect.d.ts +0 -18
- package/dist/retrospect/retrospect.js +0 -63
- package/dist/retrospect/strategies/base.d.ts +0 -15
- package/dist/retrospect/strategies/base.js +0 -7
- package/dist/retrospect/strategies/deep.d.ts +0 -12
- package/dist/retrospect/strategies/deep.js +0 -24
- package/dist/retrospect/strategies/index.d.ts +0 -12
- package/dist/retrospect/strategies/index.js +0 -12
- package/dist/retrospect/strategies/quick.d.ts +0 -12
- package/dist/retrospect/strategies/quick.js +0 -19
- package/dist/retrospect/strategies/standard.d.ts +0 -12
- package/dist/retrospect/strategies/standard.js +0 -15
- package/dist/retrospect/types.d.ts +0 -7
- package/dist/retrospect/types.js +0 -7
- package/dist/shared/config.d.ts +0 -105
- package/dist/shared/config.js +0 -33
- package/dist/shared/errors.d.ts +0 -18
- package/dist/shared/errors.js +0 -19
- package/dist/shared/generate-agents.d.ts +0 -69
- package/dist/shared/generate-agents.js +2 -86
- package/dist/shared/image.d.ts +0 -67
- package/dist/shared/image.js +6 -104
- package/dist/shared/index.d.ts +0 -5
- package/dist/shared/index.js +0 -7
- package/dist/shared/model-registry.d.ts +0 -72
- package/dist/shared/model-registry.js +5 -95
- package/dist/shared/types.d.ts +0 -15
- package/dist/shared/types.js +0 -3
- package/dist/shared-context/dag.d.ts +0 -105
- package/dist/shared-context/dag.js +3 -114
- package/dist/shared-context/index.d.ts +0 -5
- package/dist/shared-context/index.js +0 -15
- package/dist/shared-context/logger.d.ts +0 -37
- package/dist/shared-context/logger.js +0 -41
- package/dist/shared-context/parallel-executor.d.ts +0 -54
- package/dist/shared-context/parallel-executor.js +4 -56
- package/dist/shared-context/session.d.ts +0 -56
- package/dist/shared-context/session.js +0 -47
- package/dist/shared-context/squad.d.ts +0 -68
- package/dist/shared-context/squad.js +0 -63
- package/dist/shared-context/storage.d.ts +0 -132
- package/dist/shared-context/storage.js +0 -116
- package/dist/shared-context/task.d.ts +0 -120
- package/dist/shared-context/task.js +0 -152
- package/dist/shared-context/test/dag.test.js +9 -14
- package/dist/shared-context/test/logger.test.d.ts +0 -8
- package/dist/shared-context/test/logger.test.js +0 -52
- package/dist/shared-context/test/session.test.d.ts +0 -7
- package/dist/shared-context/test/session.test.js +0 -63
- package/dist/shared-context/test/squad.test.d.ts +0 -10
- package/dist/shared-context/test/squad.test.js +2 -68
- package/dist/shared-context/test/storage.test.d.ts +0 -8
- package/dist/shared-context/test/storage.test.js +0 -68
- package/dist/shared-context/test/task.test.d.ts +0 -7
- package/dist/shared-context/test/task.test.js +0 -54
- package/dist/shared-context/test/watchdog.test.d.ts +0 -7
- package/dist/shared-context/test/watchdog.test.js +3 -58
- package/dist/shared-context/types.d.ts +0 -215
- package/dist/shared-context/types.js +0 -125
- package/dist/shared-context/watchdog.d.ts +0 -127
- package/dist/shared-context/watchdog.js +0 -148
- package/dist/shared-context/worktree.d.ts +0 -68
- package/dist/shared-context/worktree.js +2 -34
- package/dist/verify/budget.d.ts +0 -29
- package/dist/verify/budget.js +0 -34
- package/dist/verify/critical-files.d.ts +0 -17
- package/dist/verify/critical-files.js +0 -37
- package/dist/verify/escalation.d.ts +0 -20
- package/dist/verify/escalation.js +0 -22
- package/dist/verify/index.d.ts +0 -5
- package/dist/verify/index.js +0 -11
- package/dist/verify/prompts.d.ts +0 -20
- package/dist/verify/prompts.js +0 -20
- package/dist/verify/types.d.ts +0 -26
- package/dist/verify/types.js +1 -12
- package/dist/verify/verifier.d.ts +0 -29
- package/dist/verify/verifier.js +0 -54
- package/dist/version.d.ts +1 -16
- package/dist/version.js +1 -16
- package/dist/weave/bridge.d.ts +0 -35
- package/dist/weave/bridge.js +0 -51
- package/dist/weave/environment/detector.d.ts +0 -6
- package/dist/weave/environment/detector.js +4 -45
- package/dist/weave/environment/index.d.ts +0 -19
- package/dist/weave/environment/index.js +1 -39
- package/dist/weave/environment/issues.d.ts +0 -35
- package/dist/weave/environment/issues.js +0 -59
- package/dist/weave/git.d.ts +0 -8
- package/dist/weave/git.js +0 -8
- package/dist/weave/index.d.ts +0 -13
- package/dist/weave/index.js +2 -28
- package/dist/weave/knowledge/global.d.ts +0 -39
- package/dist/weave/knowledge/global.js +2 -78
- package/dist/weave/loop.js +0 -3
- package/dist/weave/orchestrator.d.ts +0 -69
- package/dist/weave/orchestrator.js +1 -101
- package/dist/weave/phase-manager.d.ts +0 -64
- package/dist/weave/phase-manager.js +0 -89
- package/dist/weave/security/secret-scan.d.ts +0 -14
- package/dist/weave/security/secret-scan.js +0 -19
- package/dist/weave/stages/build.js +0 -15
- package/dist/weave/stages/execute.d.ts +0 -42
- package/dist/weave/stages/execute.js +4 -86
- package/dist/weave/stages/handoff.d.ts +0 -7
- package/dist/weave/stages/handoff.js +0 -43
- package/dist/weave/stages/index.d.ts +0 -3
- package/dist/weave/stages/index.js +0 -3
- package/dist/weave/stages/intake.d.ts +0 -8
- package/dist/weave/stages/intake.js +5 -65
- package/dist/weave/stages/map.d.ts +0 -1
- package/dist/weave/stages/openspec.d.ts +0 -1
- package/dist/weave/stages/plan.d.ts +0 -11
- package/dist/weave/stages/plan.js +1 -53
- package/dist/weave/stages/refine.d.ts +0 -7
- package/dist/weave/stages/refine.js +0 -7
- package/dist/weave/stages/research.d.ts +0 -6
- package/dist/weave/stages/research.js +0 -6
- package/dist/weave/stages/spec.d.ts +0 -12
- package/dist/weave/stages/spec.js +0 -17
- package/dist/weave/types.d.ts +0 -20
- package/dist/weave/types.js +0 -5
- package/dist/weave/verification/commands.d.ts +0 -12
- package/dist/weave/verification/commands.js +0 -19
- package/dist/weave/verification/index.d.ts +0 -6
- package/dist/weave/verification/index.js +1 -19
- package/dist/weave/verification/playwright.d.ts +0 -47
- package/dist/weave/verification/playwright.js +1 -90
- package/dist/weave/worktree.d.ts +0 -16
- package/dist/weave/worktree.js +0 -23
- package/dist/weave/yaml-repair.d.ts +0 -39
- package/dist/weave/yaml-repair.js +13 -116
- package/package.json +1 -1
|
@@ -1,121 +1,23 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Ask clarifying questions until requirements and structural changes are clear
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /weave-interview
|
|
5
|
+
# /weave-interview
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Use codebase context and optional requirement documents to ask the questions needed before planning.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
코드베이스의 현재 상태와 구조적 변경 가능성을 파악하고, 명확해질 때까지 질문을 반복합니다.
|
|
9
|
+
Use the `weave` tool:
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## 데이터 로드 방법 (필수)
|
|
19
|
-
|
|
20
|
-
```
|
|
21
|
-
1. .opencode/weave/maps/map-result.yaml 로드 (map 먼저 실행되어 있어야 함)
|
|
22
|
-
2. map 결과가 없으면: 자동으로 기본 map 분석 수행 후 진행
|
|
23
|
-
3. (선택) docsPath의 문서 로드
|
|
24
|
-
4. 코드베이스 기술 스택 및 구조적 이슈 확인
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## 입력
|
|
30
|
-
|
|
31
|
-
```yaml
|
|
32
|
-
docsPath: "docs/" # (선택) 요구사항 문서 경로
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## 동작 흐름
|
|
38
|
-
|
|
39
|
-
```
|
|
40
|
-
1. 코드베이스 맵 결과 로드 (없으면 자동 생성)
|
|
41
|
-
2. 구조적 변경 감지 (structural changes)
|
|
42
|
-
- 현재 상태 vs 제안된 변경
|
|
43
|
-
- Breaking change 여부
|
|
44
|
-
- 영향받는 파일 목록
|
|
45
|
-
3. 사용자에게 질문 생성
|
|
46
|
-
- 변경 영역에 대한 의도 확인
|
|
47
|
-
- 우선순위 및 범위 조정
|
|
48
|
-
4. 충분한 명확성 달성 시 인터뷰 종료
|
|
49
|
-
- 종료 기준: 모든 structural changes에 대해 agreed 상태
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## 출력 예시
|
|
55
|
-
|
|
56
|
-
### 인터뷰 진행 중
|
|
57
|
-
|
|
58
|
-
```markdown
|
|
59
|
-
## 🎤 Weave Interview
|
|
60
|
-
|
|
61
|
-
**기반 맵**: `map-20250428-a1b2`
|
|
62
|
-
**프로젝트 타입**: TypeScript / React
|
|
63
|
-
|
|
64
|
-
### 감지된 구조적 변경
|
|
65
|
-
|
|
66
|
-
1. **Auth 모듈 분리**
|
|
67
|
-
- 현재: `src/lib/auth.ts` (단일 파일)
|
|
68
|
-
- 제안: `src/auth/` 디렉토리로 분리
|
|
69
|
-
- 영향: 8개 파일
|
|
70
|
-
- Breaking: ❌ 아니오
|
|
71
|
-
|
|
72
|
-
2. **Prisma → Drizzle 마이그레이션**
|
|
73
|
-
- 현재: Prisma ORM
|
|
74
|
-
- 제안: Drizzle ORM으로 전환
|
|
75
|
-
- 영향: 15개 파일
|
|
76
|
-
- Breaking: ⚠️ 예 (DB 스키마 변경)
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
### 질문
|
|
81
|
-
|
|
82
|
-
> **Q1**: Auth 모듈 분리는 단순 코드 구조 개선인가요, 아니면 새로운 인증 기능(예: OAuth) 추가를 위한 준비인가요?
|
|
83
|
-
>
|
|
84
|
-
> 답변 후 다음 질문으로 진행합니다.
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
### 인터뷰 완료
|
|
88
|
-
|
|
89
|
-
```markdown
|
|
90
|
-
## ✅ Interview Complete
|
|
91
|
-
|
|
92
|
-
**모든 구조적 변경이 명확해졌습니다.**
|
|
93
|
-
|
|
94
|
-
| 변경 영역 | 상태 | 결정 |
|
|
95
|
-
|-----------|------|------|
|
|
96
|
-
| Auth 모듈 분리 | ✅ Agreed | 디렉토리 분리 + OAuth 확장 준비 |
|
|
97
|
-
| Prisma → Drizzle | ⏳ Pending | Phase 2로 연기 (현재는 Prisma 유지) |
|
|
98
|
-
|
|
99
|
-
### 다음 단계
|
|
100
|
-
- `/weave-design` — 결정사항을 바탕으로 계획 수립
|
|
101
|
-
- `/weave-prepare` — research + spec + plan 한 번에 생성
|
|
11
|
+
```txt
|
|
12
|
+
weave command=interview
|
|
13
|
+
weave command=interview docsPath="docs/"
|
|
102
14
|
```
|
|
103
15
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
## 아티팩트 저장 위치
|
|
107
|
-
|
|
108
|
-
인터뷰 결과는 `.opencode/weave/interviews/`에 저장됩니다:
|
|
109
|
-
|
|
110
|
-
```
|
|
111
|
-
.opencode/weave/interviews/
|
|
112
|
-
└── interview-{id}.yaml # 질문-답변 기록 및 structural changes 상태
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
---
|
|
16
|
+
## Goal
|
|
116
17
|
|
|
117
|
-
|
|
18
|
+
- Identify unclear requirements.
|
|
19
|
+
- Detect structural changes that need explicit agreement.
|
|
20
|
+
- Separate must-have scope from later work.
|
|
21
|
+
- Produce enough clarity for `/weave-prepare`.
|
|
118
22
|
|
|
119
|
-
|
|
120
|
-
- `/weave-design` — 인터뷰 결과를 바탕으로 계획 수립
|
|
121
|
-
- `/weave-prepare` — 전체 워크플로우 한 번에 실행
|
|
23
|
+
Use this before planning when requirements are fuzzy, architectural impact is likely, or multiple stakeholders need their assumptions surfaced.
|
|
@@ -1,109 +1,23 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Analyze codebase structure via GDC and optional Graphify
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /weave-map
|
|
5
|
+
# /weave-map
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Map the current codebase before requirements interviews or planning.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
`deep` 옵션 사용 시 `graphify-windows` 스킬을 활용한 딥 그래프 분석도 수행합니다.
|
|
9
|
+
Use the `weave` tool:
|
|
11
10
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## 데이터 로드 방법 (필수)
|
|
19
|
-
|
|
20
|
-
```
|
|
21
|
-
1. 프로젝트 루트의 package.json, tsconfig.json, Cargo.toml, go.mod 등 탐지
|
|
22
|
-
2. GDC 설정 확인 (.gdc/config.yaml 또는 .opencode/gdc/)
|
|
23
|
-
3. GDC 활성화 시: gdc graph + gdc stats 명령 실행
|
|
24
|
-
4. deep 옵션 시: graphify-windows 스킬 실행
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## 입력
|
|
30
|
-
|
|
31
|
-
```yaml
|
|
32
|
-
deep: false # (선택) true 시 graphify-windows 딥 분석 실행
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## 출력 예시
|
|
38
|
-
|
|
39
|
-
### 기본 분석
|
|
40
|
-
|
|
41
|
-
```markdown
|
|
42
|
-
## 🗺️ Codebase Map
|
|
43
|
-
|
|
44
|
-
**프로젝트 타입**: TypeScript / Node.js
|
|
45
|
-
**기술 스택**: React, Next.js, Prisma, Tailwind
|
|
46
|
-
|
|
47
|
-
### 디렉토리 구조
|
|
48
|
-
```
|
|
49
|
-
src/
|
|
50
|
-
├── app/ # Next.js App Router
|
|
51
|
-
├── components/ # React 컴포넌트
|
|
52
|
-
├── lib/ # 유틸리티
|
|
53
|
-
└── db/ # Prisma 스키마
|
|
11
|
+
```txt
|
|
12
|
+
weave command=map
|
|
13
|
+
weave command=map deep=true
|
|
54
14
|
```
|
|
55
15
|
|
|
56
|
-
|
|
57
|
-
- **노드**: 42개
|
|
58
|
-
- **엣지**: 78개
|
|
59
|
-
- **커버리지**: 85% 구현, 60% 테스트
|
|
60
|
-
|
|
61
|
-
### 주요 의존성
|
|
62
|
-
- next: ^14.0
|
|
63
|
-
- react: ^18.2
|
|
64
|
-
- @prisma/client: ^5.0
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
### 심층 분석 (deep)
|
|
68
|
-
|
|
69
|
-
```markdown
|
|
70
|
-
## 🗺️ Codebase Map (Deep)
|
|
71
|
-
|
|
72
|
-
**그래프 분석 완료**
|
|
73
|
-
|
|
74
|
-
### 커뮤니티 클러스터
|
|
75
|
-
| 클러스터 | 파일 수 | 핵심 엔티티 |
|
|
76
|
-
|----------|--------|------------|
|
|
77
|
-
| C1 | 12 | User, Auth, Session |
|
|
78
|
-
| C2 | 8 | Post, Comment, Feed |
|
|
79
|
-
| C3 | 6 | Payment, Subscription |
|
|
80
|
-
|
|
81
|
-
### 구조적 이슈
|
|
82
|
-
- ⚠️ 순환 의존성: `src/lib/api.ts` ↔ `src/lib/auth.ts`
|
|
83
|
-
- ⚠️ 고립 노드: `src/utils/legacy-helpers.ts` (참조 없음)
|
|
84
|
-
|
|
85
|
-
### 추천 리팩토링
|
|
86
|
-
1. `api.ts`와 `auth.ts` 순환 의존성 해소
|
|
87
|
-
2. `legacy-helpers.ts` 제거 또는 통합
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## 아티팩트 저장 위치
|
|
93
|
-
|
|
94
|
-
분석 결과는 `.opencode/weave/maps/`에 저장됩니다:
|
|
95
|
-
|
|
96
|
-
```
|
|
97
|
-
.opencode/weave/maps/
|
|
98
|
-
├── map-report.yaml # 구조 분석 요약
|
|
99
|
-
├── map-result.yaml # GDC 연동 결과
|
|
100
|
-
└── graphify-report.html # deep 분석 시 생성
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
---
|
|
16
|
+
## Behavior
|
|
104
17
|
|
|
105
|
-
|
|
18
|
+
- Detects project type and important configuration files.
|
|
19
|
+
- Uses GDC when available for structural context.
|
|
20
|
+
- Uses deeper Graphify analysis when `deep=true` and the environment supports it.
|
|
21
|
+
- Saves map artifacts under `.opencode/weave/maps/`.
|
|
106
22
|
|
|
107
|
-
|
|
108
|
-
- `/weave-design` — 분석 결과를 바탕으로 계획 수립
|
|
109
|
-
- `/weave-init` — weave 워크스페이스 초기화
|
|
23
|
+
This command is for understanding structure. It should not replace builds, tests, or smoke checks.
|
|
@@ -1,69 +1,23 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: research
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /weave-prepare
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
## 사용법
|
|
25
|
-
|
|
26
|
-
**사용법**: `/weave-prepare $ARGUMENTS`
|
|
27
|
-
- `$ARGUMENTS` = 문서 경로 (예: `docs/`, `wiki/spec.md`)
|
|
28
|
-
|
|
29
|
-
예시:
|
|
30
|
-
- `/weave-prepare docs/`
|
|
31
|
-
- `/weave-prepare wiki/spec.md`
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## 실행
|
|
36
|
-
|
|
37
|
-
아래 weave tool 호출을 수행합니다:
|
|
38
|
-
|
|
39
|
-
```txt
|
|
40
|
-
weave command=prepare docsPath="$ARGUMENTS"
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
옵션(필요 시):
|
|
44
|
-
|
|
45
|
-
```txt
|
|
46
|
-
weave command=prepare docsPath="$ARGUMENTS" projectName="My Project" planName="emotion-diary"
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
---
|
|
50
|
-
|
|
51
|
-
## 생성되는 산출물(기본)
|
|
52
|
-
|
|
53
|
-
- Research: `tasks/research.md`
|
|
54
|
-
- Spec: `.opencode/weave/specs/{planName}.yaml`
|
|
55
|
-
- Plan: `.opencode/weave/plans/{planName}.yaml` 또는 `.opencode/weave/plans/{planName}-s*.yaml`
|
|
56
|
-
|
|
57
|
-
> 주의: `.opencode/`가 gitignore 대상일 수 있으므로, AI 도구가 파일을 읽을 수 있게 `/weave-init`의 `.ignore` 설정을 권장합니다.
|
|
58
|
-
|
|
59
|
-
---
|
|
60
|
-
|
|
61
|
-
## 다음 단계
|
|
62
|
-
|
|
63
|
-
준비가 끝나면:
|
|
64
|
-
|
|
65
|
-
```txt
|
|
66
|
-
weave command=refine-plan # (선택) plan-notes 반영
|
|
67
|
-
weave command=approve-plan
|
|
68
|
-
weave craft P1
|
|
69
|
-
```
|
|
1
|
+
---
|
|
2
|
+
description: Create research, spec, and phase plan artifacts from requirements
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /weave-prepare
|
|
6
|
+
|
|
7
|
+
Create the planning artifacts needed for phase-driven implementation.
|
|
8
|
+
|
|
9
|
+
Use the `weave` tool:
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
weave command=prepare docsPath="docs/"
|
|
13
|
+
weave command=prepare docsPath="docs/" planName="emotion-diary"
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Outputs
|
|
17
|
+
|
|
18
|
+
- Research notes from the provided documents or project context.
|
|
19
|
+
- Baseline spec under `.opencode/weave/specs/`.
|
|
20
|
+
- Phase plan under `.opencode/weave/plans/`.
|
|
21
|
+
- Sharded plans when a plan is too large and `splitPlans=true`.
|
|
22
|
+
|
|
23
|
+
After prepare, review the generated plan, optionally run `/weave-refine-plan`, then approve with `/weave-approve`.
|
|
@@ -1,59 +1,26 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: plan-
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /weave-refine-plan
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
weave
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
노트 파일 경로를 바꾸려면:
|
|
30
|
-
|
|
31
|
-
```txt
|
|
32
|
-
weave command=refine-plan notesPath="tasks/my-plan-notes.md"
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## 노트 문법 (예시)
|
|
38
|
-
|
|
39
|
-
`tasks/plan-notes.md`에 아래처럼 작성:
|
|
40
|
-
|
|
41
|
-
```txt
|
|
42
|
-
@plan vision: 로그인 이후 대시보드 흐름을 단순화한다
|
|
43
|
-
@arch frontend: React + Vite + TanStack Query
|
|
44
|
-
|
|
45
|
-
@phase P1 done_when: 유저가 이메일/비밀번호로 로그인할 수 있다
|
|
46
|
-
@phase P1 add_checklist: 로그인 실패 메시지가 명확히 보인다
|
|
47
|
-
|
|
48
|
-
@phase add P4: 운영 모니터링 | done=로그/메트릭 대시보드가 동작한다 | hours=3
|
|
49
|
-
@phase remove P7
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## 다음 단계
|
|
55
|
-
|
|
56
|
-
```txt
|
|
57
|
-
weave command=approve-plan
|
|
58
|
-
weave command=craft
|
|
59
|
-
```
|
|
1
|
+
---
|
|
2
|
+
description: Apply structured plan-note directives to the active plan
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /weave-refine-plan
|
|
6
|
+
|
|
7
|
+
Apply structured review notes to the active plan before approval.
|
|
8
|
+
|
|
9
|
+
Use the `weave` tool:
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
weave command=refine-plan
|
|
13
|
+
weave command=refine-plan notesPath="tasks/plan-notes.md"
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Note Examples
|
|
17
|
+
|
|
18
|
+
```txt
|
|
19
|
+
@plan vision: Keep the first release focused on login and dashboard.
|
|
20
|
+
@phase P1 done_when: A user can sign in with email and password.
|
|
21
|
+
@phase P1 add_checklist: Failed login shows a clear message.
|
|
22
|
+
@phase add P4: Observability | done=errors are logged | hours=3
|
|
23
|
+
@phase remove P7
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Run `/weave-approve` again after changing the active plan.
|
|
@@ -1,70 +1,22 @@
|
|
|
1
|
-
---
|
|
2
|
-
description:
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /weave-repair
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
2. .opencode/weave/plans/ 디렉토리의 모든 .yaml 파일 목록 확인
|
|
24
|
-
3. .opencode/weave/PLAN.yaml (레거시) 확인
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
### 2단계: weave tool로 수복 실행
|
|
28
|
-
|
|
29
|
-
`weave command=repair`를 호출하여 자동 수복을 실행합니다.
|
|
30
|
-
|
|
31
|
-
### 3단계: 결과 보고
|
|
32
|
-
|
|
33
|
-
수복 결과를 유저에게 보여줍니다:
|
|
34
|
-
- **OK**: 정상 파일
|
|
35
|
-
- **FIXED**: 자동 수복 성공 (무엇을 고쳤는지 표시)
|
|
36
|
-
- **FAIL**: 자동 수복 불가 (유저에게 복구 옵션 안내)
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
## 자동 수복 가능한 문제
|
|
41
|
-
|
|
42
|
-
| 문제 | 예시 | 수복 방법 |
|
|
43
|
-
|------|------|----------|
|
|
44
|
-
| 닫히지 않은 따옴표 | `done_when: "1. fs.edit가 SecurityHook에` | 내부 따옴표 이스케이프 후 닫기 |
|
|
45
|
-
| 탭 문자 | 들여쓰기에 탭 사용 | 스페이스 2칸으로 변환 |
|
|
46
|
-
| 줄바꿈 문제 | CR+LF 혼합 | LF로 통일 |
|
|
47
|
-
| 백업 복원 | 파싱 완전 실패 | `.bak` 파일에서 복원 |
|
|
48
|
-
|
|
49
|
-
---
|
|
50
|
-
|
|
51
|
-
## 자동 수복 불가한 경우
|
|
52
|
-
|
|
53
|
-
수복이 불가능한 파일이 있으면 유저에게 다음 옵션을 안내합니다:
|
|
54
|
-
|
|
55
|
-
1. **원본 요구사항이 있다면**: `/weave-design`으로 플랜 재생성
|
|
56
|
-
2. **`.corrupted` 백업 확인**: plans 디렉토리에 백업 파일 존재 여부
|
|
57
|
-
3. **수동 복구**: 유저가 플랜 내용을 기억하면 그 정보로 YAML 재구성
|
|
58
|
-
|
|
59
|
-
**유저에게 물어볼 것**:
|
|
60
|
-
- 해당 플랜의 프로젝트 이름이 무엇이었는지
|
|
61
|
-
- 어떤 Phase들이 있었는지
|
|
62
|
-
- 각 Phase의 진행 상태 (완료/진행중/대기)
|
|
63
|
-
|
|
64
|
-
---
|
|
65
|
-
|
|
66
|
-
## 참고
|
|
67
|
-
|
|
68
|
-
- 수복 시 원본 파일은 `.corrupted` 확장자로 백업됩니다
|
|
69
|
-
- 매 저장마다 `.bak` 백업이 자동 생성됩니다
|
|
70
|
-
- `weave status`나 `weave craft` 실행 시에도 YAML 로드 실패하면 자동 수복을 시도합니다
|
|
1
|
+
---
|
|
2
|
+
description: Scan and auto-repair corrupted plan YAML files
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /weave-repair
|
|
6
|
+
|
|
7
|
+
Repair malformed Weave plan YAML when status, craft, or approve cannot load the plan.
|
|
8
|
+
|
|
9
|
+
Use the `weave` tool:
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
weave command=repair
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Behavior
|
|
16
|
+
|
|
17
|
+
- Scans `.opencode/weave/state.yaml` and plan files.
|
|
18
|
+
- Reports files as OK, fixed, or failed.
|
|
19
|
+
- Creates backups before risky repairs when supported.
|
|
20
|
+
- Gives manual recovery guidance when automatic repair is not possible.
|
|
21
|
+
|
|
22
|
+
Use this for artifact recovery only. Do not use it to rewrite requirements or change implementation scope.
|