speccrew 0.1.0 → 0.1.2

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 (52) hide show
  1. package/README.ar.md +98 -91
  2. package/README.bn.md +122 -0
  3. package/README.bs.md +321 -0
  4. package/README.da.md +321 -0
  5. package/README.de.md +321 -0
  6. package/README.el.md +122 -0
  7. package/README.en.md +92 -85
  8. package/README.es.md +96 -89
  9. package/README.fr.md +321 -0
  10. package/README.it.md +321 -0
  11. package/README.ja.md +321 -0
  12. package/README.ko.md +321 -0
  13. package/README.md +92 -109
  14. package/README.no.md +321 -0
  15. package/README.pl.md +321 -0
  16. package/README.pt-BR.md +321 -0
  17. package/README.ru.md +321 -0
  18. package/README.th.md +239 -0
  19. package/README.tr.md +239 -0
  20. package/README.uk.md +239 -0
  21. package/README.vi.md +122 -0
  22. package/README.zh-TW.md +321 -0
  23. package/bin/cli.js +5 -1
  24. package/bin/postinstall.js +157 -0
  25. package/docs/GETTING-STARTED.ar.md +452 -0
  26. package/docs/GETTING-STARTED.bn.md +449 -0
  27. package/docs/GETTING-STARTED.bs.md +449 -0
  28. package/docs/GETTING-STARTED.da.md +448 -0
  29. package/docs/GETTING-STARTED.de.md +448 -0
  30. package/docs/GETTING-STARTED.el.md +449 -0
  31. package/docs/GETTING-STARTED.en.md +448 -0
  32. package/docs/GETTING-STARTED.es.md +448 -0
  33. package/docs/GETTING-STARTED.fr.md +448 -0
  34. package/docs/GETTING-STARTED.it.md +448 -0
  35. package/docs/GETTING-STARTED.ja.md +448 -0
  36. package/docs/GETTING-STARTED.ko.md +448 -0
  37. package/docs/GETTING-STARTED.md +448 -0
  38. package/docs/GETTING-STARTED.no.md +449 -0
  39. package/docs/GETTING-STARTED.pl.md +449 -0
  40. package/docs/GETTING-STARTED.pt-BR.md +449 -0
  41. package/docs/GETTING-STARTED.ru.md +449 -0
  42. package/docs/GETTING-STARTED.th.md +449 -0
  43. package/docs/GETTING-STARTED.tr.md +449 -0
  44. package/docs/GETTING-STARTED.uk.md +449 -0
  45. package/docs/GETTING-STARTED.vi.md +449 -0
  46. package/docs/GETTING-STARTED.zh-TW.md +448 -0
  47. package/lib/commands/init.js +238 -41
  48. package/lib/commands/uninstall.js +150 -32
  49. package/lib/commands/update.js +159 -24
  50. package/lib/ide-adapters.js +257 -3
  51. package/lib/utils.js +23 -7
  52. package/package.json +16 -5
@@ -0,0 +1,448 @@
1
+ # SpecCrew 快速開始指南
2
+
3
+ <p align="center">
4
+ <a href="./GETTING-STARTED.md">简体中文</a> |
5
+ <a href="./GETTING-STARTED.zh-TW.md">繁體中文</a> |
6
+ <a href="./GETTING-STARTED.en.md">English</a> |
7
+ <a href="./GETTING-STARTED.ko.md">한국어</a> |
8
+ <a href="./GETTING-STARTED.de.md">Deutsch</a> |
9
+ <a href="./GETTING-STARTED.es.md">Español</a> |
10
+ <a href="./GETTING-STARTED.fr.md">Français</a> |
11
+ <a href="./GETTING-STARTED.it.md">Italiano</a> |
12
+ <a href="./GETTING-STARTED.da.md">Dansk</a> |
13
+ <a href="./GETTING-STARTED.ja.md">日本語</a> |
14
+ <a href="./GETTING-STARTED.ar.md">العربية</a>
15
+ </p>
16
+
17
+ 本文檔幫助您快速了解如何使用 SpecCrew 的 Agent 團隊,按照標準工程流程逐步完成從需求到交付的完整開發。
18
+
19
+ ---
20
+
21
+ ## 1. 前置準備
22
+
23
+ ### 安裝 SpecCrew
24
+
25
+ ```bash
26
+ npm install -g speccrew
27
+ ```
28
+
29
+ ### 初始化專案
30
+
31
+ ```bash
32
+ speccrew init --ide qoder
33
+ ```
34
+
35
+ 支援的 IDE:`qoder`、`cursor`、`claude`、`codex`
36
+
37
+ ### 初始化後的目錄結構
38
+
39
+ ```
40
+ .
41
+ ├── .qoder/
42
+ │ ├── agents/ # Agent 定義檔案
43
+ │ └── skills/ # Skill 定義檔案
44
+ ├── speccrew-workspace/ # 工作空間
45
+ │ ├── docs/ # 配置、規則、模板、解決方案
46
+ │ ├── iterations/ # 當前進行中的迭代
47
+ │ ├── iteration-archives/ # 歸檔的迭代
48
+ │ └── knowledges/ # 知識庫
49
+ │ ├── base/ # 基礎資訊(診斷報告、技術債務)
50
+ │ ├── bizs/ # 業務知識庫
51
+ │ └── techs/ # 技術知識庫
52
+ ```
53
+
54
+ ### CLI 命令速查
55
+
56
+ | 命令 | 說明 |
57
+ |------|------|
58
+ | `speccrew list` | 列出所有可用的 Agent 和 Skill |
59
+ | `speccrew doctor` | 檢查安裝完整性 |
60
+ | `speccrew update` | 更新專案配置到最新版本 |
61
+ | `speccrew uninstall` | 解除安裝 SpecCrew |
62
+
63
+ ---
64
+
65
+ ## 2. 工作流程總覽
66
+
67
+ ### 完整流程圖
68
+
69
+ ```mermaid
70
+ flowchart LR
71
+ PRD[階段一<br/>需求分析<br/>Product Manager] --> FD[階段二<br/>功能設計<br/>Feature Designer]
72
+ FD --> SD[階段三<br/>系統設計<br/>System Designer]
73
+ SD --> DEV[階段四<br/>開發實現<br/>System Developer]
74
+ DEV --> TEST[階段五<br/>系統測試<br/>Test Manager]
75
+ TEST --> ARCHIVE[階段六<br/>歸檔]
76
+
77
+ KB[(知識庫<br/>貫穿始終)] -.-> PRD
78
+ KB -.-> FD
79
+ KB -.-> SD
80
+ KB -.-> DEV
81
+ KB -.-> TEST
82
+ ```
83
+
84
+ ### 核心原則
85
+
86
+ 1. **階段依賴**:每階段產出物是下一階段的輸入
87
+ 2. **Checkpoint 確認**:每個階段都有確認點,需使用者確認後才能進入下一階段
88
+ 3. **知識庫驅動**:知識庫貫穿始終,為各階段提供上下文
89
+
90
+ ---
91
+
92
+ ## 3. 第零步:專案診斷與知識庫初始化
93
+
94
+ 在開始正式工程流程前,需要先初始化專案知識庫。
95
+
96
+ ### 3.1 專案診斷
97
+
98
+ **對話範例**:
99
+ ```
100
+ @speccrew-team-leader 診斷專案
101
+ ```
102
+
103
+ **Agent 會做什麼**:
104
+ - 掃描專案結構
105
+ - 偵測技術棧
106
+ - 識別業務模組
107
+
108
+ **產出物**:
109
+ ```
110
+ speccrew-workspace/knowledges/base/diagnosis-reports/diagnosis-report-{date}.md
111
+ ```
112
+
113
+ ### 3.2 技術知識庫初始化
114
+
115
+ **對話範例**:
116
+ ```
117
+ @speccrew-team-leader 初始化技術知識庫
118
+ ```
119
+
120
+ **三階段流程**:
121
+ 1. 平台偵測 — 識別專案中的技術平台
122
+ 2. 技術文檔生成 — 為每個平台生成技術規約文檔
123
+ 3. 索引生成 — 建立知識庫索引
124
+
125
+ **產出物**:
126
+ ```
127
+ speccrew-workspace/knowledges/techs/{platform-id}/
128
+ ├── tech-stack.md # 技術棧定義
129
+ ├── architecture.md # 架構約定
130
+ ├── dev-spec.md # 開發規約
131
+ ├── test-spec.md # 測試規約
132
+ └── INDEX.md # 索引檔案
133
+ ```
134
+
135
+ ### 3.3 業務知識庫初始化
136
+
137
+ **對話範例**:
138
+ ```
139
+ @speccrew-team-leader 初始化業務知識庫
140
+ ```
141
+
142
+ **四階段流程**:
143
+ 1. 特性清單 — 掃描程式碼識別所有功能特性
144
+ 2. 特性分析 — 分析每個特性的業務邏輯
145
+ 3. 模組總結 — 按模組彙總特性
146
+ 4. 系統總結 — 生成系統級業務概覽
147
+
148
+ **產出物**:
149
+ ```
150
+ speccrew-workspace/knowledges/bizs/
151
+ ├── {platform-type}/
152
+ │ └── {module-name}/
153
+ │ └── feature-spec.md
154
+ └── system-overview.md
155
+ ```
156
+
157
+ ---
158
+
159
+ ## 4. 逐階段對話指南
160
+
161
+ ### 4.1 階段一:需求分析(Product Manager)
162
+
163
+ **如何啟動**:
164
+ ```
165
+ @speccrew-product-manager 我有一個新需求:[描述你的需求]
166
+ ```
167
+
168
+ **Agent 工作流程**:
169
+ 1. 讀取系統概覽了解現有模組
170
+ 2. 分析使用者需求
171
+ 3. 生成結構化 PRD 文檔
172
+
173
+ **產出物**:
174
+ ```
175
+ iterations/{序號}-{類型}-{名稱}/01.product-requirement/
176
+ ├── [feature-name]-prd.md # 產品需求文檔
177
+ └── [feature-name]-bizs-modeling.md # 業務建模(複雜需求時)
178
+ ```
179
+
180
+ **確認要點**:
181
+ - [ ] 需求描述是否準確反映使用者意圖
182
+ - [ ] 業務規則是否完整
183
+ - [ ] 與現有系統的整合點是否明確
184
+ - [ ] 驗收標準是否可度量
185
+
186
+ ---
187
+
188
+ ### 4.2 階段二:功能設計(Feature Designer)
189
+
190
+ **如何啟動**:
191
+ ```
192
+ @speccrew-feature-designer 開始功能設計
193
+ ```
194
+
195
+ **Agent 工作流程**:
196
+ 1. 自動定位已確認的 PRD 文檔
197
+ 2. 載入業務知識庫
198
+ 3. 生成功能設計(含 UI 線框圖、交互流、資料定義、API 契約)
199
+ 4. 多 PRD 時透過 Task Worker 並行設計
200
+
201
+ **產出物**:
202
+ ```
203
+ iterations/{iter}/02.feature-design/
204
+ └── [feature-name]-feature-spec.md # 功能設計文檔
205
+ ```
206
+
207
+ **確認要點**:
208
+ - [ ] 所有使用者場景是否都被覆蓋
209
+ - [ ] 交互流程是否清晰
210
+ - [ ] 資料欄位定義是否完整
211
+ - [ ] 異常處理是否完善
212
+
213
+ ---
214
+
215
+ ### 4.3 階段三:系統設計(System Designer)
216
+
217
+ **如何啟動**:
218
+ ```
219
+ @speccrew-system-designer 開始系統設計
220
+ ```
221
+
222
+ **Agent 工作流程**:
223
+ 1. 定位 Feature Spec 和 API Contract
224
+ 2. 載入技術知識庫(各端技術棧、架構、規約)
225
+ 3. **Checkpoint A**:框架評估 — 分析技術差距,推薦新框架(如需要),等待使用者確認
226
+ 4. 生成 DESIGN-OVERVIEW.md
227
+ 5. 透過 Task Worker 並行分派各端設計(前端/後端/移動端/桌面端)
228
+ 6. **Checkpoint B**:聯合確認 — 展示所有平台設計彙總,等待使用者確認
229
+
230
+ **產出物**:
231
+ ```
232
+ iterations/{iter}/03.system-design/
233
+ ├── DESIGN-OVERVIEW.md # 設計概覽
234
+ ├── {platform-id}/
235
+ │ ├── INDEX.md # 各平台設計索引
236
+ │ └── {module}-design.md # 偽程式碼級模組設計
237
+ ```
238
+
239
+ **確認要點**:
240
+ - [ ] 偽程式碼是否使用了實際框架語法
241
+ - [ ] 跨端 API 契約是否一致
242
+ - [ ] 錯誤處理策略是否統一
243
+
244
+ ---
245
+
246
+ ### 4.4 階段四:開發實現(System Developer)
247
+
248
+ **如何啟動**:
249
+ ```
250
+ @speccrew-system-developer 開始開發
251
+ ```
252
+
253
+ **Agent 工作流程**:
254
+ 1. 讀取系統設計文檔
255
+ 2. 載入各端技術知識
256
+ 3. **Checkpoint A**:環境預檢 — 檢查執行時版本、依賴、服務可用性,失敗時等待使用者解決
257
+ 4. 透過 Task Worker 並行分派各端開發
258
+ 5. 整合檢查:API 契約對齊、資料一致性
259
+ 6. 輸出交付報告
260
+
261
+ **產出物**:
262
+ ```
263
+ # 原始碼寫入專案實際源碼目錄
264
+ iterations/{iter}/04.development/
265
+ ├── {platform-id}/
266
+ │ └── tasks/ # 開發任務記錄
267
+ └── delivery-report.md
268
+ ```
269
+
270
+ **確認要點**:
271
+ - [ ] 環境是否就緒
272
+ - [ ] 整合問題是否在可接受範圍
273
+ - [ ] 程式碼是否符合開發規約
274
+
275
+ ---
276
+
277
+ ### 4.5 階段五:系統測試(Test Manager)
278
+
279
+ **如何啟動**:
280
+ ```
281
+ @speccrew-test-manager 開始測試
282
+ ```
283
+
284
+ **三階段測試流程**:
285
+
286
+ | 階段 | 說明 | Checkpoint |
287
+ |------|------|------------|
288
+ | 測試案例設計 | 基於 PRD 和 Feature Spec 生成測試案例 | A:展示案例覆蓋統計和追溯矩陣,等待使用者確認覆蓋足夠 |
289
+ | 測試程式碼生成 | 生成可執行的測試程式碼 | B:展示生成的測試檔案和案例映射,等待使用者確認 |
290
+ | 測試執行與 Bug 報告 | 自動執行測試,生成報告 | 無(自動執行) |
291
+
292
+ **產出物**:
293
+ ```
294
+ iterations/{iter}/05.system-test/
295
+ ├── cases/
296
+ │ └── {platform-id}/ # 測試案例文檔
297
+ ├── code/
298
+ │ └── {platform-id}/ # 測試程式碼計劃
299
+ ├── reports/
300
+ │ └── test-report-{date}.md # 測試報告
301
+ └── bugs/
302
+ └── BUG-{id}-{title}.md # Bug 報告(每個 Bug 一個檔案)
303
+ ```
304
+
305
+ **確認要點**:
306
+ - [ ] 案例覆蓋是否完整
307
+ - [ ] 測試程式碼是否可執行
308
+ - [ ] Bug 嚴重程度判定是否準確
309
+
310
+ ---
311
+
312
+ ### 4.6 階段六:歸檔
313
+
314
+ 迭代完成後自動歸檔:
315
+
316
+ ```
317
+ speccrew-workspace/iteration-archives/
318
+ └── {序號}-{類型}-{名稱}-{日期}/
319
+ ├── 01.product-requirement/
320
+ ├── 02.feature-design/
321
+ ├── 03.system-design/
322
+ ├── 04.development/
323
+ └── 05.system-test/
324
+ ```
325
+
326
+ ---
327
+
328
+ ## 5. 知識庫說明
329
+
330
+ ### 5.1 業務知識庫(bizs)
331
+
332
+ **作用**:儲存專案的業務功能描述、模組劃分、API 特徵
333
+
334
+ **目錄結構**:
335
+ ```
336
+ knowledges/bizs/
337
+ ├── {platform-type}/
338
+ │ └── {module-name}/
339
+ │ └── feature-spec.md
340
+ └── system-overview.md
341
+ ```
342
+
343
+ **使用場景**:Product Manager、Feature Designer
344
+
345
+ ### 5.2 技術知識庫(techs)
346
+
347
+ **作用**:儲存專案的技術棧、架構約定、開發規約、測試規約
348
+
349
+ **目錄結構**:
350
+ ```
351
+ knowledges/techs/{platform-id}/
352
+ ├── tech-stack.md
353
+ ├── architecture.md
354
+ ├── dev-spec.md
355
+ ├── test-spec.md
356
+ └── INDEX.md
357
+ ```
358
+
359
+ **使用場景**:System Designer、System Developer、Test Manager
360
+
361
+ ---
362
+
363
+ ## 6. 常見問題(FAQ)
364
+
365
+ ### Q1: Agent 不按預期工作怎麼辦?
366
+
367
+ 1. 執行 `speccrew doctor` 檢查安裝完整性
368
+ 2. 確認知識庫已初始化
369
+ 3. 確認當前迭代目錄中有上一階段的產出物
370
+
371
+ ### Q2: 如何跳過某個階段?
372
+
373
+ **不建議跳過**,每階段產出是下階段輸入。
374
+
375
+ 如必須跳過,需手動準備對應階段的輸入文檔,並確保格式符合規範。
376
+
377
+ ### Q3: 如何處理多個需求並行?
378
+
379
+ 每個需求建立獨立迭代目錄:
380
+ ```
381
+ iterations/
382
+ ├── 001-feature-xxx/
383
+ ├── 002-feature-yyy/
384
+ └── 003-feature-zzz/
385
+ ```
386
+
387
+ 各迭代完全隔離,互不影響。
388
+
389
+ ### Q4: 如何更新 SpecCrew 版本?
390
+
391
+ - **全局更新**:`npm update -g speccrew`
392
+ - **專案更新**:在專案目錄執行 `speccrew update`
393
+
394
+ ### Q5: 如何查看歷史迭代?
395
+
396
+ 歸檔後在 `speccrew-workspace/iteration-archives/` 中查看,按 `{序號}-{類型}-{名稱}-{日期}/` 格式組織。
397
+
398
+ ### Q6: 知識庫需要定期更新嗎?
399
+
400
+ 以下情況需要重新初始化:
401
+ - 專案結構發生重大變化
402
+ - 技術棧升級或更換
403
+ - 新增/刪除業務模組
404
+
405
+ ---
406
+
407
+ ## 7. 快速參考
408
+
409
+ ### Agent 啟動速查表
410
+
411
+ | 階段 | Agent | 啟動對話 |
412
+ |------|-------|----------|
413
+ | 診斷 | Team Leader | `@speccrew-team-leader 診斷專案` |
414
+ | 初始化 | Team Leader | `@speccrew-team-leader 初始化技術知識庫` |
415
+ | 需求分析 | Product Manager | `@speccrew-product-manager 我有一個新需求:[描述]` |
416
+ | 功能設計 | Feature Designer | `@speccrew-feature-designer 開始功能設計` |
417
+ | 系統設計 | System Designer | `@speccrew-system-designer 開始系統設計` |
418
+ | 開發實現 | System Developer | `@speccrew-system-developer 開始開發` |
419
+ | 系統測試 | Test Manager | `@speccrew-test-manager 開始測試` |
420
+
421
+ ### Checkpoint 檢查清單
422
+
423
+ | 階段 | Checkpoint 數量 | 關鍵檢查項 |
424
+ |------|-----------------|------------|
425
+ | 需求分析 | 1 | 需求準確性、業務規則完整性、驗收標準可度量性 |
426
+ | 功能設計 | 1 | 場景覆蓋、交互清晰度、資料完整性、異常處理 |
427
+ | 系統設計 | 2 | A:框架評估;B:偽程式碼語法、跨端一致性、錯誤處理 |
428
+ | 開發實現 | 1 | A:環境就緒、整合問題、程式碼規約 |
429
+ | 系統測試 | 2 | A:案例覆蓋;B:測試程式碼可執行性 |
430
+
431
+ ### 產出物路徑速查
432
+
433
+ | 階段 | 產出目錄 | 檔案格式 |
434
+ |------|----------|----------|
435
+ | 需求分析 | `iterations/{iter}/01.product-requirement/` | `[name]-prd.md`, `[name]-bizs-modeling.md` |
436
+ | 功能設計 | `iterations/{iter}/02.feature-design/` | `[name]-feature-spec.md` |
437
+ | 系統設計 | `iterations/{iter}/03.system-design/` | `DESIGN-OVERVIEW.md`, `{platform}/INDEX.md`, `{platform}/{module}-design.md` |
438
+ | 開發實現 | `iterations/{iter}/04.development/` | 原始碼 + `delivery-report.md` |
439
+ | 系統測試 | `iterations/{iter}/05.system-test/` | `cases/`, `code/`, `reports/`, `bugs/` |
440
+ | 歸檔 | `iteration-archives/{iter}-{date}/` | 完整迭代副本 |
441
+
442
+ ---
443
+
444
+ ## 下一步
445
+
446
+ 1. 執行 `speccrew init --ide qoder` 初始化您的專案
447
+ 2. 執行第零步:專案診斷與知識庫初始化
448
+ 3. 按照工作流程逐階段推進,享受規範驅動的開發體驗!