specops 0.2.5 → 0.3.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.
- package/.opencode/agent/specops-codebase-mapper.md +764 -0
- package/.opencode/agent/specops-debugger.md +1246 -0
- package/.opencode/agent/specops-executor.md +475 -0
- package/.opencode/agent/specops-integration-checker.md +443 -0
- package/.opencode/agent/specops-phase-researcher.md +547 -0
- package/.opencode/agent/specops-plan-checker.md +690 -0
- package/.opencode/agent/specops-planner.md +581 -0
- package/.opencode/agent/specops-project-researcher.md +354 -0
- package/.opencode/agent/specops-research-synthesizer.md +242 -0
- package/.opencode/agent/specops-roadmapper.md +642 -0
- package/.opencode/agent/specops-work-verifier.md +573 -0
- package/.opencode/references/checkpoints.md +776 -0
- package/.opencode/references/continuation-format.md +249 -0
- package/.opencode/references/decimal-phase-calculation.md +65 -0
- package/.opencode/references/git-integration.md +248 -0
- package/.opencode/references/git-planning-commit.md +38 -0
- package/.opencode/references/model-profile-resolution.md +34 -0
- package/.opencode/references/model-profiles.md +92 -0
- package/.opencode/references/phase-argument-parsing.md +61 -0
- package/.opencode/references/planning-config.md +196 -0
- package/.opencode/references/questioning.md +145 -0
- package/.opencode/references/tdd.md +263 -0
- package/.opencode/references/ui-brand.md +160 -0
- package/.opencode/references/verification-patterns.md +612 -0
- package/.opencode/templates/DEBUG.md +164 -0
- package/.opencode/templates/UAT.md +180 -0
- package/.opencode/templates/VALIDATION.md +76 -0
- package/.opencode/templates/codebase/architecture.md +255 -0
- package/.opencode/templates/codebase/concerns.md +310 -0
- package/.opencode/templates/codebase/conventions.md +307 -0
- package/.opencode/templates/codebase/integrations.md +280 -0
- package/.opencode/templates/codebase/stack.md +186 -0
- package/.opencode/templates/codebase/structure.md +285 -0
- package/.opencode/templates/codebase/testing.md +480 -0
- package/.opencode/templates/context.md +221 -0
- package/.opencode/templates/continue-here.md +78 -0
- package/.opencode/templates/debug-subagent-prompt.md +91 -0
- package/.opencode/templates/discovery.md +147 -0
- package/.opencode/templates/milestone-archive.md +123 -0
- package/.opencode/templates/milestone.md +115 -0
- package/.opencode/templates/phase-prompt.md +333 -0
- package/.opencode/templates/planner-subagent-prompt.md +117 -0
- package/.opencode/templates/project.md +184 -0
- package/.opencode/templates/requirements.md +130 -0
- package/.opencode/templates/research-project/ARCHITECTURE.md +204 -0
- package/.opencode/templates/research-project/FEATURES.md +147 -0
- package/.opencode/templates/research-project/PITFALLS.md +200 -0
- package/.opencode/templates/research-project/STACK.md +120 -0
- package/.opencode/templates/research-project/SUMMARY.md +170 -0
- package/.opencode/templates/research.md +278 -0
- package/.opencode/templates/retrospective.md +54 -0
- package/.opencode/templates/roadmap.md +202 -0
- package/.opencode/templates/state.md +176 -0
- package/.opencode/templates/summary-complex.md +59 -0
- package/.opencode/templates/summary-minimal.md +41 -0
- package/.opencode/templates/summary-standard.md +48 -0
- package/.opencode/templates/summary.md +248 -0
- package/.opencode/templates/user-setup.md +311 -0
- package/.opencode/templates/verification-report.md +322 -0
- package/.opencode/workflows/add-phase.md +111 -0
- package/.opencode/workflows/add-tests.md +350 -0
- package/.opencode/workflows/add-todo.md +157 -0
- package/.opencode/workflows/audit-milestone.md +297 -0
- package/.opencode/workflows/check-todos.md +176 -0
- package/.opencode/workflows/cleanup.md +152 -0
- package/.opencode/workflows/complete-milestone.md +763 -0
- package/.opencode/workflows/diagnose-issues.md +219 -0
- package/.opencode/workflows/discovery-phase.md +288 -0
- package/.opencode/workflows/discuss-phase.md +542 -0
- package/.opencode/workflows/execute-phase.md +449 -0
- package/.opencode/workflows/execute-plan.md +447 -0
- package/.opencode/workflows/health.md +156 -0
- package/.opencode/workflows/help.md +489 -0
- package/.opencode/workflows/insert-phase.md +129 -0
- package/.opencode/workflows/list-phase-assumptions.md +178 -0
- package/.opencode/workflows/map-codebase.md +315 -0
- package/.opencode/workflows/new-milestone.md +382 -0
- package/.opencode/workflows/new-project.md +1116 -0
- package/.opencode/workflows/pause-work.md +122 -0
- package/.opencode/workflows/plan-milestone-gaps.md +274 -0
- package/.opencode/workflows/plan-phase.md +569 -0
- package/.opencode/workflows/progress.md +381 -0
- package/.opencode/workflows/quick.md +453 -0
- package/.opencode/workflows/remove-phase.md +154 -0
- package/.opencode/workflows/research-phase.md +73 -0
- package/.opencode/workflows/resume-project.md +304 -0
- package/.opencode/workflows/set-profile.md +80 -0
- package/.opencode/workflows/settings.md +213 -0
- package/.opencode/workflows/transition.md +544 -0
- package/.opencode/workflows/update.md +219 -0
- package/.opencode/workflows/verify-phase.md +242 -0
- package/.opencode/workflows/verify-work.md +569 -0
- package/commands/specops/add-phase.md +43 -0
- package/commands/specops/add-tests.md +41 -0
- package/commands/specops/add-todo.md +47 -0
- package/commands/specops/audit-milestone.md +36 -0
- package/commands/specops/check-todos.md +45 -0
- package/commands/specops/cleanup.md +18 -0
- package/commands/specops/complete-milestone.md +136 -0
- package/commands/specops/debug.md +167 -0
- package/commands/specops/discuss-phase.md +83 -0
- package/commands/specops/execute-phase.md +41 -0
- package/commands/specops/health.md +22 -0
- package/commands/specops/help.md +22 -0
- package/commands/specops/insert-phase.md +32 -0
- package/commands/specops/join-discord.md +18 -0
- package/commands/specops/list-phase-assumptions.md +46 -0
- package/commands/specops/map-codebase.md +71 -0
- package/commands/specops/new-milestone.md +44 -0
- package/commands/specops/new-project.md +42 -0
- package/commands/specops/pause-work.md +38 -0
- package/commands/specops/plan-milestone-gaps.md +34 -0
- package/commands/specops/plan-phase.md +45 -0
- package/commands/specops/progress.md +24 -0
- package/commands/specops/quick.md +41 -0
- package/commands/specops/reapply-patches.md +111 -0
- package/commands/specops/remove-phase.md +31 -0
- package/commands/specops/research-phase.md +189 -0
- package/commands/specops/resume-work.md +40 -0
- package/commands/specops/set-profile.md +34 -0
- package/commands/specops/settings.md +36 -0
- package/commands/specops/update.md +37 -0
- package/commands/specops/verify-work.md +38 -0
- package/dist/__integration__/fixtures/generator.d.ts +4 -0
- package/dist/__integration__/fixtures/generator.js +1 -0
- package/dist/__integration__/mocks/server.d.ts +7 -0
- package/dist/__integration__/mocks/server.js +1 -0
- package/dist/__integration__/setup.d.ts +6 -0
- package/dist/__integration__/setup.js +1 -0
- package/dist/acceptance/lazyDetector.js +1 -1
- package/dist/acceptance/reporter.js +1 -1
- package/dist/acceptance/runner.js +1 -1
- package/dist/cli.js +1 -1
- package/dist/context/index.js +1 -1
- package/dist/context/promptTemplate.js +1 -1
- package/dist/context/techContextLoader.js +1 -1
- package/dist/engine.d.ts +1 -0
- package/dist/engine.js +1 -1
- package/dist/evolution/distiller.js +1 -1
- package/dist/evolution/index.js +1 -1
- package/dist/evolution/memoryGraph.js +1 -1
- package/dist/evolution/selector.js +1 -1
- package/dist/evolution/signals.js +1 -1
- package/dist/evolution/solidify.js +1 -1
- package/dist/evolution/store.js +1 -1
- package/dist/evolution/types.js +1 -1
- package/dist/init.d.ts +4 -3
- package/dist/init.js +1 -1
- package/dist/machines/agentMachine.js +1 -1
- package/dist/machines/supervisorMachine.js +1 -1
- package/dist/persistence/schema.js +1 -1
- package/dist/persistence/stateFile.js +1 -1
- package/dist/plugin-engine.js +1 -1
- package/dist/plugin.js +1 -1
- package/dist/requirement-analysis/analyzers/repository-parser.d.ts +121 -0
- package/dist/requirement-analysis/analyzers/repository-parser.js +1 -0
- package/dist/requirement-analysis/generators/prd-generator.d.ts +90 -0
- package/dist/requirement-analysis/generators/prd-generator.js +1 -0
- package/dist/requirement-analysis/integrations/v1-integration.d.ts +73 -0
- package/dist/requirement-analysis/integrations/v1-integration.js +1 -0
- package/dist/requirement-analysis/tools/analyze-requirements.js +1 -0
- package/dist/requirement-analysis/types/analysis-result.d.ts +326 -0
- package/dist/requirement-analysis/types/analysis-result.js +1 -0
- package/dist/requirement-analysis/types/feature-mapping.d.ts +294 -0
- package/dist/requirement-analysis/types/feature-mapping.js +1 -0
- package/dist/requirement-analysis/types/index.d.ts +171 -0
- package/dist/requirement-analysis/types/index.js +1 -0
- package/dist/requirement-analysis/types/tech-stack.d.ts +213 -0
- package/dist/requirement-analysis/types/tech-stack.js +1 -0
- package/dist/requirement-analysis/utils/error-handler.d.ts +112 -0
- package/dist/requirement-analysis/utils/error-handler.js +1 -0
- package/dist/types/index.d.ts +4 -2
- package/dist/types/index.js +1 -1
- package/dist/utils/id.js +1 -1
- package/package.json +4 -2
- package/skills/competitor-search/SKILL.md +169 -0
- package/skills/demand-analysis/SKILL.md +307 -0
- package/skills/feature-search/SKILL.md +182 -0
- package/skills/requirement-analysis/README.md +464 -0
- package/skills/requirement-analysis/SKILL.md +224 -0
- package/skills/requirement-analysis/templates/feature-mapping-template.json +210 -0
- package/skills/requirement-analysis/templates/prd-template.md +104 -0
- package/skills/tech-selection/SKILL.md +198 -0
- package/dist/__e2e__/01-state-engine.e2e.test.d.ts +0 -10
- package/dist/__e2e__/01-state-engine.e2e.test.js +0 -1
- package/dist/acceptance/lazyDetector.test.d.ts +0 -1
- package/dist/acceptance/lazyDetector.test.js +0 -1
- package/dist/acceptance/reporter.test.d.ts +0 -1
- package/dist/acceptance/reporter.test.js +0 -1
- package/dist/acceptance/runner.test.d.ts +0 -1
- package/dist/acceptance/runner.test.js +0 -1
- package/dist/context/promptTemplate.test.d.ts +0 -1
- package/dist/context/promptTemplate.test.js +0 -1
- package/dist/context/techContextLoader.test.d.ts +0 -1
- package/dist/context/techContextLoader.test.js +0 -1
- package/dist/machines/agentMachine.test.d.ts +0 -1
- package/dist/machines/agentMachine.test.js +0 -1
- package/dist/machines/supervisorMachine.test.d.ts +0 -1
- package/dist/machines/supervisorMachine.test.js +0 -1
- package/dist/persistence/stateFile.test.d.ts +0 -1
- package/dist/persistence/stateFile.test.js +0 -1
|
@@ -0,0 +1,489 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
显示完整的 SpecOps 命令参考。仅输出参考内容。不要添加项目分析、git 状态、下一步建议或参考之外的任何评论。
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
<reference>
|
|
6
|
+
# SpecOps 命令参考
|
|
7
|
+
|
|
8
|
+
**SpecOps**(Get Shit Done)创建层次化的项目计划,专为使用 Claude Code 的单人 Agent 开发优化。
|
|
9
|
+
|
|
10
|
+
## 快速开始
|
|
11
|
+
|
|
12
|
+
1. `/specops:new-project` - 初始化项目(包括研究、需求、路线图)
|
|
13
|
+
2. `/specops:plan-phase 1` - 为第一个阶段创建详细计划
|
|
14
|
+
3. `/specops:execute-phase 1` - 执行该阶段
|
|
15
|
+
|
|
16
|
+
## 保持更新
|
|
17
|
+
|
|
18
|
+
SpecOps 迭代迅速。定期更新:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npx specops-cc@latest
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## 核心工作流
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
/specops:new-project → /specops:plan-phase → /specops:execute-phase → 重复
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### 项目初始化
|
|
31
|
+
|
|
32
|
+
**`/specops:new-project`**
|
|
33
|
+
通过统一流程初始化新项目。
|
|
34
|
+
|
|
35
|
+
一个命令带你从想法到准备规划:
|
|
36
|
+
- 深度提问以了解你要构建什么
|
|
37
|
+
- 可选的领域研究(生成 4 个并行研究代理)
|
|
38
|
+
- 需求定义,含 v1/v2/不在范围内的划分
|
|
39
|
+
- 路线图创建,含阶段分解和成功标准
|
|
40
|
+
|
|
41
|
+
创建所有 `.planning/` 产物:
|
|
42
|
+
- `PROJECT.md` — 愿景和需求
|
|
43
|
+
- `config.json` — 工作流模式(interactive/yolo)
|
|
44
|
+
- `research/` — 领域研究(如果选择了)
|
|
45
|
+
- `REQUIREMENTS.md` — 带 REQ-ID 的范围化需求
|
|
46
|
+
- `ROADMAP.md` — 映射到需求的阶段
|
|
47
|
+
- `STATE.md` — 项目记忆
|
|
48
|
+
|
|
49
|
+
用法:`/specops:new-project`
|
|
50
|
+
|
|
51
|
+
**`/specops:map-codebase`**
|
|
52
|
+
为棕地项目映射现有代码库。
|
|
53
|
+
|
|
54
|
+
- 使用并行 Explore 代理分析代码库
|
|
55
|
+
- 创建 `.planning/codebase/`,包含 7 份聚焦文档
|
|
56
|
+
- 覆盖技术栈、架构、结构、约定、测试、集成、关注点
|
|
57
|
+
- 在现有代码库上运行 `/specops:new-project` 之前使用
|
|
58
|
+
|
|
59
|
+
用法:`/specops:map-codebase`
|
|
60
|
+
|
|
61
|
+
### 阶段规划
|
|
62
|
+
|
|
63
|
+
**`/specops:discuss-phase <number>`**
|
|
64
|
+
在规划之前帮助表达你对阶段的愿景。
|
|
65
|
+
|
|
66
|
+
- 捕获你对这个阶段如何运作的想象
|
|
67
|
+
- 创建 CONTEXT.md,包含你的愿景、核心要素和边界
|
|
68
|
+
- 当你对某些东西应该是什么样子/感觉时使用
|
|
69
|
+
|
|
70
|
+
用法:`/specops:discuss-phase 2`
|
|
71
|
+
|
|
72
|
+
**`/specops:research-phase <number>`**
|
|
73
|
+
针对小众/复杂领域的全面生态系统研究。
|
|
74
|
+
|
|
75
|
+
- 发现标准技术栈、架构模式、陷阱
|
|
76
|
+
- 创建 RESEARCH.md,包含「专家如何构建这个」的知识
|
|
77
|
+
- 用于 3D、游戏、音频、着色器、ML 和其他专业领域
|
|
78
|
+
- 不仅限于「用哪个库」,而是生态系统知识
|
|
79
|
+
|
|
80
|
+
用法:`/specops:research-phase 3`
|
|
81
|
+
|
|
82
|
+
**`/specops:list-phase-assumptions <number>`**
|
|
83
|
+
在 Claude 开始之前查看它计划做什么。
|
|
84
|
+
|
|
85
|
+
- 显示 Claude 对阶段的预期方案
|
|
86
|
+
- 如果 Claude 误解了你的愿景,可以纠正方向
|
|
87
|
+
- 不创建文件——仅对话输出
|
|
88
|
+
|
|
89
|
+
用法:`/specops:list-phase-assumptions 3`
|
|
90
|
+
|
|
91
|
+
**`/specops:plan-phase <number>`**
|
|
92
|
+
为特定阶段创建详细的执行计划。
|
|
93
|
+
|
|
94
|
+
- 生成 `.planning/phases/XX-phase-name/XX-YY-PLAN.md`
|
|
95
|
+
- 将阶段分解为具体、可执行的任务
|
|
96
|
+
- 包含验证标准和成功衡量
|
|
97
|
+
- 每个阶段支持多个计划(XX-01、XX-02 等)
|
|
98
|
+
|
|
99
|
+
用法:`/specops:plan-phase 1`
|
|
100
|
+
结果:创建 `.planning/phases/01-foundation/01-01-PLAN.md`
|
|
101
|
+
|
|
102
|
+
**PRD 快速路径:** 传递 `--prd path/to/requirements.md` 可完全跳过 discuss-phase。你的 PRD 成为 CONTEXT.md 中的锁定决策。当你已经有明确的验收标准时很有用。
|
|
103
|
+
|
|
104
|
+
### 执行
|
|
105
|
+
|
|
106
|
+
**`/specops:execute-phase <phase-number>`**
|
|
107
|
+
执行阶段中的所有计划。
|
|
108
|
+
|
|
109
|
+
- 按波次分组计划(来自 frontmatter),按顺序执行波次
|
|
110
|
+
- 每个波次内的计划通过 Task 工具并行运行
|
|
111
|
+
- 所有计划完成后验证阶段目标
|
|
112
|
+
- 更新 REQUIREMENTS.md、ROADMAP.md、STATE.md
|
|
113
|
+
|
|
114
|
+
用法:`/specops:execute-phase 5`
|
|
115
|
+
|
|
116
|
+
### 快速模式
|
|
117
|
+
|
|
118
|
+
**`/specops:quick`**
|
|
119
|
+
使用 SpecOps 保障执行小型临时任务,但跳过可选代理。
|
|
120
|
+
|
|
121
|
+
快速模式使用相同系统但路径更短:
|
|
122
|
+
- 生成规划器 + 执行器(跳过研究器、检查器、验证器)
|
|
123
|
+
- 快速任务存放在 `.planning/quick/`,与计划阶段分开
|
|
124
|
+
- 更新 STATE.md 跟踪(不更新 ROADMAP.md)
|
|
125
|
+
|
|
126
|
+
当你确切知道要做什么且任务小到不需要研究或验证时使用。
|
|
127
|
+
|
|
128
|
+
用法:`/specops:quick`
|
|
129
|
+
结果:创建 `.planning/quick/NNN-slug/PLAN.md`、`.planning/quick/NNN-slug/SUMMARY.md`
|
|
130
|
+
|
|
131
|
+
### 路线图管理
|
|
132
|
+
|
|
133
|
+
**`/specops:add-phase <description>`**
|
|
134
|
+
在当前里程碑末尾添加新阶段。
|
|
135
|
+
|
|
136
|
+
- 追加到 ROADMAP.md
|
|
137
|
+
- 使用下一个顺序编号
|
|
138
|
+
- 更新阶段目录结构
|
|
139
|
+
|
|
140
|
+
用法:`/specops:add-phase "Add admin dashboard"`
|
|
141
|
+
|
|
142
|
+
**`/specops:insert-phase <after> <description>`**
|
|
143
|
+
在现有阶段之间插入紧急工作的小数阶段。
|
|
144
|
+
|
|
145
|
+
- 创建中间阶段(例如 7 和 8 之间的 7.1)
|
|
146
|
+
- 适用于里程碑中途发现的必须完成的工作
|
|
147
|
+
- 保持阶段顺序
|
|
148
|
+
|
|
149
|
+
用法:`/specops:insert-phase 7 "Fix critical auth bug"`
|
|
150
|
+
结果:创建 Phase 7.1
|
|
151
|
+
|
|
152
|
+
**`/specops:remove-phase <number>`**
|
|
153
|
+
移除未来阶段并重新编号后续阶段。
|
|
154
|
+
|
|
155
|
+
- 删除阶段目录和所有引用
|
|
156
|
+
- 重新编号所有后续阶段以填补空缺
|
|
157
|
+
- 仅适用于未开始的未来阶段
|
|
158
|
+
- Git 提交保留历史记录
|
|
159
|
+
|
|
160
|
+
用法:`/specops:remove-phase 17`
|
|
161
|
+
结果:Phase 17 删除,phases 18-20 变为 17-19
|
|
162
|
+
|
|
163
|
+
### 里程碑管理
|
|
164
|
+
|
|
165
|
+
**`/specops:new-milestone <name>`**
|
|
166
|
+
通过统一流程开始新里程碑。
|
|
167
|
+
|
|
168
|
+
- 深度提问以了解你接下来要构建什么
|
|
169
|
+
- 可选的领域研究(生成 4 个并行研究代理)
|
|
170
|
+
- 需求定义,含范围划分
|
|
171
|
+
- 路线图创建,含阶段分解
|
|
172
|
+
|
|
173
|
+
为棕地项目(已有 PROJECT.md)提供与 `/specops:new-project` 相同的流程。
|
|
174
|
+
|
|
175
|
+
用法:`/specops:new-milestone "v2.0 Features"`
|
|
176
|
+
|
|
177
|
+
**`/specops:complete-milestone <version>`**
|
|
178
|
+
归档已完成的里程碑并准备下一版本。
|
|
179
|
+
|
|
180
|
+
- 在 MILESTONES.md 中创建条目和统计
|
|
181
|
+
- 将完整详情归档到 milestones/ 目录
|
|
182
|
+
- 为发布创建 git tag
|
|
183
|
+
- 为下一版本准备工作区
|
|
184
|
+
|
|
185
|
+
用法:`/specops:complete-milestone 1.0.0`
|
|
186
|
+
|
|
187
|
+
### 进度跟踪
|
|
188
|
+
|
|
189
|
+
**`/specops:progress`**
|
|
190
|
+
检查项目状态并智能路由到下一个操作。
|
|
191
|
+
|
|
192
|
+
- 显示可视化进度条和完成百分比
|
|
193
|
+
- 从 SUMMARY 文件汇总近期工作
|
|
194
|
+
- 显示当前位置和下一步
|
|
195
|
+
- 列出关键决策和待解决问题
|
|
196
|
+
- 提供执行下一个计划或创建计划(如缺失)的选项
|
|
197
|
+
- 检测 100% 里程碑完成
|
|
198
|
+
|
|
199
|
+
用法:`/specops:progress`
|
|
200
|
+
|
|
201
|
+
### 会话管理
|
|
202
|
+
|
|
203
|
+
**`/specops:resume-work`**
|
|
204
|
+
从之前的会话恢复工作,完整恢复上下文。
|
|
205
|
+
|
|
206
|
+
- 读取 STATE.md 获取项目上下文
|
|
207
|
+
- 显示当前位置和近期进展
|
|
208
|
+
- 根据项目状态提供下一步操作
|
|
209
|
+
|
|
210
|
+
用法:`/specops:resume-work`
|
|
211
|
+
|
|
212
|
+
**`/specops:pause-work`**
|
|
213
|
+
在阶段中途暂停工作时创建上下文交接。
|
|
214
|
+
|
|
215
|
+
- 创建 .continue-here 文件记录当前状态
|
|
216
|
+
- 更新 STATE.md 会话连续性部分
|
|
217
|
+
- 捕获进行中的工作上下文
|
|
218
|
+
|
|
219
|
+
用法:`/specops:pause-work`
|
|
220
|
+
|
|
221
|
+
### 调试
|
|
222
|
+
|
|
223
|
+
**`/specops:debug [issue description]`**
|
|
224
|
+
跨上下文重置的持久化系统调试。
|
|
225
|
+
|
|
226
|
+
- 通过自适应提问收集症状
|
|
227
|
+
- 创建 `.planning/debug/[slug].md` 跟踪调查
|
|
228
|
+
- 使用科学方法调查(证据 → 假设 → 测试)
|
|
229
|
+
- 可在 `/clear` 后存活——不带参数运行 `/specops:debug` 即可恢复
|
|
230
|
+
- 将已解决的问题归档到 `.planning/debug/resolved/`
|
|
231
|
+
|
|
232
|
+
用法:`/specops:debug "login button doesn't work"`
|
|
233
|
+
用法:`/specops:debug`(恢复活跃会话)
|
|
234
|
+
|
|
235
|
+
### 待办事项管理
|
|
236
|
+
|
|
237
|
+
**`/specops:add-todo [description]`**
|
|
238
|
+
从当前对话中捕获想法或任务作为待办事项。
|
|
239
|
+
|
|
240
|
+
- 从对话中提取上下文(或使用提供的描述)
|
|
241
|
+
- 在 `.planning/todos/pending/` 中创建结构化待办文件
|
|
242
|
+
- 从文件路径推断所属区域以便分组
|
|
243
|
+
- 创建前检查重复
|
|
244
|
+
- 更新 STATE.md 待办计数
|
|
245
|
+
|
|
246
|
+
用法:`/specops:add-todo`(从对话推断)
|
|
247
|
+
用法:`/specops:add-todo Add auth token refresh`
|
|
248
|
+
|
|
249
|
+
**`/specops:check-todos [area]`**
|
|
250
|
+
列出待办事项并选择一个来处理。
|
|
251
|
+
|
|
252
|
+
- 列出所有待办事项,含标题、区域、时间
|
|
253
|
+
- 可选区域过滤(如 `/specops:check-todos api`)
|
|
254
|
+
- 为选中的待办加载完整上下文
|
|
255
|
+
- 路由到相应操作(立即处理、添加到阶段、头脑风暴)
|
|
256
|
+
- 开始工作时将待办移到 done/
|
|
257
|
+
|
|
258
|
+
用法:`/specops:check-todos`
|
|
259
|
+
用法:`/specops:check-todos api`
|
|
260
|
+
|
|
261
|
+
### 用户验收测试
|
|
262
|
+
|
|
263
|
+
**`/specops:verify-work [phase]`**
|
|
264
|
+
通过对话式 UAT 验证已构建的功能。
|
|
265
|
+
|
|
266
|
+
- 从 SUMMARY.md 文件中提取可测试的交付物
|
|
267
|
+
- 逐个展示测试(是/否响应)
|
|
268
|
+
- 自动诊断失败并创建修复计划
|
|
269
|
+
- 发现问题后准备重新执行
|
|
270
|
+
|
|
271
|
+
用法:`/specops:verify-work 3`
|
|
272
|
+
|
|
273
|
+
### 里程碑审计
|
|
274
|
+
|
|
275
|
+
**`/specops:audit-milestone [version]`**
|
|
276
|
+
对照原始意图审计里程碑完成情况。
|
|
277
|
+
|
|
278
|
+
- 读取所有阶段的 VERIFICATION.md 文件
|
|
279
|
+
- 检查需求覆盖率
|
|
280
|
+
- 生成集成检查器用于跨阶段连接
|
|
281
|
+
- 创建 MILESTONE-AUDIT.md,包含差距和技术债务
|
|
282
|
+
|
|
283
|
+
用法:`/specops:audit-milestone`
|
|
284
|
+
|
|
285
|
+
**`/specops:plan-milestone-gaps`**
|
|
286
|
+
创建阶段来弥补审计发现的差距。
|
|
287
|
+
|
|
288
|
+
- 读取 MILESTONE-AUDIT.md 并将差距分组为阶段
|
|
289
|
+
- 按需求优先级排序(must/should/nice)
|
|
290
|
+
- 将差距修复阶段添加到 ROADMAP.md
|
|
291
|
+
- 准备好对新阶段运行 `/specops:plan-phase`
|
|
292
|
+
|
|
293
|
+
用法:`/specops:plan-milestone-gaps`
|
|
294
|
+
|
|
295
|
+
### 配置
|
|
296
|
+
|
|
297
|
+
**`/specops:settings`**
|
|
298
|
+
交互式配置工作流开关和模型配置。
|
|
299
|
+
|
|
300
|
+
- 切换研究器、计划检查器、验证器代理
|
|
301
|
+
- 选择模型配置(quality/balanced/budget)
|
|
302
|
+
- 更新 `.planning/config.json`
|
|
303
|
+
|
|
304
|
+
用法:`/specops:settings`
|
|
305
|
+
|
|
306
|
+
**`/specops:set-profile <profile>`**
|
|
307
|
+
快速切换 SpecOps 代理的模型配置。
|
|
308
|
+
|
|
309
|
+
- `quality` — 除验证外全部使用 Opus
|
|
310
|
+
- `balanced` — 规划用 Opus,执行用 Sonnet(默认)
|
|
311
|
+
- `budget` — 编写用 Sonnet,研究/验证用 Haiku
|
|
312
|
+
|
|
313
|
+
用法:`/specops:set-profile budget`
|
|
314
|
+
|
|
315
|
+
### 实用命令
|
|
316
|
+
|
|
317
|
+
**`/specops:cleanup`**
|
|
318
|
+
归档已完成里程碑中积累的阶段目录。
|
|
319
|
+
|
|
320
|
+
- 识别仍在 `.planning/phases/` 中的已完成里程碑阶段
|
|
321
|
+
- 移动前显示预览摘要
|
|
322
|
+
- 将阶段目录移到 `.planning/milestones/v{X.Y}-phases/`
|
|
323
|
+
- 在多个里程碑后用于减少 `.planning/phases/` 的混乱
|
|
324
|
+
|
|
325
|
+
用法:`/specops:cleanup`
|
|
326
|
+
|
|
327
|
+
**`/specops:help`**
|
|
328
|
+
显示此命令参考。
|
|
329
|
+
|
|
330
|
+
**`/specops:update`**
|
|
331
|
+
更新 SpecOps 到最新版本并预览变更日志。
|
|
332
|
+
|
|
333
|
+
- 显示已安装版本与最新版本的对比
|
|
334
|
+
- 显示你错过的版本的变更日志条目
|
|
335
|
+
- 高亮破坏性变更
|
|
336
|
+
- 安装前确认
|
|
337
|
+
- 比直接运行 `npx specops-cc` 更好
|
|
338
|
+
|
|
339
|
+
用法:`/specops:update`
|
|
340
|
+
|
|
341
|
+
**`/specops:join-discord`**
|
|
342
|
+
加入 SpecOps Discord 社区。
|
|
343
|
+
|
|
344
|
+
- 获取帮助,分享你正在构建的东西,保持更新
|
|
345
|
+
- 与其他 SpecOps 用户联系
|
|
346
|
+
|
|
347
|
+
用法:`/specops:join-discord`
|
|
348
|
+
|
|
349
|
+
## 文件与结构
|
|
350
|
+
|
|
351
|
+
```
|
|
352
|
+
.planning/
|
|
353
|
+
├── PROJECT.md # 项目愿景
|
|
354
|
+
├── ROADMAP.md # 当前阶段分解
|
|
355
|
+
├── STATE.md # 项目记忆与上下文
|
|
356
|
+
├── RETROSPECTIVE.md # 持续更新的回顾(每个里程碑更新)
|
|
357
|
+
├── config.json # 工作流模式与门控
|
|
358
|
+
├── todos/ # 捕获的想法和任务
|
|
359
|
+
│ ├── pending/ # 等待处理的待办
|
|
360
|
+
│ └── done/ # 已完成的待办
|
|
361
|
+
├── debug/ # 活跃调试会话
|
|
362
|
+
│ └── resolved/ # 已归档的已解决问题
|
|
363
|
+
├── milestones/
|
|
364
|
+
│ ├── v1.0-ROADMAP.md # 归档的路线图快照
|
|
365
|
+
│ ├── v1.0-REQUIREMENTS.md # 归档的需求
|
|
366
|
+
│ └── v1.0-phases/ # 归档的阶段目录(通过 /specops:cleanup 或 --archive-phases)
|
|
367
|
+
│ ├── 01-foundation/
|
|
368
|
+
│ └── 02-core-features/
|
|
369
|
+
├── codebase/ # 代码库映射(棕地项目)
|
|
370
|
+
│ ├── STACK.md # 语言、框架、依赖
|
|
371
|
+
│ ├── ARCHITECTURE.md # 模式、层次、数据流
|
|
372
|
+
│ ├── STRUCTURE.md # 目录布局、关键文件
|
|
373
|
+
│ ├── CONVENTIONS.md # 编码标准、命名
|
|
374
|
+
│ ├── TESTING.md # 测试设置、模式
|
|
375
|
+
│ ├── INTEGRATIONS.md # 外部服务、API
|
|
376
|
+
│ └── CONCERNS.md # 技术债务、已知问题
|
|
377
|
+
└── phases/
|
|
378
|
+
├── 01-foundation/
|
|
379
|
+
│ ├── 01-01-PLAN.md
|
|
380
|
+
│ └── 01-01-SUMMARY.md
|
|
381
|
+
└── 02-core-features/
|
|
382
|
+
├── 02-01-PLAN.md
|
|
383
|
+
└── 02-01-SUMMARY.md
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
## 工作流模式
|
|
387
|
+
|
|
388
|
+
在 `/specops:new-project` 期间设置:
|
|
389
|
+
|
|
390
|
+
**交互模式**
|
|
391
|
+
|
|
392
|
+
- 确认每个主要决策
|
|
393
|
+
- 在检查点暂停等待批准
|
|
394
|
+
- 全程提供更多指导
|
|
395
|
+
|
|
396
|
+
**YOLO 模式**
|
|
397
|
+
|
|
398
|
+
- 自动批准大多数决策
|
|
399
|
+
- 无需确认即执行计划
|
|
400
|
+
- 仅在关键检查点停止
|
|
401
|
+
|
|
402
|
+
随时通过编辑 `.planning/config.json` 更改
|
|
403
|
+
|
|
404
|
+
## 规划配置
|
|
405
|
+
|
|
406
|
+
在 `.planning/config.json` 中配置规划产物的管理方式:
|
|
407
|
+
|
|
408
|
+
**`planning.commit_docs`**(默认:`true`)
|
|
409
|
+
- `true`:规划产物提交到 git(标准工作流)
|
|
410
|
+
- `false`:规划产物仅保留在本地,不提交
|
|
411
|
+
|
|
412
|
+
当 `commit_docs: false` 时:
|
|
413
|
+
- 将 `.planning/` 添加到你的 `.gitignore`
|
|
414
|
+
- 适用于 OSS 贡献、客户项目或保持规划私密
|
|
415
|
+
- 所有规划文件仍正常工作,只是不被 git 跟踪
|
|
416
|
+
|
|
417
|
+
**`planning.search_gitignored`**(默认:`false`)
|
|
418
|
+
- `true`:在广泛的 ripgrep 搜索中添加 `--no-ignore`
|
|
419
|
+
- 仅在 `.planning/` 被 gitignore 且你希望项目范围搜索包含它时需要
|
|
420
|
+
|
|
421
|
+
配置示例:
|
|
422
|
+
```json
|
|
423
|
+
{
|
|
424
|
+
"planning": {
|
|
425
|
+
"commit_docs": false,
|
|
426
|
+
"search_gitignored": true
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
## 常见工作流
|
|
432
|
+
|
|
433
|
+
**启动新项目:**
|
|
434
|
+
|
|
435
|
+
```
|
|
436
|
+
/specops:new-project # 统一流程:提问 → 研究 → 需求 → 路线图
|
|
437
|
+
/clear
|
|
438
|
+
/specops:plan-phase 1 # 为第一阶段创建计划
|
|
439
|
+
/clear
|
|
440
|
+
/specops:execute-phase 1 # 执行阶段中所有计划
|
|
441
|
+
```
|
|
442
|
+
|
|
443
|
+
**休息后恢复工作:**
|
|
444
|
+
|
|
445
|
+
```
|
|
446
|
+
/specops:progress # 查看上次停在哪里并继续
|
|
447
|
+
```
|
|
448
|
+
|
|
449
|
+
**添加紧急的里程碑中途工作:**
|
|
450
|
+
|
|
451
|
+
```
|
|
452
|
+
/specops:insert-phase 5 "Critical security fix"
|
|
453
|
+
/specops:plan-phase 5.1
|
|
454
|
+
/specops:execute-phase 5.1
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
**完成里程碑:**
|
|
458
|
+
|
|
459
|
+
```
|
|
460
|
+
/specops:complete-milestone 1.0.0
|
|
461
|
+
/clear
|
|
462
|
+
/specops:new-milestone # 开始下一个里程碑(提问 → 研究 → 需求 → 路线图)
|
|
463
|
+
```
|
|
464
|
+
|
|
465
|
+
**工作中捕获想法:**
|
|
466
|
+
|
|
467
|
+
```
|
|
468
|
+
/specops:add-todo # 从对话上下文中捕获
|
|
469
|
+
/specops:add-todo Fix modal z-index # 用明确描述捕获
|
|
470
|
+
/specops:check-todos # 查看并处理待办
|
|
471
|
+
/specops:check-todos api # 按区域过滤
|
|
472
|
+
```
|
|
473
|
+
|
|
474
|
+
**调试问题:**
|
|
475
|
+
|
|
476
|
+
```
|
|
477
|
+
/specops:debug "form submission fails silently" # 开始调试会话
|
|
478
|
+
# ... 调查进行中,上下文填满 ...
|
|
479
|
+
/clear
|
|
480
|
+
/specops:debug # 从上次断点恢复
|
|
481
|
+
```
|
|
482
|
+
|
|
483
|
+
## 获取帮助
|
|
484
|
+
|
|
485
|
+
- 阅读 `.planning/PROJECT.md` 了解项目愿景
|
|
486
|
+
- 阅读 `.planning/STATE.md` 了解当前上下文
|
|
487
|
+
- 查看 `.planning/ROADMAP.md` 了解阶段状态
|
|
488
|
+
- 运行 `/specops:progress` 查看当前进度
|
|
489
|
+
</reference>
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
<purpose>
|
|
2
|
+
在里程碑进行中发现紧急工作时,在现有整数阶段之间插入小数阶段。使用小数编号(72.1、72.2 等)来保持已规划阶段的逻辑顺序,同时容纳紧急插入而无需重新编号整个路线图。
|
|
3
|
+
</purpose>
|
|
4
|
+
|
|
5
|
+
<required_reading>
|
|
6
|
+
在开始之前,阅读调用提示的 execution_context 中引用的所有文件。
|
|
7
|
+
</required_reading>
|
|
8
|
+
|
|
9
|
+
<process>
|
|
10
|
+
|
|
11
|
+
<step name="parse_arguments">
|
|
12
|
+
解析命令参数:
|
|
13
|
+
- 第一个参数:要在其后插入的整数阶段编号
|
|
14
|
+
- 剩余参数:阶段描述
|
|
15
|
+
|
|
16
|
+
示例:`/specops:insert-phase 72 Fix critical auth bug`
|
|
17
|
+
-> after = 72
|
|
18
|
+
-> description = "Fix critical auth bug"
|
|
19
|
+
|
|
20
|
+
如果参数缺失:
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
ERROR: Both phase number and description required
|
|
24
|
+
Usage: /specops:insert-phase <after> <description>
|
|
25
|
+
Example: /specops:insert-phase 72 Fix critical auth bug
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
退出。
|
|
29
|
+
|
|
30
|
+
验证第一个参数是否为整数。
|
|
31
|
+
</step>
|
|
32
|
+
|
|
33
|
+
<step name="init_context">
|
|
34
|
+
加载阶段操作上下文:
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
INIT=$(node .opencode/bin/specops-tools.cjs init phase-op "${after_phase}")
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
检查 init JSON 中的 `roadmap_exists`。如果为 false:
|
|
41
|
+
```
|
|
42
|
+
ERROR: No roadmap found (.planning/ROADMAP.md)
|
|
43
|
+
```
|
|
44
|
+
退出。
|
|
45
|
+
</step>
|
|
46
|
+
|
|
47
|
+
<step name="insert_phase">
|
|
48
|
+
**将阶段插入操作委托给 specops-tools:**
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
RESULT=$(node .opencode/bin/specops-tools.cjs phase insert "${after_phase}" "${description}")
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
CLI 处理以下操作:
|
|
55
|
+
- 验证目标阶段存在于 ROADMAP.md 中
|
|
56
|
+
- 计算下一个小数阶段编号(检查磁盘上已有的小数阶段)
|
|
57
|
+
- 从描述生成 slug
|
|
58
|
+
- 创建阶段目录(`.planning/phases/{N.M}-{slug}/`)
|
|
59
|
+
- 在 ROADMAP.md 中目标阶段之后插入阶段条目,带有 (INSERTED) 标记
|
|
60
|
+
|
|
61
|
+
从结果中提取:`phase_number`、`after_phase`、`name`、`slug`、`directory`。
|
|
62
|
+
</step>
|
|
63
|
+
|
|
64
|
+
<step name="update_project_state">
|
|
65
|
+
更新 STATE.md 以反映插入的阶段:
|
|
66
|
+
|
|
67
|
+
1. 读取 `.planning/STATE.md`
|
|
68
|
+
2. 在 "## Accumulated Context" → "### Roadmap Evolution" 下添加条目:
|
|
69
|
+
```
|
|
70
|
+
- Phase {decimal_phase} inserted after Phase {after_phase}: {description} (URGENT)
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
如果 "Roadmap Evolution" 部分不存在,则创建它。
|
|
74
|
+
</step>
|
|
75
|
+
|
|
76
|
+
<step name="completion">
|
|
77
|
+
展示完成摘要:
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
Phase {decimal_phase} inserted after Phase {after_phase}:
|
|
81
|
+
- Description: {description}
|
|
82
|
+
- Directory: .planning/phases/{decimal-phase}-{slug}/
|
|
83
|
+
- Status: Not planned yet
|
|
84
|
+
- Marker: (INSERTED) - indicates urgent work
|
|
85
|
+
|
|
86
|
+
Roadmap updated: .planning/ROADMAP.md
|
|
87
|
+
Project state updated: .planning/STATE.md
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## 下一步
|
|
92
|
+
|
|
93
|
+
**Phase {decimal_phase}: {description}** -- 紧急插入
|
|
94
|
+
|
|
95
|
+
`/specops:plan-phase {decimal_phase}`
|
|
96
|
+
|
|
97
|
+
<sub>`/clear` 先清理 -> 全新上下文窗口</sub>
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
**其他可用操作:**
|
|
102
|
+
- 审查插入影响:检查 Phase {next_integer} 的依赖是否仍然合理
|
|
103
|
+
- 审查路线图
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
```
|
|
107
|
+
</step>
|
|
108
|
+
|
|
109
|
+
</process>
|
|
110
|
+
|
|
111
|
+
<anti_patterns>
|
|
112
|
+
|
|
113
|
+
- 不要将此命令用于里程碑末尾的计划工作(应使用 /specops:add-phase)
|
|
114
|
+
- 不要在 Phase 1 之前插入(小数 0.1 没有意义)
|
|
115
|
+
- 不要重新编号现有阶段
|
|
116
|
+
- 不要修改目标阶段的内容
|
|
117
|
+
- 不要在此创建计划(那是 /specops:plan-phase 的工作)
|
|
118
|
+
- 不要提交更改(由用户决定何时提交)
|
|
119
|
+
</anti_patterns>
|
|
120
|
+
|
|
121
|
+
<success_criteria>
|
|
122
|
+
阶段插入完成的条件:
|
|
123
|
+
|
|
124
|
+
- [ ] `specops-tools phase insert` 执行成功
|
|
125
|
+
- [ ] 阶段目录已创建
|
|
126
|
+
- [ ] 路线图已更新,包含新阶段条目(含 "(INSERTED)" 标记)
|
|
127
|
+
- [ ] STATE.md 已更新路线图演进记录
|
|
128
|
+
- [ ] 用户已被告知后续步骤及依赖影响
|
|
129
|
+
</success_criteria>
|