speccrew 0.6.69 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/.speccrew/agents/speccrew-task-worker.md +1 -1
  2. package/.speccrew/agents/speccrew-team-leader.md +336 -189
  3. package/.speccrew/skills/speccrew-agentflow-manager/SKILL.md +161 -0
  4. package/.speccrew/skills/speccrew-agentflow-manager/workflow.agentflow.xml +347 -0
  5. package/.speccrew/skills/speccrew-deploy-build/SKILL.md +3 -56
  6. package/.speccrew/skills/speccrew-deploy-build/workflow.agentflow.xml +125 -0
  7. package/.speccrew/skills/speccrew-deploy-migrate/SKILL.md +3 -64
  8. package/.speccrew/skills/speccrew-deploy-migrate/workflow.agentflow.xml +135 -0
  9. package/.speccrew/skills/speccrew-deploy-smoke-test/SKILL.md +4 -156
  10. package/.speccrew/skills/speccrew-deploy-smoke-test/workflow.agentflow.xml +178 -0
  11. package/.speccrew/skills/speccrew-deploy-startup/SKILL.md +3 -135
  12. package/.speccrew/skills/speccrew-deploy-startup/workflow.agentflow.xml +223 -0
  13. package/.speccrew/skills/speccrew-dev-backend/SKILL.md +10 -2
  14. package/.speccrew/skills/speccrew-dev-backend/workflow.agentflow.xml +254 -0
  15. package/.speccrew/skills/speccrew-dev-desktop-electron/SKILL.md +10 -2
  16. package/.speccrew/skills/speccrew-dev-desktop-electron/workflow.agentflow.xml +259 -0
  17. package/.speccrew/skills/speccrew-dev-desktop-tauri/SKILL.md +10 -2
  18. package/.speccrew/skills/speccrew-dev-desktop-tauri/workflow.agentflow.xml +245 -0
  19. package/.speccrew/skills/speccrew-dev-frontend/SKILL.md +10 -2
  20. package/.speccrew/skills/speccrew-dev-frontend/workflow.agentflow.xml +262 -0
  21. package/.speccrew/skills/speccrew-dev-mobile/SKILL.md +10 -2
  22. package/.speccrew/skills/speccrew-dev-mobile/workflow.agentflow.xml +244 -0
  23. package/.speccrew/skills/speccrew-dev-review-backend/SKILL.md +10 -2
  24. package/.speccrew/skills/speccrew-dev-review-backend/workflow.agentflow.xml +251 -0
  25. package/.speccrew/skills/speccrew-dev-review-desktop/SKILL.md +10 -2
  26. package/.speccrew/skills/speccrew-dev-review-desktop/workflow.agentflow.xml +214 -0
  27. package/.speccrew/skills/speccrew-dev-review-frontend/SKILL.md +10 -2
  28. package/.speccrew/skills/speccrew-dev-review-frontend/workflow.agentflow.xml +213 -0
  29. package/.speccrew/skills/speccrew-dev-review-mobile/SKILL.md +10 -2
  30. package/.speccrew/skills/speccrew-dev-review-mobile/workflow.agentflow.xml +214 -0
  31. package/.speccrew/skills/speccrew-fd-api-contract/SKILL.md +7 -1
  32. package/.speccrew/skills/speccrew-fd-api-contract/workflow.agentflow.xml +222 -0
  33. package/.speccrew/skills/speccrew-fd-feature-analyze/SKILL.md +7 -1
  34. package/.speccrew/skills/speccrew-fd-feature-analyze/workflow.agentflow.xml +223 -0
  35. package/.speccrew/skills/speccrew-fd-feature-design/SKILL.md +7 -1
  36. package/.speccrew/skills/speccrew-fd-feature-design/workflow.agentflow.xml +322 -0
  37. package/.speccrew/skills/speccrew-get-timestamp/SKILL.md +3 -39
  38. package/.speccrew/skills/speccrew-get-timestamp/workflow.agentflow.xml +43 -0
  39. package/.speccrew/skills/speccrew-knowledge-bizs-api-analyze/SKILL.md +57 -508
  40. package/.speccrew/skills/{speccrew-knowledge-bizs-api-analyze-xml/SKILL.md → speccrew-knowledge-bizs-api-analyze/workflow.agentflow.xml} +1 -154
  41. package/.speccrew/skills/speccrew-knowledge-bizs-api-graph/SKILL.md +73 -283
  42. package/.speccrew/skills/{speccrew-knowledge-bizs-api-graph-xml/SKILL.md → speccrew-knowledge-bizs-api-graph/workflow.agentflow.xml} +0 -298
  43. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/SKILL.md +931 -801
  44. package/.speccrew/skills/{speccrew-knowledge-bizs-dispatch-xml/SKILL.md → speccrew-knowledge-bizs-dispatch/workflow.agentflow.xml} +42 -272
  45. package/.speccrew/skills/speccrew-knowledge-bizs-identify-entries/SKILL.md +263 -71
  46. package/.speccrew/skills/{speccrew-knowledge-bizs-identify-entries-xml/SKILL.md → speccrew-knowledge-bizs-identify-entries/workflow.agentflow.xml} +8 -184
  47. package/.speccrew/skills/speccrew-knowledge-bizs-init-features/SKILL.md +200 -181
  48. package/.speccrew/skills/{speccrew-knowledge-bizs-init-features-xml/SKILL.md → speccrew-knowledge-bizs-init-features/workflow.agentflow.xml} +7 -134
  49. package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/SKILL.md +5 -89
  50. package/.speccrew/skills/speccrew-knowledge-bizs-module-classify/workflow.agentflow.xml +129 -0
  51. package/.speccrew/skills/speccrew-knowledge-bizs-ui-analyze/SKILL.md +454 -326
  52. package/.speccrew/skills/{speccrew-knowledge-bizs-ui-analyze-xml/SKILL.md → speccrew-knowledge-bizs-ui-analyze/workflow.agentflow.xml} +8 -128
  53. package/.speccrew/skills/speccrew-knowledge-bizs-ui-graph/SKILL.md +302 -247
  54. package/.speccrew/skills/{speccrew-knowledge-bizs-ui-graph-xml/SKILL.md → speccrew-knowledge-bizs-ui-graph/workflow.agentflow.xml} +7 -199
  55. package/.speccrew/skills/speccrew-knowledge-bizs-ui-style-extract/SKILL.md +267 -156
  56. package/.speccrew/skills/{speccrew-knowledge-bizs-ui-style-extract-xml/SKILL.md → speccrew-knowledge-bizs-ui-style-extract/workflow.agentflow.xml} +7 -151
  57. package/.speccrew/skills/speccrew-knowledge-graph-query/SKILL.md +3 -122
  58. package/.speccrew/skills/speccrew-knowledge-graph-query/workflow.agentflow.xml +106 -0
  59. package/.speccrew/skills/speccrew-knowledge-graph-write/SKILL.md +3 -80
  60. package/.speccrew/skills/speccrew-knowledge-graph-write/workflow.agentflow.xml +152 -0
  61. package/.speccrew/skills/speccrew-knowledge-module-summarize/SKILL.md +371 -265
  62. package/.speccrew/skills/{speccrew-knowledge-module-summarize-xml/SKILL.md → speccrew-knowledge-module-summarize/workflow.agentflow.xml} +7 -197
  63. package/.speccrew/skills/speccrew-knowledge-system-summarize/SKILL.md +45 -333
  64. package/.speccrew/skills/{speccrew-knowledge-system-summarize-xml/SKILL.md → speccrew-knowledge-system-summarize/workflow.agentflow.xml} +0 -177
  65. package/.speccrew/skills/speccrew-knowledge-techs-dispatch/SKILL.md +174 -727
  66. package/.speccrew/skills/{speccrew-knowledge-techs-dispatch-xml/SKILL.md → speccrew-knowledge-techs-dispatch/workflow.agentflow.xml} +10 -351
  67. package/.speccrew/skills/speccrew-knowledge-techs-generate/SKILL.md +20 -150
  68. package/.speccrew/skills/{speccrew-knowledge-techs-generate-xml/SKILL.md → speccrew-knowledge-techs-generate/workflow.agentflow.xml} +0 -169
  69. package/.speccrew/skills/speccrew-knowledge-techs-generate-conventions/SKILL.md +75 -587
  70. package/.speccrew/skills/{speccrew-knowledge-techs-generate-conventions-xml/SKILL.md → speccrew-knowledge-techs-generate-conventions/workflow.agentflow.xml} +0 -153
  71. package/.speccrew/skills/speccrew-knowledge-techs-generate-quality/SKILL.md +463 -297
  72. package/.speccrew/skills/{speccrew-knowledge-techs-generate-quality-xml/SKILL.md → speccrew-knowledge-techs-generate-quality/workflow.agentflow.xml} +0 -164
  73. package/.speccrew/skills/speccrew-knowledge-techs-generate-ui-style/SKILL.md +57 -292
  74. package/.speccrew/skills/{speccrew-knowledge-techs-generate-ui-style-xml/SKILL.md → speccrew-knowledge-techs-generate-ui-style/workflow.agentflow.xml} +2 -193
  75. package/.speccrew/skills/speccrew-knowledge-techs-index/SKILL.md +49 -335
  76. package/.speccrew/skills/{speccrew-knowledge-techs-index-xml/SKILL.md → speccrew-knowledge-techs-index/workflow.agentflow.xml} +0 -167
  77. package/.speccrew/skills/speccrew-knowledge-techs-init/SKILL.md +28 -109
  78. package/.speccrew/skills/{speccrew-knowledge-techs-init-xml/SKILL.md → speccrew-knowledge-techs-init/workflow.agentflow.xml} +0 -189
  79. package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/SKILL.md +3 -487
  80. package/.speccrew/skills/speccrew-knowledge-techs-ui-analyze/workflow.agentflow.xml +278 -0
  81. package/.speccrew/skills/speccrew-pm-knowledge-detector/SKILL.md +3 -71
  82. package/.speccrew/skills/speccrew-pm-knowledge-detector/workflow.agentflow.xml +108 -0
  83. package/.speccrew/skills/speccrew-pm-module-initializer/SKILL.md +3 -107
  84. package/.speccrew/skills/speccrew-pm-module-initializer/workflow.agentflow.xml +139 -0
  85. package/.speccrew/skills/speccrew-pm-module-matcher/SKILL.md +3 -115
  86. package/.speccrew/skills/speccrew-pm-module-matcher/workflow.agentflow.xml +146 -0
  87. package/.speccrew/skills/speccrew-pm-requirement-analysis/SKILL.md +3 -343
  88. package/.speccrew/skills/speccrew-pm-requirement-analysis/workflow.agentflow.xml +174 -0
  89. package/.speccrew/skills/speccrew-pm-requirement-assess/SKILL.md +3 -91
  90. package/.speccrew/skills/speccrew-pm-requirement-assess/workflow.agentflow.xml +173 -0
  91. package/.speccrew/skills/speccrew-pm-requirement-clarify/SKILL.md +3 -224
  92. package/.speccrew/skills/speccrew-pm-requirement-clarify/workflow.agentflow.xml +159 -0
  93. package/.speccrew/skills/speccrew-pm-requirement-model/SKILL.md +3 -275
  94. package/.speccrew/skills/speccrew-pm-requirement-model/workflow.agentflow.xml +210 -0
  95. package/.speccrew/skills/speccrew-pm-requirement-simple/SKILL.md +3 -76
  96. package/.speccrew/skills/speccrew-pm-requirement-simple/workflow.agentflow.xml +120 -0
  97. package/.speccrew/skills/speccrew-pm-sub-prd-generate/SKILL.md +7 -1
  98. package/.speccrew/skills/speccrew-pm-sub-prd-generate/workflow.agentflow.xml +218 -0
  99. package/.speccrew/skills/speccrew-sd-backend/SKILL.md +7 -1
  100. package/.speccrew/skills/speccrew-sd-backend/workflow.agentflow.xml +264 -0
  101. package/.speccrew/skills/speccrew-sd-desktop/SKILL.md +7 -1
  102. package/.speccrew/skills/speccrew-sd-desktop/workflow.agentflow.xml +288 -0
  103. package/.speccrew/skills/speccrew-sd-framework-evaluate/SKILL.md +7 -1
  104. package/.speccrew/skills/speccrew-sd-framework-evaluate/workflow.agentflow.xml +235 -0
  105. package/.speccrew/skills/speccrew-sd-frontend/SKILL.md +7 -1
  106. package/.speccrew/skills/speccrew-sd-frontend/workflow.agentflow.xml +299 -0
  107. package/.speccrew/skills/speccrew-sd-mobile/SKILL.md +7 -1
  108. package/.speccrew/skills/speccrew-sd-mobile/workflow.agentflow.xml +301 -0
  109. package/.speccrew/skills/speccrew-test-case-design/SKILL.md +165 -284
  110. package/.speccrew/skills/speccrew-test-case-design/workflow.agentflow.xml +210 -0
  111. package/.speccrew/skills/speccrew-test-code-gen/SKILL.md +204 -324
  112. package/.speccrew/skills/speccrew-test-code-gen/workflow.agentflow.xml +265 -0
  113. package/.speccrew/skills/speccrew-test-reporter/SKILL.md +205 -184
  114. package/.speccrew/skills/speccrew-test-reporter/workflow.agentflow.xml +284 -0
  115. package/.speccrew/skills/speccrew-test-runner/SKILL.md +242 -241
  116. package/.speccrew/skills/speccrew-test-runner/workflow.agentflow.xml +314 -0
  117. package/bin/cli.js +8 -1
  118. package/lib/commands/init.js +11 -3
  119. package/lib/commands/update.js +11 -3
  120. package/lib/commands/validate.js +565 -0
  121. package/lib/utils.js +43 -0
  122. package/package.json +1 -1
  123. package/workspace-template/docs/rules/{xml-workflow-spec.md → agentflow-spec.md} +5 -5
  124. package/workspace-template/scripts/validate-agentflow.js +637 -0
  125. package/.speccrew/agents/speccrew-team-leader-xml.md +0 -480
  126. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/STATUS-FORMATS.md +0 -99
  127. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/batch-orchestrator.js +0 -176
  128. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/get-next-batch.js +0 -150
  129. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/get-pending-features.js +0 -106
  130. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/mark-stale.js +0 -249
  131. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/merge-features.js +0 -300
  132. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/process-batch-results.js +0 -915
  133. package/.speccrew/skills/speccrew-knowledge-bizs-dispatch/scripts/update-feature-status.js +0 -226
  134. package/.speccrew/skills/speccrew-knowledge-bizs-init-features/examples/features.json +0 -34
  135. package/.speccrew/skills/speccrew-knowledge-bizs-init-features/scripts/generate-inventory.js +0 -1087
  136. package/.speccrew/skills/speccrew-knowledge-bizs-init-features/scripts/test-inventory.js +0 -26
  137. package/.speccrew/skills/speccrew-knowledge-techs-dispatch/STATUS-FORMATS.md +0 -550
@@ -1,56 +1,3 @@
1
- ---
2
- name: speccrew-knowledge-techs-index-xml
3
- description: Stage 3 of technology knowledge initialization - Generate root INDEX.md by aggregating all platform technology documents using XML workflow blocks. Creates the master index that maps platforms to their documentation and provides Agent-to-Platform mapping guide. Used by Worker Agent after all platform documents are generated.
4
- tools: Read, Write, Skill
5
- ---
6
-
7
- # Stage 3: Generate Root Technology Index (XML Workflow)
8
-
9
- Aggregate all platform technology documentation into a single root INDEX.md that serves as the master navigation hub for technology knowledge.
10
-
11
- ## Language Adaptation
12
-
13
- **CRITICAL**: Generate all content in the language specified by the `language` parameter.
14
-
15
- - `language: "zh"` → Generate all content in 中文
16
- - `language: "en"` → Generate all content in English
17
- - Other languages → Use the specified language
18
-
19
- ## Trigger Scenarios
20
-
21
- - "Generate techs root index"
22
- - "Create technology knowledge index"
23
- - "Aggregate platform tech docs"
24
- - "Generate master tech index"
25
-
26
- ## User
27
-
28
- Worker Agent (speccrew-task-worker)
29
-
30
- ## Input
31
-
32
- - `manifest_path`: Path to techs-manifest.json
33
- - `techs_base_path`: Base path for techs documentation (default: `speccrew-workspace/knowledges/techs/`)
34
- - `output_path`: Output path for root INDEX.md (default: `speccrew-workspace/knowledges/techs/`)
35
- - `language`: Target language (e.g., "zh", "en") - **REQUIRED**
36
-
37
- ## Output
38
-
39
- - `{{output_path}}/INDEX.md` - Root technology knowledge index
40
-
41
- **INDEX.md Content Structure**:
42
- - Introduction (generation info, platform count)
43
- - Platform Overview (table with links to all platform docs)
44
- - Quick Reference (links organized by document type)
45
- - Agent-to-Platform Mapping (maps agents to their platform docs)
46
- - Document Guide (explains each document type)
47
- - Usage Guide (how to use the knowledge)
48
-
49
- ## Workflow
50
-
51
- > **REQUIRED**: Before executing this workflow, read the XML workflow specification: `speccrew-workspace/docs/rules/xml-workflow-spec.md`
52
-
53
- ```xml
54
1
  <?xml version="1.0" encoding="UTF-8"?>
55
2
  <workflow id="techs-index-main" status="pending" version="1.0" desc="Root technology index generation from platform manifests">
56
3
 
@@ -205,117 +152,3 @@ Worker Agent (speccrew-task-worker)
205
152
  </block>
206
153
 
207
154
  </workflow>
208
- ```
209
-
210
- ---
211
-
212
- ## Template Usage
213
-
214
- Templates are located at `../speccrew-knowledge-techs-index/templates/`:
215
-
216
- **Template Variables:**
217
- - `{{generated_at}}`: ISO timestamp
218
- - `{{source_path}}`: Source path
219
- - `{{platform_count}}`: Number of platforms
220
- - `{{#each platforms}}`: Loop through platforms
221
- - `{{platform_id}}`: Platform identifier
222
- - `{{platform_type}}`: Platform type
223
- - `{{framework}}`: Framework name
224
- - `{{language}}`: Programming language
225
-
226
- ---
227
-
228
- ## Document Structure Details
229
-
230
- ### Section 1: Header
231
-
232
- ```markdown
233
- # Technology Knowledge Index
234
-
235
- **Files Referenced in This Document**
236
-
237
- - [techs-manifest.json](../../../speccrew-workspace/knowledges/techs/techs-manifest.json)
238
-
239
- > **Target Audience**: devcrew-designer-*, devcrew-dev-*, devcrew-test-*
240
- ```
241
-
242
- ### Section 2: Platform Overview
243
-
244
- Summary table of all platforms with **dynamically generated document links**:
245
-
246
- ```markdown
247
- ## Platform Overview
248
-
249
- | Platform | Type | Framework | Stack | Arch | Design | Dev | Test | Build | Data |
250
- |----------|------|-----------|-------|------|--------|-----|------|-------|------|
251
- | [web-react](web-react/INDEX.md) | web | React | [Stack](web-react/tech-stack.md) | ... | ... | ... | ... | ... | - |
252
- ```
253
-
254
- **Dynamic Link Generation Rules:**
255
-
256
- 1. **Always include links to required documents** (if they exist)
257
- 2. **Conditionally include conventions-data.md**: Show `-` if not exists
258
- 3. **Link Format**: Use short abbreviations to save space
259
-
260
- ### Section 3: Quick Reference
261
-
262
- Quick links organized by document type (Technology Stacks, Architecture Guidelines, Design Conventions, etc.)
263
-
264
- ### Section 4: Agent-to-Platform Mapping
265
-
266
- Critical section that defines how Agents map to platform documentation. **Must dynamically adjust based on actual document availability.**
267
-
268
- **Dynamic Adjustment Rules:**
269
-
270
- 1. **Designer Agent Documents**: Primary + Optional (conventions-data.md, ui-style-patterns/)
271
- 2. **Developer Agent Documents**: Primary (conventions-dev.md, conventions-build.md) + Optional
272
- 3. **Tester Agent Documents**: Primary (conventions-test.md, conventions-build.md) + Optional
273
-
274
- ### Section 5: Document Guide
275
-
276
- Explain what each document type contains.
277
-
278
- ### Section 6: Usage Guide
279
-
280
- How to use the technology knowledge for Designer, Developer, and Tester Agents.
281
-
282
- ---
283
-
284
- ## Checklist
285
-
286
- ### Pre-Generation
287
- - [ ] techs-manifest.json read successfully
288
- - [ ] Platform list extracted from manifest
289
-
290
- ### Dynamic Document Detection
291
- - [ ] Each platform directory scanned for actual document existence
292
- - [ ] Document availability map created for each platform
293
- - [ ] Required documents verified
294
- - [ ] Optional conventions-data.md existence checked per platform
295
-
296
- ### Content Generation
297
- - [ ] Platform summaries extracted from existing INDEX.md files
298
- - [ ] Root INDEX.md generated with all sections
299
- - [ ] **Platform Overview table**: Links dynamically generated based on actual document existence
300
- - [ ] **Agent-to-Platform mapping**: Document recommendations adjusted per platform
301
- - [ ] Document guide included
302
- - [ ] Usage guide included
303
-
304
- ### Quality & Validation
305
- - [ ] No broken links to non-existent documents
306
- - [ ] conventions-data.md links only included for platforms where it exists
307
- - [ ] **Source traceability**: File reference block added to root INDEX.md
308
- - [ ] Output file written successfully
309
- - [ ] Results reported with document availability summary
310
-
311
- ---
312
-
313
- ## CONTINUOUS EXECUTION RULES
314
-
315
- This skill follows the continuous execution pattern defined in `GLOBAL-R1`:
316
-
317
- 1. **Sequential Execution**: All workflow steps must execute in the defined order without interruption.
318
- 2. **No User Prompts**: Worker must not pause for user confirmation between steps.
319
- 3. **Complete All Steps**: Worker must complete all steps before reporting results.
320
- 4. **Error Handling**: If any step fails, continue with remaining steps if possible, then report all errors together.
321
- 5. **Technology Stack Constraint**: Per `GLOBAL-R-TECHSTACK`, all generated index documents must accurately reflect detected platform technology stacks.
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  name: speccrew-knowledge-techs-init
3
- description: Stage 1 of technology knowledge initialization - Scan source code to detect technology platforms and generate techs-manifest.json. Identifies web, mobile, backend, and desktop platforms by analyzing configuration files and project structure. Used by Worker Agent to kick off the techs pipeline.
3
+ description: Stage 1 of technology knowledge initialization - Scan source code to detect technology platforms and generate techs-manifest.json using XML workflow blocks. Identifies web, mobile, backend, and desktop platforms by analyzing configuration files and project structure. Used by Worker Agent to kick off the techs pipeline.
4
4
  tools: Read, Write, Glob, Grep, SearchCodebase, Skill
5
5
  ---
6
6
 
7
- # Stage 1: Detect Technology Platforms
7
+ # Stage 1: Detect Technology Platforms (XML Workflow)
8
8
 
9
9
  Scan project source code to identify all technology platforms, extract configuration metadata, and generate techs-manifest.json for downstream document generation.
10
10
 
@@ -39,26 +39,17 @@ Worker Agent (speccrew-task-worker)
39
39
 
40
40
  - `{{output_path}}/techs-manifest.json` - Technology platform manifest for pipeline orchestration
41
41
 
42
- ## Workflow
42
+ ## AgentFlow Definition
43
43
 
44
- ```mermaid
45
- flowchart TD
46
- Start([Start]) --> Step1[Step 1: Scan for Platform Indicators]
47
- Step1 --> Step2[Step 2: Extract Platform Metadata]
48
- Step2 --> Step3[Step 3: Generate techs-manifest.json]
49
- Step3 --> Step4[Step 4: Report Results]
50
- Step4 --> End([End])
51
- ```
44
+ <!-- @agentflow: workflow.agentflow.xml -->
52
45
 
53
- ### Step 1: Scan for Platform Indicators
46
+ > **REQUIRED**: Before executing this workflow, read the XML workflow specification: `speccrew-workspace/docs/rules/agentflow-spec.md`
54
47
 
55
- 1. **Read Configuration**:
56
- - Read `speccrew-workspace/docs/configs/platform-mapping.json` - Get standardized platform identifiers and mapping rules
48
+ ---
57
49
 
58
- 2. **Analyze project structure to detect technology platforms**:
59
- - Check for platform-specific files and configurations (see [Platform Detection Reference](#platform-detection-reference))
50
+ ## Platform Detection Reference
60
51
 
61
- #### Web Platform Detection
52
+ ### Web Platform Detection
62
53
 
63
54
  **Indicators:**
64
55
 
@@ -78,7 +69,7 @@ flowchart TD
78
69
  - tailwind.config.* / postcss.config.*
79
70
  - .eslintrc.* / .prettierrc.*
80
71
 
81
- #### Mobile Platform Detection
72
+ ### Mobile Platform Detection
82
73
 
83
74
  **Indicators:**
84
75
 
@@ -97,7 +88,7 @@ flowchart TD
97
88
  - iOS: Package.swift, Podfile, Info.plist
98
89
  - Android: build.gradle, AndroidManifest.xml
99
90
 
100
- #### Backend Platform Detection
91
+ ### Backend Platform Detection
101
92
 
102
93
  **Indicators:**
103
94
 
@@ -120,7 +111,7 @@ flowchart TD
120
111
  - Go: go.mod, go.sum
121
112
  - Rust: Cargo.toml
122
113
 
123
- #### Desktop Platform Detection
114
+ ### Desktop Platform Detection
124
115
 
125
116
  **Indicators:**
126
117
 
@@ -138,9 +129,9 @@ flowchart TD
138
129
  - WPF/WinForms: .csproj, App.xaml
139
130
  - Qt: .pro, CMakeLists.txt
140
131
 
141
- ### Step 2: Extract Platform Metadata
132
+ ---
142
133
 
143
- For each detected platform, extract:
134
+ ## Metadata Extraction Fields
144
135
 
145
136
  | Field | Source | Example |
146
137
  |-------|--------|---------|
@@ -152,93 +143,9 @@ For each detected platform, extract:
152
143
  | config_files | List of config file paths | ["package.json", "tsconfig.json"] |
153
144
  | convention_files | Lint/format config files | [".eslintrc.js", ".prettierrc"] |
154
145
 
155
- ### Step 3: Generate techs-manifest.json
156
-
157
- 1. **Get Timestamp**:
158
- - **CRITICAL**: Run `node scripts/get-timestamp.js` to get current timestamp (no format parameter needed, uses default)
159
- - Store the output as `generated_at` value
160
-
161
- 2. **Create JSON file** with detected platforms:
162
-
163
- ```json
164
- {
165
- "generated_at": "{{timestamp_from_get_timestamp}}",
166
- "source_path": "/project",
167
- "language": "zh",
168
- "platforms": [
169
- {
170
- "platform_id": "web-react",
171
- "platform_type": "web",
172
- "framework": "react",
173
- "language": "typescript",
174
- "source_path": "src/web",
175
- "config_files": [
176
- "src/web/package.json",
177
- "src/web/tsconfig.json",
178
- "src/web/vite.config.ts"
179
- ],
180
- "convention_files": [
181
- "src/web/.eslintrc.js",
182
- "src/web/.prettierrc"
183
- ]
184
- },
185
- {
186
- "platform_id": "backend-nestjs",
187
- "platform_type": "backend",
188
- "framework": "nestjs",
189
- "language": "typescript",
190
- "source_path": "src/server",
191
- "config_files": [
192
- "src/server/package.json",
193
- "src/server/nest-cli.json",
194
- "src/server/tsconfig.json"
195
- ],
196
- "convention_files": [
197
- "src/server/.eslintrc.js"
198
- ]
199
- }
200
- ]
201
- }
202
- ```
203
-
204
- ### Step 4: Report Results
205
-
206
- ```
207
- Stage 1 completed: Technology Platform Detection
208
- - Platforms Detected: {{platform_count}}
209
- - web-react: React 18.2.0, TypeScript 5.3.0
210
- - backend-nestjs: NestJS 10.0.0, TypeScript 5.3.0
211
- - Configuration Files Found: {{config_file_count}}
212
- - Output: {{output_path}}/techs-manifest.json
213
- - Next: Dispatch parallel tasks for Stage 2 (Tech Document Generation)
214
- ```
215
-
216
- ## Reference Guides
217
-
218
- ### Platform Detection Reference
219
-
220
- #### Multiple Platforms in Same Project
221
-
222
- If a project contains multiple platforms (e.g., web + backend + mobile):
223
- - Detect each platform separately
224
- - Assign unique platform_id for each
225
- - Include all platforms in manifest
226
-
227
- #### Monorepo Structure
228
-
229
- For monorepos with multiple packages:
230
- - Detect platforms in each package directory
231
- - Use relative paths for source_path
232
- - Example: `packages/web-app` → web-react platform
233
-
234
- #### Framework Version Detection
235
-
236
- Extract version information when available:
237
- - From package.json dependencies
238
- - From pom.xml version tags
239
- - Include in report but not in manifest (manifest focuses on structure)
240
-
241
- #### Platform Mapping to bizs-init
146
+ ---
147
+
148
+ ## Platform Mapping Consistency
242
149
 
243
150
  Ensure consistency with modules.json by using standardized platform identifiers from `platform-mapping.json`:
244
151
 
@@ -248,6 +155,7 @@ Ensure consistency with modules.json by using standardized platform identifiers
248
155
  - `framework` maps to `platform_subtype` in modules.json
249
156
 
250
157
  **Example Mapping:**
158
+
251
159
  | platform_id | platform_type | framework | platform_subtype (for bizs-init) |
252
160
  |-------------|---------------|-----------|----------------------------------|
253
161
  | web-vue | web | vue | vue |
@@ -267,3 +175,14 @@ Ensure consistency with modules.json by using standardized platform identifiers
267
175
  - [ ] Output path verified
268
176
  - [ ] Results reported with platform summary
269
177
 
178
+ ---
179
+
180
+ ## CONTINUOUS EXECUTION RULES
181
+
182
+ This skill follows the continuous execution pattern defined in `GLOBAL-R1`:
183
+
184
+ 1. **Sequential Execution**: All workflow steps must execute in the defined order without interruption.
185
+ 2. **No User Prompts**: Worker must not pause for user confirmation between steps.
186
+ 3. **Complete All Steps**: Worker must complete all steps before reporting results.
187
+ 4. **Error Handling**: If any step fails, continue with remaining steps if possible, then report all errors together.
188
+ 5. **Technology Stack Constraint**: Per `GLOBAL-R-TECHSTACK`, detected platforms must align with standardized platform identifiers from platform-mapping.json.
@@ -1,49 +1,3 @@
1
- ---
2
- name: speccrew-knowledge-techs-init-xml
3
- description: Stage 1 of technology knowledge initialization - Scan source code to detect technology platforms and generate techs-manifest.json using XML workflow blocks. Identifies web, mobile, backend, and desktop platforms by analyzing configuration files and project structure. Used by Worker Agent to kick off the techs pipeline.
4
- tools: Read, Write, Glob, Grep, SearchCodebase, Skill
5
- ---
6
-
7
- # Stage 1: Detect Technology Platforms (XML Workflow)
8
-
9
- Scan project source code to identify all technology platforms, extract configuration metadata, and generate techs-manifest.json for downstream document generation.
10
-
11
- ## Language Adaptation
12
-
13
- **CRITICAL**: Generate all content in the language specified by the `language` parameter.
14
-
15
- - `language: "zh"` → Generate all content in 中文
16
- - `language: "en"` → Generate all content in English
17
- - Other languages → Use the specified language
18
-
19
- **All output content must be in the target language only.**
20
-
21
- ## Trigger Scenarios
22
-
23
- - "Initialize technology knowledge base"
24
- - "Scan source code for technology platforms"
25
- - "Detect tech stacks in project"
26
- - "Generate techs manifest"
27
-
28
- ## User
29
-
30
- Worker Agent (speccrew-task-worker)
31
-
32
- ## Input
33
-
34
- - `source_path`: Source code root directory (default: project root)
35
- - `output_path`: Output directory for techs-manifest.json (default: `speccrew-workspace/knowledges/base/sync-state/knowledge-techs/`)
36
- - `language`: Target language for generated content (e.g., "zh", "en") - **REQUIRED**
37
-
38
- ## Output
39
-
40
- - `{{output_path}}/techs-manifest.json` - Technology platform manifest for pipeline orchestration
41
-
42
- ## Workflow
43
-
44
- > **REQUIRED**: Before executing this workflow, read the XML workflow specification: `speccrew-workspace/docs/rules/xml-workflow-spec.md`
45
-
46
- ```xml
47
1
  <?xml version="1.0" encoding="UTF-8"?>
48
2
  <workflow id="techs-init-main" status="pending" version="1.0" desc="Technology platform detection and manifest generation">
49
3
 
@@ -258,146 +212,3 @@ Stage 1 completed: Technology Platform Detection
258
212
  </block>
259
213
 
260
214
  </workflow>
261
- ```
262
-
263
- ---
264
-
265
- ## Platform Detection Reference
266
-
267
- ### Web Platform Detection
268
-
269
- **Indicators:**
270
-
271
- | Signal | Platform ID | Framework |
272
- |--------|-------------|-----------|
273
- | package.json + react dependency | web-react | React |
274
- | package.json + vue dependency | web-vue | Vue |
275
- | package.json + @angular/core | web-angular | Angular |
276
- | package.json + next | web-nextjs | Next.js |
277
- | package.json + nuxt | web-nuxt | Nuxt |
278
- | package.json + svelte | web-svelte | Svelte |
279
-
280
- **Configuration Files to Capture:**
281
- - package.json
282
- - tsconfig.json
283
- - vite.config.* / webpack.config.* / next.config.* / nuxt.config.*
284
- - tailwind.config.* / postcss.config.*
285
- - .eslintrc.* / .prettierrc.*
286
-
287
- ### Mobile Platform Detection
288
-
289
- **Indicators:**
290
-
291
- | Signal | Platform ID | Framework |
292
- |--------|-------------|-----------|
293
- | pubspec.yaml | mobile-flutter | Flutter |
294
- | package.json + react-native | mobile-react-native | React Native |
295
- | .xcodeproj / Package.swift | mobile-ios | iOS (Swift) |
296
- | build.gradle + AndroidManifest.xml | mobile-android | Android (Kotlin/Java) |
297
- | manifest.json + pages.json (uni-app) | mobile-uniapp | UniApp |
298
- | project.config.json + app.json | mobile-miniprogram | Mini Program |
299
-
300
- **Configuration Files to Capture:**
301
- - Flutter: pubspec.yaml, analysis_options.yaml
302
- - React Native: package.json, metro.config.js
303
- - iOS: Package.swift, Podfile, Info.plist
304
- - Android: build.gradle, AndroidManifest.xml
305
-
306
- ### Backend Platform Detection
307
-
308
- **Indicators:**
309
-
310
- | Signal | Platform ID | Framework |
311
- |--------|-------------|-----------|
312
- | package.json + @nestjs/core | backend-nestjs | NestJS |
313
- | package.json + express | backend-express | Express |
314
- | package.json + fastify | backend-fastify | Fastify |
315
- | pom.xml + spring-boot | backend-spring | Spring Boot |
316
- | build.gradle + spring-boot | backend-spring | Spring Boot |
317
- | requirements.txt + django | backend-django | Django |
318
- | requirements.txt + fastapi | backend-fastapi | FastAPI |
319
- | go.mod | backend-go | Go |
320
- | Cargo.toml | backend-rust | Rust (Actix/Rocket) |
321
-
322
- **Configuration Files to Capture:**
323
- - Node.js: package.json, tsconfig.json, nest-cli.json
324
- - Java: pom.xml, build.gradle, application.yml/properties
325
- - Python: requirements.txt, pyproject.toml
326
- - Go: go.mod, go.sum
327
- - Rust: Cargo.toml
328
-
329
- ### Desktop Platform Detection
330
-
331
- **Indicators:**
332
-
333
- | Signal | Platform ID | Framework |
334
- |--------|-------------|-----------|
335
- | package.json + electron | desktop-electron | Electron |
336
- | tauri.conf.json | desktop-tauri | Tauri |
337
- | .csproj + WPF references | desktop-wpf | WPF |
338
- | .csproj + WinForms | desktop-winforms | WinForms |
339
- | .pro file + Qt | desktop-qt | Qt |
340
-
341
- **Configuration Files to Capture:**
342
- - Electron: package.json, electron-builder.yml
343
- - Tauri: tauri.conf.json, Cargo.toml
344
- - WPF/WinForms: .csproj, App.xaml
345
- - Qt: .pro, CMakeLists.txt
346
-
347
- ---
348
-
349
- ## Metadata Extraction Fields
350
-
351
- | Field | Source | Example |
352
- |-------|--------|---------|
353
- | platform_id | `{{platform_type}}-{{framework}}` | web-react, backend-nestjs |
354
- | platform_type | Platform category | web, mobile, backend, desktop |
355
- | framework | Primary framework | react, nestjs, flutter |
356
- | language | Primary language | typescript, kotlin, dart |
357
- | source_path | Relative source directory | src/web, src/server |
358
- | config_files | List of config file paths | ["package.json", "tsconfig.json"] |
359
- | convention_files | Lint/format config files | [".eslintrc.js", ".prettierrc"] |
360
-
361
- ---
362
-
363
- ## Platform Mapping Consistency
364
-
365
- Ensure consistency with modules.json by using standardized platform identifiers from `platform-mapping.json`:
366
-
367
- **Key Rules:**
368
- - `platform_id` format: `{{platform_type}}-{{framework}}` (e.g., `mobile-uniapp`, `web-vue`)
369
- - `platform_type` must match between techs-manifest.json and modules.json
370
- - `framework` maps to `platform_subtype` in modules.json
371
-
372
- **Example Mapping:**
373
-
374
- | platform_id | platform_type | framework | platform_subtype (for bizs-init) |
375
- |-------------|---------------|-----------|----------------------------------|
376
- | web-vue | web | vue | vue |
377
- | mobile-uniapp | mobile | uniapp | uniapp |
378
- | backend-spring | backend | spring | spring |
379
-
380
- ---
381
-
382
- ## Checklist
383
-
384
- - [ ] All platform indicators checked
385
- - [ ] Platform metadata extracted (platform_id, type, framework, language)
386
- - [ ] Configuration files identified and paths recorded
387
- - [ ] Convention files (eslint, prettier) identified
388
- - [ ] techs-manifest.json generated with valid JSON structure
389
- - [ ] **Source traceability**: All config_file paths recorded for downstream use
390
- - [ ] Output path verified
391
- - [ ] Results reported with platform summary
392
-
393
- ---
394
-
395
- ## CONTINUOUS EXECUTION RULES
396
-
397
- This skill follows the continuous execution pattern defined in `GLOBAL-R1`:
398
-
399
- 1. **Sequential Execution**: All workflow steps must execute in the defined order without interruption.
400
- 2. **No User Prompts**: Worker must not pause for user confirmation between steps.
401
- 3. **Complete All Steps**: Worker must complete all steps before reporting results.
402
- 4. **Error Handling**: If any step fails, continue with remaining steps if possible, then report all errors together.
403
- 5. **Technology Stack Constraint**: Per `GLOBAL-R-TECHSTACK`, detected platforms must align with standardized platform identifiers from platform-mapping.json.