maskweaver 0.9.2 → 0.9.4
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/build.md +17 -0
- 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/plugin/index.js +21 -2
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -19,11 +19,11 @@
|
|
|
19
19
|
"name": "map",
|
|
20
20
|
"aliases": [],
|
|
21
21
|
"deprecatedAliases": [],
|
|
22
|
-
"description": "
|
|
23
|
-
"descriptionEn": "Analyze codebase structure via GDC
|
|
22
|
+
"description": "Analyze codebase structure via GDC and optional Graphify",
|
|
23
|
+
"descriptionEn": "Analyze codebase structure via GDC and optional Graphify",
|
|
24
24
|
"category": "analysis",
|
|
25
25
|
"args": [
|
|
26
|
-
{ "name": "deep", "type": "boolean", "default": false, "description": "Run
|
|
26
|
+
{ "name": "deep", "type": "boolean", "default": false, "description": "Run deeper Graphify analysis when available" }
|
|
27
27
|
],
|
|
28
28
|
"mdFile": "weave-map.md",
|
|
29
29
|
"handler": "handleMap",
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
"name": "interview",
|
|
34
34
|
"aliases": [],
|
|
35
35
|
"deprecatedAliases": [],
|
|
36
|
-
"description": "
|
|
37
|
-
"descriptionEn": "
|
|
36
|
+
"description": "Ask clarifying questions until requirements and structural changes are clear",
|
|
37
|
+
"descriptionEn": "Ask clarifying questions until requirements and structural changes are clear",
|
|
38
38
|
"category": "analysis",
|
|
39
39
|
"args": [
|
|
40
40
|
{ "name": "docsPath", "type": "string", "required": false, "description": "Path to requirements documents" }
|
|
@@ -47,12 +47,12 @@
|
|
|
47
47
|
"name": "prepare",
|
|
48
48
|
"aliases": [],
|
|
49
49
|
"deprecatedAliases": [],
|
|
50
|
-
"description": "research
|
|
51
|
-
"descriptionEn": "Create research
|
|
50
|
+
"description": "Create research, spec, and phase plan artifacts from requirements",
|
|
51
|
+
"descriptionEn": "Create research, spec, and phase plan artifacts from requirements",
|
|
52
52
|
"category": "planning",
|
|
53
53
|
"args": [
|
|
54
54
|
{ "name": "docsPath", "type": "string", "required": false, "description": "Path to requirements documents" },
|
|
55
|
-
{ "name": "planName", "type": "string", "required": false, "description": "Plan name
|
|
55
|
+
{ "name": "planName", "type": "string", "required": false, "description": "Plan name in kebab-case" },
|
|
56
56
|
{ "name": "splitPlans", "type": "boolean", "default": true, "description": "Auto-split oversized plans into multiple shard plan files" },
|
|
57
57
|
{ "name": "splitMaxPhases", "type": "number", "default": 3, "min": 2, "max": 8, "description": "Max phases per shard when splitPlans is enabled" },
|
|
58
58
|
{ "name": "splitMaxHours", "type": "number", "default": 10, "min": 4, "max": 40, "description": "Max estimated hours per shard when splitPlans is enabled" }
|
|
@@ -65,11 +65,11 @@
|
|
|
65
65
|
"name": "refine-plan",
|
|
66
66
|
"aliases": [],
|
|
67
67
|
"deprecatedAliases": [],
|
|
68
|
-
"description": "Apply structured plan-note directives to active plan",
|
|
69
|
-
"descriptionEn": "Apply structured plan-note directives to active plan",
|
|
68
|
+
"description": "Apply structured plan-note directives to the active plan",
|
|
69
|
+
"descriptionEn": "Apply structured plan-note directives to the active plan",
|
|
70
70
|
"category": "planning",
|
|
71
71
|
"args": [
|
|
72
|
-
{ "name": "notesPath", "type": "string", "required": false, "description": "Path to structured plan notes
|
|
72
|
+
{ "name": "notesPath", "type": "string", "required": false, "description": "Path to structured plan notes" },
|
|
73
73
|
{ "name": "applyNotes", "type": "boolean", "default": true, "description": "Auto-apply plan notes during approve" }
|
|
74
74
|
],
|
|
75
75
|
"mdFile": "weave-refine-plan.md",
|
|
@@ -80,11 +80,11 @@
|
|
|
80
80
|
"name": "approve",
|
|
81
81
|
"aliases": [],
|
|
82
82
|
"deprecatedAliases": [],
|
|
83
|
-
"description": "
|
|
83
|
+
"description": "Approve the plan, or finalize a crafted phase when phaseId is provided",
|
|
84
84
|
"descriptionEn": "Approve the plan, or finalize a crafted phase when phaseId is provided",
|
|
85
85
|
"category": "planning",
|
|
86
86
|
"args": [
|
|
87
|
-
{ "name": "phaseId", "type": "string", "required": false, "description": "Phase ID to finalize
|
|
87
|
+
{ "name": "phaseId", "type": "string", "required": false, "description": "Phase ID to finalize" },
|
|
88
88
|
{ "name": "planReview", "type": "string", "required": false, "description": "Plan review summary text" },
|
|
89
89
|
{ "name": "applyNotes", "type": "boolean", "default": true, "description": "Auto-apply plan notes during approve" }
|
|
90
90
|
],
|
|
@@ -96,12 +96,12 @@
|
|
|
96
96
|
"name": "craft",
|
|
97
97
|
"aliases": [],
|
|
98
98
|
"deprecatedAliases": [],
|
|
99
|
-
"description": "
|
|
100
|
-
"descriptionEn": "Prepare execution context for a phase
|
|
99
|
+
"description": "Prepare execution context for a phase",
|
|
100
|
+
"descriptionEn": "Prepare execution context for a phase",
|
|
101
101
|
"category": "execution",
|
|
102
102
|
"args": [
|
|
103
|
-
{ "name": "phaseId", "type": "string", "required": false, "description": "Phase ID
|
|
104
|
-
{ "name": "projectType", "type": "string", "required": false, "description": "Project type hint
|
|
103
|
+
{ "name": "phaseId", "type": "string", "required": false, "description": "Phase ID, auto-selected if omitted" },
|
|
104
|
+
{ "name": "projectType", "type": "string", "required": false, "description": "Project type hint" }
|
|
105
105
|
],
|
|
106
106
|
"mdFile": "weave-craft.md",
|
|
107
107
|
"handler": "handleCraft",
|
|
@@ -111,14 +111,14 @@
|
|
|
111
111
|
"name": "build",
|
|
112
112
|
"aliases": [],
|
|
113
113
|
"deprecatedAliases": [],
|
|
114
|
-
"description": "
|
|
115
|
-
"descriptionEn": "
|
|
114
|
+
"description": "Run, resume, stop, list, or inspect autonomous build loops",
|
|
115
|
+
"descriptionEn": "Run, resume, stop, list, or inspect autonomous build loops",
|
|
116
116
|
"category": "execution",
|
|
117
117
|
"args": [
|
|
118
118
|
{ "name": "action", "type": "enum", "values": ["run", "status", "stop", "list", "resume", "sync"], "default": "run", "description": "Build sub-action" },
|
|
119
119
|
{ "name": "phaseIds", "type": "string", "required": false, "description": "Comma-separated phase IDs for run action" },
|
|
120
120
|
{ "name": "buildId", "type": "string", "required": false, "description": "Build ID for status/stop/resume/sync actions" },
|
|
121
|
-
{ "name": "maxRetries", "type": "number", "default": 3, "min": 1, "max": 10, "description": "Maximum retries per task
|
|
121
|
+
{ "name": "maxRetries", "type": "number", "default": 3, "min": 1, "max": 10, "description": "Maximum retries per task" },
|
|
122
122
|
{ "name": "maxIterations", "type": "number", "default": 1, "min": 1, "max": 20, "description": "Maximum loop iterations before blocking" },
|
|
123
123
|
{ "name": "maxNoProgress", "type": "number", "default": 1, "min": 0, "max": 10, "description": "Maximum repeated no-progress failures before blocking" }
|
|
124
124
|
],
|
|
@@ -136,8 +136,8 @@
|
|
|
136
136
|
"name": "status",
|
|
137
137
|
"aliases": [],
|
|
138
138
|
"deprecatedAliases": [],
|
|
139
|
-
"description": "
|
|
140
|
-
"descriptionEn": "View
|
|
139
|
+
"description": "View plans, active phase, and progress",
|
|
140
|
+
"descriptionEn": "View plans, active phase, and progress",
|
|
141
141
|
"category": "management",
|
|
142
142
|
"args": [],
|
|
143
143
|
"mdFile": "weave-status.md",
|
|
@@ -148,8 +148,8 @@
|
|
|
148
148
|
"name": "worktree",
|
|
149
149
|
"aliases": [],
|
|
150
150
|
"deprecatedAliases": [],
|
|
151
|
-
"description": "git
|
|
152
|
-
"descriptionEn": "Manage git worktrees for parallel work",
|
|
151
|
+
"description": "Manage git worktrees for parallel phase or feature work",
|
|
152
|
+
"descriptionEn": "Manage git worktrees for parallel phase or feature work",
|
|
153
153
|
"category": "management",
|
|
154
154
|
"args": [
|
|
155
155
|
{ "name": "worktreeAction", "type": "enum", "values": ["create", "list", "open", "remove", "merge"], "required": false, "description": "Worktree action" },
|
|
@@ -165,8 +165,8 @@
|
|
|
165
165
|
"name": "verify",
|
|
166
166
|
"aliases": [],
|
|
167
167
|
"deprecatedAliases": [],
|
|
168
|
-
"description": "
|
|
169
|
-
"descriptionEn": "Run build
|
|
168
|
+
"description": "Run build and test verification for the current worktree",
|
|
169
|
+
"descriptionEn": "Run build and test verification for the current worktree",
|
|
170
170
|
"category": "management",
|
|
171
171
|
"args": [
|
|
172
172
|
{ "name": "verifyMode", "type": "enum", "values": ["quick", "full"], "default": "full", "description": "Verification mode" },
|
|
@@ -180,7 +180,7 @@
|
|
|
180
180
|
"name": "archive",
|
|
181
181
|
"aliases": [],
|
|
182
182
|
"deprecatedAliases": [],
|
|
183
|
-
"description": "
|
|
183
|
+
"description": "Archive the verified active change artifact",
|
|
184
184
|
"descriptionEn": "Archive the verified active change artifact",
|
|
185
185
|
"category": "management",
|
|
186
186
|
"args": [],
|
|
@@ -192,13 +192,13 @@
|
|
|
192
192
|
"name": "troubleshoot",
|
|
193
193
|
"aliases": [],
|
|
194
194
|
"deprecatedAliases": [],
|
|
195
|
-
"description": "
|
|
195
|
+
"description": "Search global knowledge for solutions or record a new one",
|
|
196
196
|
"descriptionEn": "Search global knowledge for solutions or record a new one",
|
|
197
197
|
"category": "knowledge",
|
|
198
198
|
"args": [
|
|
199
199
|
{ "name": "error", "type": "string", "required": false, "description": "Error message to search solutions for" },
|
|
200
200
|
{ "name": "record", "type": "boolean", "default": false, "description": "Record a new solution instead of searching" },
|
|
201
|
-
{ "name": "solution", "type": "string", "required": false, "description": "Solution to record
|
|
201
|
+
{ "name": "solution", "type": "string", "required": false, "description": "Solution to record when record=true" },
|
|
202
202
|
{ "name": "context", "type": "string", "required": false, "description": "Context for the troubleshooting entry" }
|
|
203
203
|
],
|
|
204
204
|
"mdFile": "weave-troubleshoot.md",
|
|
@@ -212,7 +212,7 @@
|
|
|
212
212
|
"name": "repair",
|
|
213
213
|
"aliases": [],
|
|
214
214
|
"deprecatedAliases": [],
|
|
215
|
-
"description": "
|
|
215
|
+
"description": "Scan and auto-repair corrupted plan YAML files",
|
|
216
216
|
"descriptionEn": "Scan and auto-repair corrupted plan YAML files",
|
|
217
217
|
"category": "knowledge",
|
|
218
218
|
"args": [],
|
|
@@ -224,11 +224,11 @@
|
|
|
224
224
|
"name": "agents",
|
|
225
225
|
"aliases": [],
|
|
226
226
|
"deprecatedAliases": [],
|
|
227
|
-
"description": "
|
|
228
|
-
"descriptionEn": "Sync
|
|
227
|
+
"description": "Sync generated agent files and initialize runtime configuration",
|
|
228
|
+
"descriptionEn": "Sync generated agent files and initialize runtime configuration",
|
|
229
229
|
"category": "configuration",
|
|
230
230
|
"args": [
|
|
231
|
-
{ "name": "sync", "type": "boolean", "default": false, "description": "Force regenerate agent
|
|
231
|
+
{ "name": "sync", "type": "boolean", "default": false, "description": "Force regenerate agent markdown files from config pool" },
|
|
232
232
|
{ "name": "init", "type": "boolean", "default": false, "description": "Create default maskweaver.config.json with pool template" }
|
|
233
233
|
],
|
|
234
234
|
"mdFile": "weave-agents.md",
|
|
@@ -242,7 +242,7 @@
|
|
|
242
242
|
"name": "help",
|
|
243
243
|
"aliases": [],
|
|
244
244
|
"deprecatedAliases": [],
|
|
245
|
-
"description": "
|
|
245
|
+
"description": "Show weave workflow help",
|
|
246
246
|
"descriptionEn": "Show weave workflow help",
|
|
247
247
|
"category": "meta",
|
|
248
248
|
"args": [],
|
|
@@ -1,62 +1,22 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Sync generated agent files and initialize runtime configuration
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /weave-agents
|
|
5
|
+
# /weave-agents
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Manage the agent files that Maskweaver exposes to opencode.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Use the `weave` tool:
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
| `init` | 기본 설정 파일(maskweaver.config.json) 생성 | `weave init-config` |
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## 사용법
|
|
19
|
-
|
|
20
|
-
```bash
|
|
21
|
-
# 에이전트 파일 동기화
|
|
22
|
-
/weave-agents --sync
|
|
23
|
-
|
|
24
|
-
# 기본 설정 파일 생성
|
|
25
|
-
/weave-agents --init
|
|
26
|
-
|
|
27
|
-
# 동시 실행
|
|
28
|
-
/weave-agents --sync --init
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
---
|
|
32
|
-
|
|
33
|
-
## 입력
|
|
34
|
-
|
|
35
|
-
```yaml
|
|
36
|
-
sync: true # (선택) 에이전트 파일 강제 재생성
|
|
37
|
-
init: true # (선택) 기본 설정 파일 생성 (기존 파일 덮어쓰지 않음)
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
---
|
|
41
|
-
|
|
42
|
-
## 출력 예시
|
|
43
|
-
|
|
44
|
-
### 동기화
|
|
45
|
-
|
|
46
|
-
```markdown
|
|
47
|
-
## 🔄 Agent Sync
|
|
48
|
-
|
|
49
|
-
✅ Updated: `.opencode/agents/dummy-human-1.md`
|
|
50
|
-
✅ Updated: `.opencode/agents/dummy-human-2.md`
|
|
51
|
-
|
|
52
|
-
> ⚠️ **Important:** You may need to restart OpenCode for the updated agent files to take effect.
|
|
11
|
+
```txt
|
|
12
|
+
weave command=agents sync=true
|
|
13
|
+
weave command=agents init=true
|
|
53
14
|
```
|
|
54
15
|
|
|
55
|
-
|
|
16
|
+
## Modes
|
|
56
17
|
|
|
57
|
-
|
|
58
|
-
|
|
18
|
+
- `sync=true`: regenerate `.opencode/agents/*.md` from the configured dummy-human pool.
|
|
19
|
+
- `init=true`: create the default runtime and plugin configuration files when they do not exist.
|
|
20
|
+
- `sync=true init=true`: initialize config and refresh generated agent files in one pass.
|
|
59
21
|
|
|
60
|
-
|
|
61
|
-
✅ Created plugin config: .opencode/maskweaver.json
|
|
62
|
-
```
|
|
22
|
+
Prefer this command when agent markdown files are missing, stale, or out of sync with `maskweaver.config.json`.
|
|
@@ -1,61 +1,22 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Approve the plan or finalize a crafted phase
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /weave-approve
|
|
5
|
+
# /weave-approve
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Pass the approval gate before implementation, or finalize a phase after craft and verify have completed.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Use the `weave` tool:
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
## 사용법
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
# Plan 승인 (가장 일반적)
|
|
19
|
-
/weave-approve
|
|
20
|
-
|
|
21
|
-
# Craft 완료된 Phase 최종 확정
|
|
22
|
-
/weave-approve P1
|
|
11
|
+
```txt
|
|
12
|
+
weave command=approve
|
|
13
|
+
weave command=approve phaseId="P1"
|
|
23
14
|
```
|
|
24
15
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
## 입력
|
|
28
|
-
|
|
29
|
-
```yaml
|
|
30
|
-
phaseId: "P1" # (선택) 최종 확정할 Phase ID. 미지정 시 Plan 승인
|
|
31
|
-
planReview: "..." # (선택) Plan 검토 요약
|
|
32
|
-
applyNotes: true # (선택) plan-notes 자동 반영 여부 (기본: true)
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
---
|
|
16
|
+
## Behavior
|
|
36
17
|
|
|
37
|
-
|
|
18
|
+
- Without `phaseId`, approve the active plan so implementation can begin.
|
|
19
|
+
- With `phaseId`, finalize the crafted phase after verification.
|
|
20
|
+
- `applyNotes=true` applies structured notes before approval when plan notes are present.
|
|
38
21
|
|
|
39
|
-
|
|
40
|
-
1. 활성 Plan 로드
|
|
41
|
-
2. phaseId 미지정 → Plan 승인
|
|
42
|
-
└─ applyNotes=true → plan-notes 자동 반영 후 승인
|
|
43
|
-
3. phaseId 지정 → Phase 최종 확정 (finalize)
|
|
44
|
-
└─ verify → 통과 시 완료 처리
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
## 출력 예시
|
|
50
|
-
|
|
51
|
-
### Plan 승인
|
|
52
|
-
|
|
53
|
-
```markdown
|
|
54
|
-
## ✅ Plan Approved
|
|
55
|
-
|
|
56
|
-
- Plan: `.opencode/weave/plans/emotion-diary.yaml`
|
|
57
|
-
- Approved at: 2025-04-28T10:30:00.000Z
|
|
58
|
-
- Review note: Approved without additional notes.
|
|
59
|
-
|
|
60
|
-
다음 단계: `weave command=craft phaseId="P1"`
|
|
61
|
-
```
|
|
22
|
+
Do not treat approval as a substitute for verification. Use `/weave-verify` or `/build` for evidence before finalizing work.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Archive the verified active change artifact
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /weave-archive
|
|
6
|
+
|
|
7
|
+
Archive the active change after implementation has been verified and the phase or plan no longer needs to stay active.
|
|
8
|
+
|
|
9
|
+
Use the `weave` tool:
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
weave command=archive
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## When To Use
|
|
16
|
+
|
|
17
|
+
- The active change has passed build/test verification.
|
|
18
|
+
- The user has accepted the implementation result.
|
|
19
|
+
- The plan should be preserved for history but removed from the active workflow.
|
|
20
|
+
|
|
21
|
+
Do not archive unverified work. Run `/weave-verify` or `/build` first and keep the verification result in the change record.
|
|
@@ -1,99 +1,30 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Run, resume, stop, list, or inspect autonomous build loops
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /weave-build
|
|
5
|
+
# /weave-build
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Run the Maskweaver autonomous build loop for approved phases, or manage an existing build loop.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Use the `weave` tool:
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
---
|
|
21
|
-
|
|
22
|
-
## 사용법
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
# 자율 빌드 시작 (기본)
|
|
26
|
-
/weave-build
|
|
27
|
-
/weave-build P1,P2
|
|
28
|
-
|
|
29
|
-
# 빌드 상태 확인
|
|
30
|
-
/weave-build --status build-20250428-a1b2
|
|
31
|
-
|
|
32
|
-
# 빌드 중단
|
|
33
|
-
/weave-build --stop build-20250428-a1b2
|
|
34
|
-
|
|
35
|
-
# 빌드 목록
|
|
36
|
-
/weave-build --list
|
|
37
|
-
|
|
38
|
-
# 중단 빌드 재개
|
|
39
|
-
/weave-build --resume build-20250428-a1b2
|
|
40
|
-
|
|
41
|
-
# 위임 결과 동기화
|
|
42
|
-
/weave-build --sync build-20250428-a1b2
|
|
11
|
+
```txt
|
|
12
|
+
weave command=build
|
|
13
|
+
weave command=build action=run phaseIds="P1,P2"
|
|
14
|
+
weave command=build action=status buildId="build-20250428-a1b2"
|
|
15
|
+
weave command=build action=stop buildId="build-20250428-a1b2"
|
|
16
|
+
weave command=build action=list
|
|
17
|
+
weave command=build action=resume buildId="build-20250428-a1b2"
|
|
18
|
+
weave command=build action=sync buildId="build-20250428-a1b2"
|
|
43
19
|
```
|
|
44
20
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
## 입력
|
|
48
|
-
|
|
49
|
-
```yaml
|
|
50
|
-
action: run | status | stop | list | resume | sync # (선택) 서브 액션. 기본값: run
|
|
51
|
-
phaseIds: "P1,P2" # (선택, action=run) 쉼표로 구분된 Phase ID
|
|
52
|
-
buildId: "build-xxx" # (선택, action=status/stop/resume/sync) 대상 빌드 ID
|
|
53
|
-
maxRetries: 3 # (선택, action=run) 태스크당 최대 재시도
|
|
54
|
-
maxIterations: 1 # (선택) 최대 반복 횟수
|
|
55
|
-
maxNoProgress: 1 # (선택) 무진행 허용 횟수
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
---
|
|
59
|
-
|
|
60
|
-
## 출력 예시
|
|
61
|
-
|
|
62
|
-
### 성공 (run)
|
|
63
|
-
|
|
64
|
-
```markdown
|
|
65
|
-
## ✅ Build Complete
|
|
66
|
-
|
|
67
|
-
**Build ID**: `build-20250428-a1b2`
|
|
68
|
-
**Plan**: `emotion-diary`
|
|
69
|
-
**Phases**: P1, P2
|
|
70
|
-
|
|
71
|
-
| Phase | 상태 | 소요 시간 |
|
|
72
|
-
|-------|------|----------|
|
|
73
|
-
| P1 | ✅ 완료 | 12분 |
|
|
74
|
-
| P2 | ✅ 완료 | 8분 |
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
### 일부 실패 (blocked)
|
|
78
|
-
|
|
79
|
-
```markdown
|
|
80
|
-
## ⚠️ Build Blocked
|
|
81
|
-
|
|
82
|
-
**Build ID**: `build-20250428-c3d4`
|
|
83
|
-
**Plan**: `emotion-diary`
|
|
84
|
-
|
|
85
|
-
| Phase | 상태 | 실패 원인 |
|
|
86
|
-
|-------|------|----------|
|
|
87
|
-
| P1 | ✅ 완료 | - |
|
|
88
|
-
| P2 | 🚫 blocked | 타입 검증 실패 (3회 재시도 소진) |
|
|
89
|
-
|
|
90
|
-
**다음 동작**: `weave build action=resume buildId="build-20250428-c3d4"`
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
---
|
|
21
|
+
## Actions
|
|
94
22
|
|
|
95
|
-
|
|
23
|
+
- `run`: execute selected phases, or the next approved work when phase IDs are omitted.
|
|
24
|
+
- `status`: inspect one build loop.
|
|
25
|
+
- `stop`: request a running loop to stop.
|
|
26
|
+
- `list`: show known build loops.
|
|
27
|
+
- `resume`: continue a blocked or stopped build.
|
|
28
|
+
- `sync`: import squad/runtime results into the build record.
|
|
96
29
|
|
|
97
|
-
|
|
98
|
-
- `/weave-verify` — 현재 워크트리 검증
|
|
99
|
-
- `/weave-status` — 전체 진행 상황
|
|
30
|
+
The short `/build` command is also installed for opencode users who expect build to appear as a direct command.
|
|
@@ -1,43 +1,22 @@
|
|
|
1
|
-
---
|
|
2
|
-
description:
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /weave-craft
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
- `$ARGUMENTS` = 선택적 Phase ID (`P1`, `P2` 등)
|
|
24
|
-
|
|
25
|
-
예시:
|
|
26
|
-
|
|
27
|
-
```txt
|
|
28
|
-
/weave-craft
|
|
29
|
-
/weave-craft P1
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## 내부 호출
|
|
33
|
-
|
|
34
|
-
```txt
|
|
35
|
-
weave command=craft phaseId="$ARGUMENTS"
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
## 권장 흐름
|
|
39
|
-
|
|
40
|
-
1. `weave command=craft`로 phase 실행 컨텍스트 준비
|
|
41
|
-
2. 코드 구현/위임 수행
|
|
42
|
-
3. `weave command=verify`로 검증
|
|
43
|
-
4. `weave command=approve-plan`으로 phase 확정
|
|
1
|
+
---
|
|
2
|
+
description: Prepare execution context for a phase
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /weave-craft
|
|
6
|
+
|
|
7
|
+
Prepare one approved phase for implementation.
|
|
8
|
+
|
|
9
|
+
Use the `weave` tool:
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
weave command=craft
|
|
13
|
+
weave command=craft phaseId="P1"
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Behavior
|
|
17
|
+
|
|
18
|
+
- Selects the next runnable phase when `phaseId` is omitted.
|
|
19
|
+
- Loads plan, spec, masks, and execution context for the chosen phase.
|
|
20
|
+
- Gives the implementer the bounded task context needed to start work.
|
|
21
|
+
|
|
22
|
+
After implementation, run `/weave-verify` or `/build` before using `/weave-approve` to finalize the phase.
|