speccrew 0.7.62 → 0.7.64
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-feature-designer.md +5 -5
- package/.speccrew/agents/speccrew-product-manager.md +9 -9
- package/.speccrew/agents/speccrew-system-designer.md +45 -933
- package/.speccrew/agents/speccrew-task-worker.md +15 -15
- package/.speccrew/skills/speccrew-agentflow-manager/SKILL.md +7 -7
- package/.speccrew/skills/speccrew-deploy-build/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-deploy-migrate/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-deploy-smoke-test/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-deploy-startup/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-backend/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-desktop-electron/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-desktop-tauri/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-review-backend/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-review-desktop/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-review-frontend/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-dev-review-mobile/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-fd-api-contract/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-fd-feature-analyze/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-fd-feature-design/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-feature-designer-orchestration/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-get-timestamp/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-api-graph/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-identify-entries/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-init-features/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-graph/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-graph-query/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-graph-write/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-module-summarize/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-system-summarize/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-dispatch/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-generate/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-generate-conventions/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-generate-quality/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-generate-ui-style/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-index/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-init/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-knowledge-detector/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-module-initializer/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-module-matcher/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-phase0-init/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-phase1-knowledge-check/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-phase2-complexity-assess/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-phase5-subprd-dispatch/SKILL.md +8 -8
- package/.speccrew/skills/speccrew-pm-phase6-verify-confirm/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-requirement-analysis/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-requirement-assess/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-requirement-clarify/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-requirement-model/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-requirement-simple/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-pm-sub-prd-generate/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-product-manager-orchestration/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-sd-backend/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-sd-design-overview-generate/SKILL.md +3 -226
- package/.speccrew/skills/speccrew-sd-design-overview-generate/{workflow.agentflow.xml → SKILL.xml} +40 -0
- package/.speccrew/skills/speccrew-sd-desktop/SKILL.md +3 -284
- package/.speccrew/skills/speccrew-sd-desktop/SKILL.xml +545 -0
- package/.speccrew/skills/speccrew-sd-framework-evaluate/SKILL.md +3 -247
- package/.speccrew/skills/speccrew-sd-framework-evaluate/{workflow.agentflow.xml → SKILL.xml} +39 -0
- package/.speccrew/skills/speccrew-sd-frontend/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-sd-mobile/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-system-deployer-orchestration/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-system-designer-orchestration/SKILL.md +4 -4
- package/.speccrew/skills/speccrew-system-developer-orchestration/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-task-worker-execution/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-team-leader-routing/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-test-case-design/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-test-code-gen/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-test-manager-orchestration/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-test-reporter/SKILL.md +2 -2
- package/.speccrew/skills/speccrew-test-runner/SKILL.md +2 -2
- package/package.json +1 -1
- package/.speccrew/skills/speccrew-sd-desktop/workflow.agentflow.xml +0 -288
- /package/.speccrew/skills/speccrew-agentflow-manager/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-deploy-build/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-deploy-migrate/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-deploy-smoke-test/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-deploy-startup/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-backend/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-desktop-electron/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-desktop-tauri/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-frontend/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-mobile/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-review-backend/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-review-desktop/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-review-frontend/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-dev-review-mobile/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-fd-api-contract/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-fd-feature-analyze/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-fd-feature-design/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-feature-designer-orchestration/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-get-timestamp/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-api-graph/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-identify-entries/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-init-features/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-ui-graph/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-graph-query/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-graph-write/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-module-summarize/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-system-summarize/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-dispatch/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-generate/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-generate-conventions/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-generate-quality/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-generate-ui-style/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-index/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-init/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-knowledge-detector/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-module-initializer/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-module-matcher/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-phase0-init/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-phase1-knowledge-check/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-phase2-complexity-assess/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-phase5-subprd-dispatch/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-phase6-verify-confirm/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-requirement-analysis/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-requirement-assess/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-requirement-clarify/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-requirement-model/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-requirement-simple/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-pm-sub-prd-generate/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-product-manager-orchestration/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-sd-backend/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-sd-frontend/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-sd-mobile/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-system-deployer-orchestration/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-system-designer-orchestration/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-system-developer-orchestration/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-task-worker-execution/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-team-leader-routing/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-test-case-design/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-test-code-gen/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-test-manager-orchestration/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-test-reporter/{workflow.agentflow.xml → SKILL.xml} +0 -0
- /package/.speccrew/skills/speccrew-test-runner/{workflow.agentflow.xml → SKILL.xml} +0 -0
package/.speccrew/skills/speccrew-sd-design-overview-generate/{workflow.agentflow.xml → SKILL.xml}
RENAMED
|
@@ -32,6 +32,19 @@
|
|
|
32
32
|
<field name="text">Platform Design Index MUST cover ALL Feature × Platform combinations. No feature or platform may be omitted.</field>
|
|
33
33
|
</block>
|
|
34
34
|
|
|
35
|
+
<block type="rule" id="R5" level="mandatory" desc="Direct-to-File Output">
|
|
36
|
+
<field name="text">All design overview content MUST be written directly to DESIGN-OVERVIEW.md</field>
|
|
37
|
+
</block>
|
|
38
|
+
|
|
39
|
+
<block type="rule" id="R6" level="mandatory" desc="Minimal Conversation Output">
|
|
40
|
+
<field name="text">Only output block execution announcements, error messages, and Task Completion Report</field>
|
|
41
|
+
</block>
|
|
42
|
+
|
|
43
|
+
<block type="rule" id="R7" level="forbidden" desc="No conversation document output">
|
|
44
|
+
<field name="text">NEVER display DESIGN-OVERVIEW content, Feature × Platform matrix tables, or Feature list tables in conversation</field>
|
|
45
|
+
<field name="text">NEVER display technology decision excerpts longer than 2 lines in conversation</field>
|
|
46
|
+
</block>
|
|
47
|
+
|
|
35
48
|
<!-- ============================================================
|
|
36
49
|
Main Processing Sequence
|
|
37
50
|
============================================================ -->
|
|
@@ -146,8 +159,35 @@ Matrix Entries: ${feature_registry.features.length * techs_manifest.platforms.le
|
|
|
146
159
|
--- END REPORT ---</field>
|
|
147
160
|
</block>
|
|
148
161
|
|
|
162
|
+
<block type="checkpoint" id="CP2" name="final_checklist" desc="Design Overview Generation Final Checklist">
|
|
163
|
+
<field name="conditions">
|
|
164
|
+
feature_registry_read: .prd-feature-list.json read and features array extracted,
|
|
165
|
+
techs_manifest_read: techs-manifest.json read and platforms array extracted,
|
|
166
|
+
framework_evaluation_read: framework-evaluation.md read and technology decisions extracted,
|
|
167
|
+
feature_format_detected: feature format detected (new or legacy),
|
|
168
|
+
matrix_complete: Feature × Platform matrix built with all combinations,
|
|
169
|
+
platform_prefix_mapped: platform ID prefix correctly mapped to target skills,
|
|
170
|
+
design_overview_generated: DESIGN-OVERVIEW.md generated with all required sections,
|
|
171
|
+
feature_summary_included: feature summary section included only when feature count > 5,
|
|
172
|
+
output_validated: output validated against checklist,
|
|
173
|
+
task_completion_report_output: task completion report output
|
|
174
|
+
</field>
|
|
175
|
+
</block>
|
|
176
|
+
|
|
149
177
|
</sequence>
|
|
150
178
|
|
|
179
|
+
<!-- ============================================================
|
|
180
|
+
Failure Report Format
|
|
181
|
+
============================================================ -->
|
|
182
|
+
<block type="event" id="E6" action="log" level="error" desc="Task failure report">
|
|
183
|
+
<field name="message">--- TASK COMPLETION REPORT ---
|
|
184
|
+
Task: Design Overview Generation
|
|
185
|
+
Status: FAILED
|
|
186
|
+
Error: {specific error description}
|
|
187
|
+
Failed At: Step {N}
|
|
188
|
+
--- END REPORT ---</field>
|
|
189
|
+
</block>
|
|
190
|
+
|
|
151
191
|
<!-- ============================================================
|
|
152
192
|
Output Results
|
|
153
193
|
============================================================ -->
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
---
|
|
1
|
+
---
|
|
2
2
|
name: speccrew-sd-desktop
|
|
3
3
|
description: Desktop System Design SOP. Guide System Designer Agent to generate platform-specific desktop detailed design documents by filling technology implementation details into the Feature Spec skeleton. Reads techs knowledge to determine actual framework syntax (Electron/Tauri/Qt) and conventions.
|
|
4
4
|
tools: Read, Write, Glob, Grep
|
|
@@ -12,287 +12,6 @@ tools: Read, Write, Glob, Grep
|
|
|
12
12
|
|
|
13
13
|
## AgentFlow Definition
|
|
14
14
|
|
|
15
|
-
<!-- @agentflow:
|
|
16
|
-
|
|
17
|
-
> **REQUIRED**: Before executing this workflow, read the XML workflow specification: `speccrew-workspace/docs/rules/agentflow-spec.md`
|
|
18
|
-
|
|
19
|
-
## Workflow
|
|
20
|
-
|
|
21
|
-
## Absolute Constraints
|
|
22
|
-
|
|
23
|
-
> **These rules apply to ALL steps. Violation = task failure.**
|
|
24
|
-
|
|
25
|
-
1. **FORBIDDEN: `create_file` for documents** — NEVER use `create_file` to write design documents or INDEX. Documents MUST be created by copying the template (Step 4.2a / Step 5.2a) then filling sections with `search_replace` (Step 4.2b / Step 5.2b). `create_file` produces truncated output on large files.
|
|
26
|
-
|
|
27
|
-
2. **FORBIDDEN: Full-file rewrite** — NEVER replace the entire document content in a single operation. Always use targeted `search_replace` on specific sections.
|
|
28
|
-
|
|
29
|
-
3. **MANDATORY: Template-first workflow** — Copy template MUST execute before fill sections. Skipping copy and writing content directly is FORBIDDEN.
|
|
30
|
-
|
|
31
|
-
## Step 1: Read Inputs
|
|
32
|
-
|
|
33
|
-
Read in order:
|
|
34
|
-
|
|
35
|
-
1. **Feature Spec document(s)**: `speccrew-workspace/iterations/{number}-{type}-{name}/02.feature-design/[feature-name]-feature-spec.md`
|
|
36
|
-
2. **API Contract**: `speccrew-workspace/iterations/{number}-{type}-{name}/03.api-contract/[feature-name]-api-contract.md`
|
|
37
|
-
3. **Desktop techs knowledge** (paths from agent context):
|
|
38
|
-
- `speccrew-workspace/knowledges/techs/{platform_id}/tech-stack.md`
|
|
39
|
-
- `speccrew-workspace/knowledges/techs/{platform_id}/architecture.md`
|
|
40
|
-
- `speccrew-workspace/knowledges/techs/{platform_id}/conventions-design.md`
|
|
41
|
-
- `speccrew-workspace/knowledges/techs/{platform_id}/conventions-dev.md`
|
|
42
|
-
4. **Design template**: `speccrew-sd-desktop/templates/SD-DESKTOP-TEMPLATE.md`
|
|
43
|
-
5. **Index template**: `speccrew-sd-desktop/templates/INDEX-TEMPLATE.md`
|
|
44
|
-
|
|
45
|
-
## Step 2: Analyze Existing Code Structure
|
|
46
|
-
|
|
47
|
-
Use Glob/Grep to understand current codebase:
|
|
48
|
-
|
|
49
|
-
| Target | Glob Pattern | Purpose |
|
|
50
|
-
|--------|-------------|---------|
|
|
51
|
-
| Main process | `src/main/**/*.{ts,js}` or `src-tauri/src/**/*.rs` | Understand main process structure |
|
|
52
|
-
| Renderer process | `src/renderer/**/*.{tsx,vue,html}` or `src/**/*.{tsx,vue}` | Understand renderer structure |
|
|
53
|
-
| IPC definitions | `src/main/ipc/**/*` or `src-tauri/src/commands/**/*.rs` | Understand IPC channel patterns |
|
|
54
|
-
| Window management | `src/main/window/**/*` or patterns with `BrowserWindow` | Understand window patterns |
|
|
55
|
-
| Preload scripts | `src/preload/**/*` or `preload.{ts,js}` | Understand preload patterns |
|
|
56
|
-
| Native modules | `src/main/native/**/*` or binding files | Identify native dependencies |
|
|
57
|
-
| State management | `src/renderer/stores/**/*` or `src/stores/**/*` | Understand store pattern |
|
|
58
|
-
| API layer | `src/renderer/apis/**/*` or `src/apis/**/*` | Understand API encapsulation |
|
|
59
|
-
|
|
60
|
-
Document findings for reference in later steps.
|
|
61
|
-
|
|
62
|
-
## Step 3: Extract Functions from Feature Spec
|
|
63
|
-
|
|
64
|
-
Parse Feature Spec to identify all functions (Section 2.N pattern).
|
|
65
|
-
|
|
66
|
-
For each function, extract:
|
|
67
|
-
|
|
68
|
-
| Aspect | Content to Extract |
|
|
69
|
-
|--------|-------------------|
|
|
70
|
-
| UI prototype | ASCII wireframe or description from Feature Spec |
|
|
71
|
-
| Interaction flow | User actions and system responses |
|
|
72
|
-
| Backend API calls | Required API endpoints from API Contract |
|
|
73
|
-
| Local operations | File system, native API, or local DB operations |
|
|
74
|
-
| Data requirements | Fields and structures needed |
|
|
75
|
-
|
|
76
|
-
Mark each function's components/modules as:
|
|
77
|
-
|
|
78
|
-
| Marker | Meaning | Example |
|
|
79
|
-
|--------|---------|---------|
|
|
80
|
-
| `[EXISTING]` | Reuse current component/module | `[EXISTING] UserSelect component` |
|
|
81
|
-
| `[MODIFIED]` | Enhance/change existing | `[MODIFIED] WindowManager - add new window type` |
|
|
82
|
-
| `[NEW]` | Create brand new | `[NEW] FileSyncWorker` |
|
|
83
|
-
|
|
84
|
-
**Checkpoint A: Present function extraction summary to user for confirmation.**
|
|
85
|
-
|
|
86
|
-
## Step 4: Generate Module Design Documents
|
|
87
|
-
|
|
88
|
-
For each function (or logical group of closely related functions = one module):
|
|
89
|
-
|
|
90
|
-
### 4.1 Read Template
|
|
91
|
-
|
|
92
|
-
Read `SD-DESKTOP-TEMPLATE.md` for document structure.
|
|
93
|
-
|
|
94
|
-
### 4.2a Copy Template to Document Path
|
|
95
|
-
|
|
96
|
-
1. **Read the design template**: `templates/SD-DESKTOP-TEMPLATE.md`
|
|
97
|
-
2. **Replace top-level placeholders** with known variables:
|
|
98
|
-
- Module name, feature name, platform ID, etc.
|
|
99
|
-
3. **Create the document file** using `create_file`:
|
|
100
|
-
- Target path: `speccrew-workspace/iterations/{number}-{type}-{name}/03.system-design/{platform_id}/{module}-design.md`
|
|
101
|
-
- Content: Template with top-level placeholders replaced
|
|
102
|
-
4. **Verify**: Document should have complete section structure ready for filling
|
|
103
|
-
|
|
104
|
-
### 4.2b Fill Each Section Using search_replace
|
|
105
|
-
|
|
106
|
-
Fill each section with technology-specific implementation details.
|
|
107
|
-
|
|
108
|
-
> ⚠️ **CRITICAL CONSTRAINTS:**
|
|
109
|
-
> - **FORBIDDEN: `create_file` to rewrite the entire document** — it destroys template structure
|
|
110
|
-
> - **MUST use `search_replace` to fill each section individually**
|
|
111
|
-
> - **All section titles and numbering MUST be preserved**
|
|
112
|
-
> - If a section has no applicable content, keep the section title and replace placeholder with "N/A"
|
|
113
|
-
|
|
114
|
-
| Section | Technology-Specific Content |
|
|
115
|
-
|---------|----------------------------|
|
|
116
|
-
| Process architecture | Main/Renderer split (Electron) or Rust Core/WebView (Tauri) |
|
|
117
|
-
| IPC channels | Actual channel names and payload types |
|
|
118
|
-
| Window design | Window types, sizes, frame options |
|
|
119
|
-
| Native integration | File system APIs, system tray, menus |
|
|
120
|
-
| Local storage | SQLite/LevelDB/electron-store patterns |
|
|
121
|
-
| Security | Context isolation, preload scripts, CSP |
|
|
122
|
-
| Auto-update | electron-updater or tauri-updater patterns |
|
|
123
|
-
| Pseudo-code | MUST use actual framework syntax from techs knowledge |
|
|
124
|
-
|
|
125
|
-
**Key Rules for Pseudo-code**:
|
|
126
|
-
- MUST use actual framework API syntax from techs knowledge
|
|
127
|
-
- NOT generic pseudo-code
|
|
128
|
-
- Include actual import statements
|
|
129
|
-
- Use actual IPC/store/API patterns from conventions
|
|
130
|
-
- For Electron: use `ipcMain.handle`, `ipcRenderer.invoke`, `BrowserWindow`
|
|
131
|
-
- For Tauri: use `#[tauri::command]`, `invoke()`, `Window`
|
|
132
|
-
|
|
133
|
-
### 4.3 Verify Output
|
|
134
|
-
|
|
135
|
-
Verify the completed design document:
|
|
136
|
-
- All sections filled with actual content (no remaining placeholders)
|
|
137
|
-
- Mermaid diagrams render correctly
|
|
138
|
-
- Pseudo-code uses actual framework syntax from techs knowledge
|
|
139
|
-
|
|
140
|
-
## Step 5: Generate Platform INDEX.md
|
|
141
|
-
|
|
142
|
-
After all module designs are complete:
|
|
143
|
-
|
|
144
|
-
### 5.1 Read Template
|
|
145
|
-
|
|
146
|
-
Read `INDEX-TEMPLATE.md` for document structure.
|
|
147
|
-
|
|
148
|
-
### 5.2a Copy Index Template to Document Path
|
|
149
|
-
|
|
150
|
-
1. **Read the index template**: `templates/INDEX-TEMPLATE.md`
|
|
151
|
-
2. **Replace top-level placeholders** (platform name, feature name, etc.)
|
|
152
|
-
3. **Create the document file** using `create_file`:
|
|
153
|
-
- Target path: `speccrew-workspace/iterations/{number}-{type}-{name}/03.system-design/{platform_id}/INDEX.md`
|
|
154
|
-
- Content: Template with top-level placeholders replaced
|
|
155
|
-
|
|
156
|
-
### 5.2b Fill Index Sections Using search_replace
|
|
157
|
-
|
|
158
|
-
> ⚠️ **CRITICAL CONSTRAINTS:**
|
|
159
|
-
> - **FORBIDDEN: `create_file` to rewrite the entire document** — it destroys template structure
|
|
160
|
-
> - **MUST use `search_replace` to fill each section individually**
|
|
161
|
-
> - **All section titles and numbering MUST be preserved**
|
|
162
|
-
|
|
163
|
-
| Section | Content Source |
|
|
164
|
-
|---------|---------------|
|
|
165
|
-
| Tech stack summary | tech-stack.md |
|
|
166
|
-
| Target operating systems | tech-stack.md OS support |
|
|
167
|
-
| Shared design decisions | architecture.md, conventions-design.md |
|
|
168
|
-
| Process architecture strategy | architecture.md process model |
|
|
169
|
-
| IPC patterns | conventions-design.md IPC section |
|
|
170
|
-
| Security model | architecture.md security section |
|
|
171
|
-
| Native dependencies | tech-stack.md dependencies |
|
|
172
|
-
| Packaging & distribution | architecture.md distribution section |
|
|
173
|
-
|
|
174
|
-
### 5.3 Build Module List
|
|
175
|
-
|
|
176
|
-
Create table with links to each module design document.
|
|
177
|
-
|
|
178
|
-
### 5.4 Verify Output
|
|
179
|
-
|
|
180
|
-
Verify the completed INDEX.md:
|
|
181
|
-
- All sections filled with actual content (no remaining placeholders)
|
|
182
|
-
- All module design documents are correctly linked
|
|
183
|
-
- Platform-level summary is complete
|
|
184
|
-
|
|
185
|
-
## Step 6: Present Summary
|
|
186
|
-
|
|
187
|
-
Present to user:
|
|
188
|
-
|
|
189
|
-
```
|
|
190
|
-
Desktop System Design Summary for: {feature-name}
|
|
191
|
-
Platform: {platform_id}
|
|
192
|
-
Framework: {Electron/Tauri/Qt}
|
|
193
|
-
|
|
194
|
-
Module Design Documents: {count}
|
|
195
|
-
├── {module1}-design.md
|
|
196
|
-
├── {module2}-design.md
|
|
197
|
-
└── ...
|
|
198
|
-
|
|
199
|
-
Key Design Decisions:
|
|
200
|
-
- Process Architecture: {approach}
|
|
201
|
-
- IPC Strategy: {approach}
|
|
202
|
-
- State Management: {approach}
|
|
203
|
-
- Security Model: {approach}
|
|
204
|
-
- Auto-Update: {approach}
|
|
205
|
-
|
|
206
|
-
Concerns/Trade-offs:
|
|
207
|
-
- {list any concerns}
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
**Ask user to confirm:**
|
|
211
|
-
1. Are the process architectures appropriate?
|
|
212
|
-
2. Is the IPC communication design correct?
|
|
213
|
-
3. Do the pseudo-code patterns match project conventions?
|
|
214
|
-
4. Are all API calls from API Contract covered?
|
|
215
|
-
5. Is the native integration approach suitable?
|
|
216
|
-
|
|
217
|
-
## Step 7: Task Completion Report
|
|
218
|
-
|
|
219
|
-
After completing all steps, output a structured completion report for the System Designer Agent to parse and update DISPATCH-PROGRESS.json:
|
|
220
|
-
|
|
221
|
-
### On Success
|
|
222
|
-
|
|
223
|
-
```
|
|
224
|
-
## Task Completion Report
|
|
225
|
-
- **Status**: SUCCESS
|
|
226
|
-
- **Task ID**: {task_id from context}
|
|
227
|
-
- **Platform**: {platform_id}
|
|
228
|
-
- **Feature**: {feature_name}
|
|
229
|
-
- **Output Files**:
|
|
230
|
-
- speccrew-workspace/iterations/{iter}/03.system-design/{platform_id}/INDEX.md
|
|
231
|
-
- speccrew-workspace/iterations/{iter}/03.system-design/{platform_id}/{module1}-design.md
|
|
232
|
-
- speccrew-workspace/iterations/{iter}/03.system-design/{platform_id}/{module2}-design.md
|
|
233
|
-
- **Summary**: Desktop system design completed for {feature_name} on {platform_id} with {count} module designs
|
|
234
|
-
```
|
|
235
|
-
|
|
236
|
-
### On Failure
|
|
237
|
-
|
|
238
|
-
```
|
|
239
|
-
## Task Completion Report
|
|
240
|
-
- **Status**: FAILED
|
|
241
|
-
- **Task ID**: {task_id from context}
|
|
242
|
-
- **Platform**: {platform_id}
|
|
243
|
-
- **Feature**: {feature_name}
|
|
244
|
-
- **Output Files**: []
|
|
245
|
-
- **Error**: {description of what went wrong}
|
|
246
|
-
- **Error Category**: DEPENDENCY_MISSING | VALIDATION_ERROR | BLOCKED
|
|
247
|
-
- **Recovery Hint**: {suggestion for how to resolve or retry}
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
**Error Categories:**
|
|
251
|
-
- `DEPENDENCY_MISSING`: Required input file or knowledge document not found
|
|
252
|
-
- `VALIDATION_ERROR`: Input validation failed (e.g., invalid Feature Spec format)
|
|
253
|
-
- `BLOCKED`: Blocked by external dependency or prerequisite not met
|
|
254
|
-
|
|
255
|
-
## OUTPUT EFFICIENCY RULES
|
|
256
|
-
|
|
257
|
-
When executing this skill:
|
|
258
|
-
|
|
259
|
-
1. **Direct-to-File Output**: All design content (architecture diagrams, API mappings, component specifications, data models) MUST be written directly to the output file
|
|
260
|
-
2. **Minimal Conversation Output**: Only output:
|
|
261
|
-
- Block execution announcements (1 line each): `"[Block XX] Designing..."`
|
|
262
|
-
- Error messages requiring attention
|
|
263
|
-
- Task Completion Report (final summary)
|
|
264
|
-
3. **FORBIDDEN in conversation**:
|
|
265
|
-
- ❌ Full document sections or drafts
|
|
266
|
-
- ❌ Mermaid diagrams displayed in chat
|
|
267
|
-
- ❌ API endpoint listings
|
|
268
|
-
- ❌ Data model tables
|
|
269
|
-
- ❌ Architecture descriptions longer than 2 lines
|
|
270
|
-
4. **Rationale**: Workers run in batch mode. Displaying design content in conversation wastes context window and provides no value since content goes to file anyway.
|
|
271
|
-
|
|
272
|
-
# Key Rules
|
|
273
|
-
|
|
274
|
-
| Rule | Description |
|
|
275
|
-
|------|-------------|
|
|
276
|
-
| **Actual Framework Syntax** | All pseudo-code MUST use actual framework/library syntax from techs knowledge, NOT generic code |
|
|
277
|
-
| **API Contract READ-ONLY** | API Contract is reference only - do not modify |
|
|
278
|
-
| **One Module Per Function Group** | Each module design document maps to one or more related Feature Spec functions |
|
|
279
|
-
| **Status Markers Required** | Use [EXISTING], [MODIFIED], [NEW] markers for all components, modules, and IPC handlers |
|
|
280
|
-
| **Follow Techs Conventions** | Naming, directory structure, patterns must follow techs knowledge |
|
|
281
|
-
| **Desktop-Specific Concerns** | Must address process architecture, IPC, native integration, local storage, auto-update |
|
|
282
|
-
|
|
283
|
-
# Checklist
|
|
15
|
+
<!-- @agentflow: SKILL.xml -->
|
|
284
16
|
|
|
285
|
-
|
|
286
|
-
- [ ] Existing code structure analyzed via Glob/Grep
|
|
287
|
-
- [ ] Every Feature Spec function covered in a module design
|
|
288
|
-
- [ ] All API calls from API Contract referenced correctly
|
|
289
|
-
- [ ] Pseudo-code uses actual framework syntax (not generic)
|
|
290
|
-
- [ ] Process architecture follows conventions-design.md
|
|
291
|
-
- [ ] IPC channels follow naming conventions from techs
|
|
292
|
-
- [ ] Window management follows existing patterns
|
|
293
|
-
- [ ] Native integration uses correct APIs
|
|
294
|
-
- [ ] Security design includes context isolation and CSP
|
|
295
|
-
- [ ] Auto-update mechanism specified
|
|
296
|
-
- [ ] INDEX.md generated with complete module list
|
|
297
|
-
- [ ] All files written to correct paths under 03.system-design/{platform_id}/
|
|
298
|
-
- [ ] Checkpoint A passed: function extraction confirmed with user
|
|
17
|
+
> **REQUIRED**: Read and execute the XML workflow above. The XML contains the complete workflow definition including all steps, rules, conditions, and checklist.
|