speccrew 0.1.10 → 0.1.12
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/.speccrew/agents/speccrew-system-designer.md +12 -10
- package/.speccrew/agents/speccrew-system-developer.md +70 -39
- package/.speccrew/agents/speccrew-task-worker.md +1 -1
- package/.speccrew/agents/speccrew-test-manager.md +7 -9
- package/.speccrew/skills/speccrew-dev-backend/SKILL.md +3 -1
- package/.speccrew/skills/speccrew-dev-desktop/SKILL.md +7 -6
- package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +5 -3
- package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +6 -5
- package/package.json +1 -1
|
@@ -141,7 +141,9 @@ When there is only one Feature Spec and one platform, call skill directly with p
|
|
|
141
141
|
|
|
142
142
|
### 5.3 Parallel Execution (Feature × Platform)
|
|
143
143
|
|
|
144
|
-
|
|
144
|
+
> **IMPORTANT**: Use the **Skill tool** (not the Agent tool) to invoke each design skill.
|
|
145
|
+
|
|
146
|
+
When multiple Feature Specs and/or multiple platforms exist, create a matrix of **Feature × Platform** and use the **Skill tool** to invoke per-platform design skills in parallel:
|
|
145
147
|
|
|
146
148
|
**Worker Matrix:**
|
|
147
149
|
|
|
@@ -160,16 +162,16 @@ Each worker receives:
|
|
|
160
162
|
- `framework_decisions`: Framework decisions from Phase 3
|
|
161
163
|
- `output_base_path`: Path to `03.system-design/` directory
|
|
162
164
|
|
|
163
|
-
**Parallel execution example** (2 features × 3 platforms = 6
|
|
164
|
-
-
|
|
165
|
-
-
|
|
166
|
-
-
|
|
167
|
-
-
|
|
168
|
-
-
|
|
169
|
-
-
|
|
165
|
+
**Parallel execution example** (2 features × 3 platforms = 6 skill invocations):
|
|
166
|
+
- Skill 1: speccrew-sd-frontend for Feature A on web-vue → 03.system-design/web-vue/
|
|
167
|
+
- Skill 2: speccrew-sd-backend for Feature A on backend-spring → 03.system-design/backend-spring/
|
|
168
|
+
- Skill 3: speccrew-sd-mobile for Feature A on mobile-uniapp → 03.system-design/mobile-uniapp/
|
|
169
|
+
- Skill 4: speccrew-sd-frontend for Feature B on web-vue → 03.system-design/web-vue/
|
|
170
|
+
- Skill 5: speccrew-sd-backend for Feature B on backend-spring → 03.system-design/backend-spring/
|
|
171
|
+
- Skill 6: speccrew-sd-mobile for Feature B on mobile-uniapp → 03.system-design/mobile-uniapp/
|
|
170
172
|
|
|
171
|
-
All
|
|
172
|
-
Wait for all
|
|
173
|
+
All skills execute simultaneously to maximize efficiency.
|
|
174
|
+
Wait for all skills to complete before proceeding to Phase 6.
|
|
173
175
|
|
|
174
176
|
## Phase 6: Joint Confirmation
|
|
175
177
|
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
**Tools**: Bash, Edit, Write, Glob, Grep, Read, WebFetch, WebSearch
|
|
6
|
-
|
|
1
|
+
---
|
|
2
|
+
name: speccrew-system-developer
|
|
3
|
+
description: SpecCrew System Developer. Reads system design blueprints and coordinates cross-platform development task dispatch. Loads techs knowledge, verifies environment readiness, dispatches per-platform dev skills, performs integration checks, and delivers development completion reports. Supports web, mobile, desktop, and backend platforms.
|
|
4
|
+
tools: Read, Write, Glob, Grep, Bash
|
|
7
5
|
---
|
|
8
6
|
|
|
9
7
|
# Role Positioning
|
|
@@ -97,50 +95,83 @@ If any pre-check fails:
|
|
|
97
95
|
3. Wait for user to resolve before proceeding
|
|
98
96
|
4. Re-run pre-check after user confirms resolution
|
|
99
97
|
|
|
100
|
-
## Step 4: Dispatch Per-
|
|
98
|
+
## Step 4: Dispatch Per-Module Dev Skills
|
|
99
|
+
|
|
100
|
+
> **IMPORTANT**: Use the **Skill tool** (not the Agent tool) to invoke each dev skill.
|
|
101
101
|
|
|
102
102
|
### 4.1 Determine Skill for Each Platform
|
|
103
103
|
|
|
104
104
|
Platform type mapping:
|
|
105
105
|
|
|
106
106
|
| Platform prefix | Skill to invoke |
|
|
107
|
-
|
|
107
|
+
|-----------------|------------------|
|
|
108
108
|
| `web-*` | `speccrew-dev-frontend` |
|
|
109
109
|
| `backend-*` | `speccrew-dev-backend` |
|
|
110
110
|
| `mobile-*` | `speccrew-dev-mobile` |
|
|
111
111
|
| `desktop-*` | `speccrew-dev-desktop` |
|
|
112
112
|
|
|
113
|
-
### 4.2
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
113
|
+
### 4.2 Build Module Task List
|
|
114
|
+
|
|
115
|
+
From Step 1.3, flatten all module design documents into a unified task list:
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
task_list = []
|
|
119
|
+
for each platform_id:
|
|
120
|
+
read INDEX.md → get module design file list
|
|
121
|
+
for each module_design_doc:
|
|
122
|
+
task_list.append({
|
|
123
|
+
platform_id,
|
|
124
|
+
skill_name: determined by platform prefix (see 4.1),
|
|
125
|
+
module_design_path: 03.system-design/{platform_id}/{module}-design.md,
|
|
126
|
+
techs_knowledge_paths: relevant techs knowledge for this platform,
|
|
127
|
+
api_contract_path: API Contract path,
|
|
128
|
+
iteration_path: current iteration directory
|
|
129
|
+
})
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**Example** (3 platforms × ~11 modules each = ~33 tasks):
|
|
133
|
+
- Task 1: `speccrew-dev-backend` for `backend-spring/crm-design.md`
|
|
134
|
+
- Task 2: `speccrew-dev-backend` for `backend-spring/member-design.md`
|
|
135
|
+
- ...
|
|
136
|
+
- Task 12: `speccrew-dev-frontend` for `web-vue/crm-design.md`
|
|
137
|
+
- ...
|
|
138
|
+
- Task 23: `speccrew-dev-mobile` for `mobile-uniapp/crm-design.md`
|
|
139
|
+
- ...
|
|
140
|
+
|
|
141
|
+
### 4.3 Parallel Execution with Concurrency Limit
|
|
142
|
+
|
|
143
|
+
**Max concurrent skill invocations: 10**
|
|
144
|
+
|
|
145
|
+
Process `task_list` in batches:
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
MAX_CONCURRENT = 10
|
|
149
|
+
pending = [...task_list]
|
|
150
|
+
completed = []
|
|
151
|
+
|
|
152
|
+
while pending is not empty:
|
|
153
|
+
batch = pending.take(min(MAX_CONCURRENT, pending.length))
|
|
154
|
+
for each task in batch:
|
|
155
|
+
invoke Skill tool with:
|
|
156
|
+
- skill_name: task.skill_name
|
|
157
|
+
- context:
|
|
158
|
+
- platform_id: task.platform_id
|
|
159
|
+
- iteration_path: task.iteration_path
|
|
160
|
+
- design_doc_path: task.module_design_path (single module design doc)
|
|
161
|
+
- api_contract_path: task.api_contract_path
|
|
162
|
+
- techs_knowledge_paths: task.techs_knowledge_paths
|
|
163
|
+
wait for all batch skills to complete
|
|
164
|
+
move completed tasks to completed[]
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
**Dispatch rules:**
|
|
168
|
+
- Each skill invocation handles **one module** on **one platform** (not all modules)
|
|
169
|
+
- Pass `design_doc_path` (singular) pointing to ONE module design document
|
|
170
|
+
- Up to 10 skills execute simultaneously per batch
|
|
171
|
+
- Wait for current batch to complete before starting next batch
|
|
172
|
+
- Track all dispatched skills: completed / failed / blocked
|
|
173
|
+
- If a skill fails, log the failure and continue with remaining tasks
|
|
174
|
+
- Wait for all batches to complete before proceeding to Step 5 (Integration Check)
|
|
144
175
|
|
|
145
176
|
## Step 5: Integration Check
|
|
146
177
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: speccrew-task-worker
|
|
3
3
|
description: Generic task execution Worker. Invoked in parallel by other Agents with multiple instances, receives context parameters and optional Skill path, executes tasks according to Skill definition if provided, or directly processes the task based on context. Specialized for batch document read/write operations, splitting large tasks into small, context-isolated subtasks for parallel execution.
|
|
4
|
-
tools: Read, Grep, Glob, Write, Bash, Edit
|
|
4
|
+
tools: Read, Grep, Glob, Write, Bash, Edit, WebFetch, WebSearch
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Role Definition
|
|
@@ -93,7 +93,7 @@ Design test cases based on loaded knowledge:
|
|
|
93
93
|
|
|
94
94
|
After reading `DESIGN-OVERVIEW.md`:
|
|
95
95
|
- **Single Platform**: Invoke Skill directly
|
|
96
|
-
- **Multiple Platforms**:
|
|
96
|
+
- **Multiple Platforms**: Use **Skill tool** to invoke per-platform skills in parallel
|
|
97
97
|
|
|
98
98
|
### 3.2 Single Platform Execution
|
|
99
99
|
|
|
@@ -107,7 +107,9 @@ Invoke Skill directly with parameters:
|
|
|
107
107
|
|
|
108
108
|
### 3.3 Multi-Platform Parallel Execution
|
|
109
109
|
|
|
110
|
-
|
|
110
|
+
> **IMPORTANT**: Use the **Skill tool** (not the Agent tool) to invoke each test skill.
|
|
111
|
+
|
|
112
|
+
Use the **Skill tool** to invoke `speccrew-test-case-design` for each platform in parallel:
|
|
111
113
|
- Each worker receives:
|
|
112
114
|
- `skill_name`: `speccrew-test-case-design`
|
|
113
115
|
- `context`:
|
|
@@ -163,9 +165,7 @@ Invoke Skill directly:
|
|
|
163
165
|
|
|
164
166
|
### 4.3 Multi-Platform Parallel Execution
|
|
165
167
|
|
|
166
|
-
|
|
167
|
-
- Each worker receives:
|
|
168
|
-
- `skill_name`: `speccrew-test-code-gen`
|
|
168
|
+
Use the **Skill tool** to invoke `speccrew-test-code-gen` for each platform in parallel:
|
|
169
169
|
- `context`:
|
|
170
170
|
- `test_cases_path`: Path to the platform-specific test cases document
|
|
171
171
|
- `system_design_path`: Path to the platform system design document
|
|
@@ -214,9 +214,7 @@ Invoke Skill directly:
|
|
|
214
214
|
|
|
215
215
|
### 5.3 Multi-Platform Parallel Execution
|
|
216
216
|
|
|
217
|
-
|
|
218
|
-
- Each worker receives:
|
|
219
|
-
- `skill_name`: `speccrew-test-execute`
|
|
217
|
+
Use the **Skill tool** to invoke `speccrew-test-execute` for each platform in parallel:
|
|
220
218
|
- `context`:
|
|
221
219
|
- `test_code_path`: Path to the platform test code directory
|
|
222
220
|
- `platform_id`: Platform identifier
|
|
@@ -299,7 +297,7 @@ Provide clear recommendation:
|
|
|
299
297
|
**Must do:**
|
|
300
298
|
- Execute three phases in strict order: test case design → code generation → test execution
|
|
301
299
|
- Each phase must have a Checkpoint with user confirmation before proceeding
|
|
302
|
-
- Multi-platform scenarios must
|
|
300
|
+
- Multi-platform scenarios must use the **Skill tool** to invoke per-platform skills in parallel
|
|
303
301
|
- Test cases must be traceable to Feature Spec requirements
|
|
304
302
|
- Bug reports must reference specific test case IDs
|
|
305
303
|
- Use platform_id from design overview as directory names
|
|
@@ -26,9 +26,11 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
Input: `design_doc_path` — Path to a single module design document (passed by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
|
-
1. **
|
|
33
|
+
1. **Module Design Document**: The `design_doc_path` provided (single module's design)
|
|
32
34
|
2. **Platform INDEX**: `speccrew-workspace/iterations/{number}-{type}-{name}/03.system-design/{platform_id}/INDEX.md`
|
|
33
35
|
3. **API Contract**: `speccrew-workspace/iterations/{number}-{type}-{name}/02.feature-design/[feature-name]-api-contract.md`
|
|
34
36
|
4. **Techs Knowledge** (from agent context):
|
|
@@ -26,12 +26,13 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
**Input**: Single module design document path `design_doc_path` (provided by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
|
-
1. **
|
|
32
|
-
2. **
|
|
33
|
-
3. **
|
|
34
|
-
4. **Techs Knowledge** (paths from agent context):
|
|
33
|
+
1. **Module design document**: `design_doc_path` (single module design document)
|
|
34
|
+
2. **API Contract**: `speccrew-workspace/iterations/{number}-{type}-{name}/02.feature-design/[feature-name]-api-contract.md`
|
|
35
|
+
3. **Techs Knowledge** (paths from agent context):
|
|
35
36
|
- `speccrew-workspace/knowledges/techs/{platform_id}/tech-stack.md`
|
|
36
37
|
- `speccrew-workspace/knowledges/techs/{platform_id}/architecture.md`
|
|
37
38
|
- `speccrew-workspace/knowledges/techs/{platform_id}/conventions-design.md`
|
|
@@ -267,11 +268,11 @@ Task Record: speccrew-workspace/iterations/{number}-{type}-{name}/04.development
|
|
|
267
268
|
|
|
268
269
|
# Checklist
|
|
269
270
|
|
|
270
|
-
- [ ]
|
|
271
|
+
- [ ] Design document loaded before implementation (single module design_doc_path)
|
|
271
272
|
- [ ] Existing code structure analyzed via Glob/Grep
|
|
272
273
|
- [ ] Task record created with complete checklist
|
|
273
274
|
- [ ] Checkpoint A passed: task extraction confirmed with user
|
|
274
|
-
- [ ]
|
|
275
|
+
- [ ] All modules in the design document covered in task list
|
|
275
276
|
- [ ] All IPC channels from design implemented
|
|
276
277
|
- [ ] Context isolation enabled for all windows
|
|
277
278
|
- [ ] Preload scripts expose only necessary APIs
|
|
@@ -26,10 +26,12 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
Input: `design_doc_path` — Path to a single module design document (passed by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
33
|
1. **Platform INDEX**: `speccrew-workspace/iterations/{number}-{type}-{name}/03.system-design/{platform_id}/INDEX.md`
|
|
32
|
-
2. **Module
|
|
34
|
+
2. **Module Design Document**: The `design_doc_path` provided (single module's design)
|
|
33
35
|
3. **API Contract**: `speccrew-workspace/iterations/{number}-{type}-{name}/02.feature-design/*-api-contract.md`
|
|
34
36
|
4. **Task record template**: `speccrew-dev-frontend/templates/TASK-RECORD-TEMPLATE.md`
|
|
35
37
|
|
|
@@ -49,9 +51,9 @@ Read platform-specific techs knowledge:
|
|
|
49
51
|
|
|
50
52
|
From design documents, extract ALL implementation items into a task checklist.
|
|
51
53
|
|
|
52
|
-
### 3.1 Parse Module
|
|
54
|
+
### 3.1 Parse Module Design
|
|
53
55
|
|
|
54
|
-
|
|
56
|
+
From the module design document, identify:
|
|
55
57
|
|
|
56
58
|
| Item Type | Markers | Example |
|
|
57
59
|
|-----------|---------|---------|
|
|
@@ -26,12 +26,13 @@ tools: Bash, Edit, Write, Glob, Grep, Read
|
|
|
26
26
|
|
|
27
27
|
## Step 1: Read Design Documents
|
|
28
28
|
|
|
29
|
+
**Input**: Single module design document path `design_doc_path` (provided by upstream system-developer agent).
|
|
30
|
+
|
|
29
31
|
Read in order:
|
|
30
32
|
|
|
31
|
-
1. **
|
|
32
|
-
2. **
|
|
33
|
-
3. **
|
|
34
|
-
4. **Task record template**: `speccrew-dev-mobile/templates/TASK-RECORD-TEMPLATE.md`
|
|
33
|
+
1. **Module design document**: `design_doc_path` (single module design document)
|
|
34
|
+
2. **API Contract**: `speccrew-workspace/iterations/{iteration}/02.feature-design/{feature-name}-api-contract.md`
|
|
35
|
+
3. **Task record template**: `speccrew-dev-mobile/templates/TASK-RECORD-TEMPLATE.md`
|
|
35
36
|
|
|
36
37
|
## Step 2: Read Techs Knowledge
|
|
37
38
|
|
|
@@ -213,7 +214,7 @@ Ready for QA Agent acceptance testing.
|
|
|
213
214
|
|
|
214
215
|
# Checklist
|
|
215
216
|
|
|
216
|
-
- [ ] Design
|
|
217
|
+
- [ ] Design document loaded (single module design_doc_path)
|
|
217
218
|
- [ ] Techs knowledge loaded (conventions-dev, architecture, tech-stack)
|
|
218
219
|
- [ ] Task record file created
|
|
219
220
|
- [ ] All design tasks extracted to checklist
|