@specpow/framework 0.2.2 → 0.3.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.
- package/.specpow/skills/execution-parallel-agents/SKILL.md +0 -5
- package/.specpow/skills/execution-sdd-orchestrator/SKILL.md +366 -0
- package/.specpow/skills/execution-subagent-dispatch/SKILL.md +295 -0
- package/.specpow/skills/execution-subagent-driven-dev/SKILL.md +0 -5
- package/.specpow/skills/planning-apply-change/SKILL.md +0 -5
- package/.specpow/skills/planning-explore/SKILL.md +0 -5
- package/.specpow/skills/planning-propose/SKILL.md +0 -5
- package/.specpow/skills/using-specpow/SKILL.md +232 -0
- package/CHANGELOG.md +143 -0
- package/README.md +55 -20
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +13 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/apply.d.ts +1 -0
- package/dist/commands/apply.d.ts.map +1 -1
- package/dist/commands/apply.js +93 -3
- package/dist/commands/apply.js.map +1 -1
- package/dist/commands/channel.d.ts.map +1 -1
- package/dist/commands/channel.js +10 -3
- package/dist/commands/channel.js.map +1 -1
- package/dist/commands/config.js +1 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/debug.d.ts.map +1 -1
- package/dist/commands/debug.js +0 -1
- package/dist/commands/debug.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +11 -16
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +60 -3
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/propose.d.ts.map +1 -1
- package/dist/commands/propose.js +23 -10
- package/dist/commands/propose.js.map +1 -1
- package/dist/commands/review.d.ts.map +1 -1
- package/dist/commands/review.js +25 -0
- package/dist/commands/review.js.map +1 -1
- package/dist/commands/status.js +2 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +26 -1
- package/dist/commands/verify.js.map +1 -1
- package/dist/core/agent-contract.d.ts +1 -1
- package/dist/core/agent-contract.d.ts.map +1 -1
- package/dist/core/artifact-graph/types.d.ts +4 -4
- package/dist/core/channel/channel-event-log.d.ts +1 -0
- package/dist/core/channel/channel-event-log.d.ts.map +1 -1
- package/dist/core/channel/channel-event-log.js +4 -2
- package/dist/core/channel/channel-event-log.js.map +1 -1
- package/dist/core/channel/channel-runtime.d.ts +8 -1
- package/dist/core/channel/channel-runtime.d.ts.map +1 -1
- package/dist/core/channel/channel-runtime.js +29 -2
- package/dist/core/channel/channel-runtime.js.map +1 -1
- package/dist/core/hooks/hook-registry.d.ts +1 -1
- package/dist/core/hooks/hook-registry.d.ts.map +1 -1
- package/dist/core/hooks/hook-registry.js +13 -15
- package/dist/core/hooks/hook-registry.js.map +1 -1
- package/dist/core/hooks/hook-types.d.ts +3 -3
- package/dist/core/hooks/hook-types.d.ts.map +1 -1
- package/dist/core/hooks/post-tool-call-hook.d.ts.map +1 -1
- package/dist/core/hooks/post-tool-call-hook.js +17 -11
- package/dist/core/hooks/post-tool-call-hook.js.map +1 -1
- package/dist/core/hooks/pre-tool-call-hook.d.ts.map +1 -1
- package/dist/core/hooks/pre-tool-call-hook.js +1 -2
- package/dist/core/hooks/pre-tool-call-hook.js.map +1 -1
- package/dist/core/hooks/session-start-hook.d.ts +1 -1
- package/dist/core/hooks/session-start-hook.d.ts.map +1 -1
- package/dist/core/hooks/session-start-hook.js +70 -18
- package/dist/core/hooks/session-start-hook.js.map +1 -1
- package/dist/core/init/engine.d.ts +6 -0
- package/dist/core/init/engine.d.ts.map +1 -1
- package/dist/core/init/engine.js +1 -1
- package/dist/core/init/engine.js.map +1 -1
- package/dist/core/parsers/index.d.ts.map +1 -1
- package/dist/core/parsers/index.js +16 -0
- package/dist/core/parsers/index.js.map +1 -1
- package/dist/core/sdd-engine/ai-caller.d.ts +5 -0
- package/dist/core/sdd-engine/ai-caller.d.ts.map +1 -1
- package/dist/core/sdd-engine/ai-caller.js +7 -2
- package/dist/core/sdd-engine/ai-caller.js.map +1 -1
- package/dist/core/sdd-engine/controller.d.ts +8 -0
- package/dist/core/sdd-engine/controller.d.ts.map +1 -1
- package/dist/core/sdd-engine/controller.js +26 -13
- package/dist/core/sdd-engine/controller.js.map +1 -1
- package/dist/core/sdd-engine/index.d.ts.map +1 -1
- package/dist/core/sdd-engine/index.js +0 -1
- package/dist/core/sdd-engine/index.js.map +1 -1
- package/dist/core/sdd-engine/model-selector.d.ts +6 -0
- package/dist/core/sdd-engine/model-selector.d.ts.map +1 -1
- package/dist/core/sdd-engine/model-selector.js +6 -0
- package/dist/core/sdd-engine/model-selector.js.map +1 -1
- package/dist/core/templates/index.d.ts.map +1 -1
- package/dist/core/templates/index.js +12 -2
- package/dist/core/templates/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/core/sdd-engine/dispatcher.d.ts +0 -62
- package/dist/core/sdd-engine/dispatcher.d.ts.map +0 -1
- package/dist/core/sdd-engine/dispatcher.js +0 -133
- package/dist/core/sdd-engine/dispatcher.js.map +0 -1
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: using-specpow
|
|
3
|
+
description: Bootstrap 元技能。Host-Driven 模式下会话启动时自动加载。教会宿主 Agent 使用原生工具执行 SDD 工作流。融合 Superpowers using-superpowers 模式 + SpecPow SDD 编排能力。
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
trigger: session-start
|
|
6
|
+
mode: host-driven
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
<SUBAGENT-STOP>
|
|
10
|
+
如果你是被分发去执行特定任务的子代理,忽略此技能。
|
|
11
|
+
</SUBAGENT-STOP>
|
|
12
|
+
|
|
13
|
+
<EXTREMELY_IMPORTANT>
|
|
14
|
+
如果你认为有任何 1% 的可能性某个技能适用于你正在做的事,你绝对必须调用该技能。
|
|
15
|
+
如果一个技能适用于你的任务,你没有选择。你必须使用它。
|
|
16
|
+
这不可协商。你不能合理化地绕过它。
|
|
17
|
+
</EXTREMELY_IMPORTANT>
|
|
18
|
+
|
|
19
|
+
# SpecPow Host-Driven SDD 工作流
|
|
20
|
+
|
|
21
|
+
你已加载 **SpecPow** — 一个规范驱动的 AI 开发框架。
|
|
22
|
+
它结合了 OpenSpec 的规范驱动规划与 Superpowers 的子代理驱动执行。
|
|
23
|
+
|
|
24
|
+
**当前模式:Host-Driven** — 你将使用**原生工具**(subagent、file I/O、bash)执行整个 SDD 方法论。
|
|
25
|
+
TypeScript 代码仅负责非 AI 工作(文件创建、schema 解析)。**你是编排者。**
|
|
26
|
+
|
|
27
|
+
## 铁律
|
|
28
|
+
|
|
29
|
+
1. **先查技能** — 任何响应或行动之前,先扫描 `.specpow/skills/` 目录查找相关技能
|
|
30
|
+
2. **文件即接口** — 子代理通过文件通信(brief、report、review JSON),不通过对话上下文
|
|
31
|
+
3. **Ledger 是真相** — 上下文压缩后,信任 Ledger(`.specpow/sdd/<change>/progress.md`)和 git log,不信任自己的记忆
|
|
32
|
+
4. **TDD 强制** — RED → GREEN → REFACTOR,不可跳过
|
|
33
|
+
5. **规范即契约** — specs 中定义的行为必须被实现遵守
|
|
34
|
+
6. **审查+测试才完成** — 每个任务实施完成后,必须经过**代码审查**且**测试全部通过**,才能标记为 done。审查通过后标记完成;审查未通过则进入修复循环(最多 5 轮),每轮修复后重新审查修复部分。
|
|
35
|
+
7. **发现必须验证** — 审查中发现的每个问题,必须**确认其真实存在**(读代码、跑测试、看 diff)后才能记录。禁止无中生有——不确定的发现标记为 `cannotVerify`,不标记为 finding。
|
|
36
|
+
|
|
37
|
+
## 触发纪律(Trigger Discipline)
|
|
38
|
+
|
|
39
|
+
| 用户说 / 场景 | 你做什么 |
|
|
40
|
+
|---------------|----------|
|
|
41
|
+
| `specpow apply`(默认模式) | 不干预 — TypeScript SDD 引擎接管 |
|
|
42
|
+
| `specpow apply --host-driven`(计划中) | 读取任务清单,按 `execution-subagent-driven-dev` 技能逐任务执行 |
|
|
43
|
+
| `specpow explore "..."` | 调用 `planning-explore` 技能 |
|
|
44
|
+
| `specpow propose <name>` | 调用 `planning-propose` 技能 |
|
|
45
|
+
| 任何编码任务 | 先检查 `.specpow/skills/` 是否有适用技能 |
|
|
46
|
+
| 发现 SDD 工作区(`.specpow/sdd/<change>/`) | 自动读取 progress.md 并按 SDD 流程继续 |
|
|
47
|
+
|
|
48
|
+
## Host-Driven 模式核心概念
|
|
49
|
+
|
|
50
|
+
### 你拥有的原生工具
|
|
51
|
+
|
|
52
|
+
| 工具类型 | 用途 | 示例 |
|
|
53
|
+
|---------|------|------|
|
|
54
|
+
| **Subagent 工具** | 派发实现者/审查者子代理 | Claude Code: Agent tool; Cursor: subagent |
|
|
55
|
+
| **File I/O** | 读写 brief、report、review JSON | Read/Write 工具 |
|
|
56
|
+
| **Bash** | 执行 git 操作、运行测试 | `git diff`, `npm test` |
|
|
57
|
+
| **Ledger** | 记录进度、恢复状态 | 追加到 `.specpow/sdd/<change>/progress.md` |
|
|
58
|
+
|
|
59
|
+
### 文件通信协议
|
|
60
|
+
|
|
61
|
+
子代理之间通过文件通信,每个文件有固定位置:
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
.specpow/
|
|
65
|
+
├── sdd/{change}/
|
|
66
|
+
│ ├── progress.md # 进度账本(追加写入)
|
|
67
|
+
│ ├── task-{N}-brief.md # 任务简报
|
|
68
|
+
│ ├── task-{N}-report.md # 实现报告
|
|
69
|
+
│ └── task-{N}-report.md.fix-{R} # 修复报告(第 R 轮)
|
|
70
|
+
├── openspec/
|
|
71
|
+
│ └── changes/{change}/
|
|
72
|
+
│ ├── specs/ # 规范文件
|
|
73
|
+
│ ├── design.md # 设计文档
|
|
74
|
+
│ └── .openspec.yaml # 变更配置
|
|
75
|
+
└── skills/ # 技能目录(你正在这里)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Report JSON 格式
|
|
79
|
+
|
|
80
|
+
实现者子代理完成后写入 report:
|
|
81
|
+
```json
|
|
82
|
+
{
|
|
83
|
+
"status": "done|blocked|in_progress|done_with_concerns|needs_context",
|
|
84
|
+
"commits": ["sha1", "sha2"],
|
|
85
|
+
"testSummary": "X tests passed",
|
|
86
|
+
"concerns": "any issues or null",
|
|
87
|
+
"fixReport": "修复轮次时的修复说明(仅 fix 轮次填写)"
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### Review JSON 格式
|
|
92
|
+
|
|
93
|
+
审查者子代理完成后写入 review:
|
|
94
|
+
```json
|
|
95
|
+
{
|
|
96
|
+
"specCompliant": true,
|
|
97
|
+
"qualityApproved": true,
|
|
98
|
+
"findings": [
|
|
99
|
+
{
|
|
100
|
+
"id": "F1",
|
|
101
|
+
"severity": "critical|important|minor",
|
|
102
|
+
"description": "...",
|
|
103
|
+
"file": "src/foo.ts",
|
|
104
|
+
"line": 42,
|
|
105
|
+
"isLoadBearing": false
|
|
106
|
+
}
|
|
107
|
+
],
|
|
108
|
+
"cannotVerify": []
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## SDD 编排快速参考
|
|
113
|
+
|
|
114
|
+
完整的编排流程在 `execution-sdd-orchestrator` 技能中详细描述。核心循环:
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
对每个任务:
|
|
118
|
+
1. 创建 Brief → task-{N}-brief.md
|
|
119
|
+
2. 派发实现者 → 读 brief → 写代码 → 写 report JSON → task-{N}-report.md
|
|
120
|
+
3. 检查 report(blocked? → 跳过; done? → 继续)
|
|
121
|
+
4. 派发审查者 → 读 brief + diff + specs → 写 review JSON
|
|
122
|
+
5. 运行测试
|
|
123
|
+
6. 分析结果 → 审查通过 + 测试通过? → 标记 done → 下一任务
|
|
124
|
+
→ 需要修复? → 修复循环(最多 5 轮):
|
|
125
|
+
每轮:修复 findings → 派发重审者(只审查修复部分)→ 运行测试 → 分析
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## 模型选择指导
|
|
129
|
+
|
|
130
|
+
你可以根据任务复杂度选择子代理模型(如果宿主工具支持):
|
|
131
|
+
|
|
132
|
+
| 场景 | 条件 | 推荐级别 |
|
|
133
|
+
|------|------|----------|
|
|
134
|
+
| 机械实现 | ≤2 文件 + 完整 spec | cheap(默认 haiku) |
|
|
135
|
+
| 集成实现 | 多文件协调 | standard(默认 sonnet) |
|
|
136
|
+
| 架构设计 | 需要设计判断 | capable(默认 opus) |
|
|
137
|
+
| 简单审查 | <100 行 diff | cheap(默认 haiku) |
|
|
138
|
+
| 最终审查 | 全变更审查 | capable(默认 opus) |
|
|
139
|
+
| 修复轮次 4-5 | 升级模型 | 比当前高一级 |
|
|
140
|
+
|
|
141
|
+
**注意**:这只是指导。根据你实际可用的模型做出最佳选择。
|
|
142
|
+
|
|
143
|
+
## 技能优先级
|
|
144
|
+
|
|
145
|
+
当多个技能适用时,流程技能先行 — 它们设定方法,然后实施技能执行。
|
|
146
|
+
- "让我们构建 X" → 先 explore/brainstorming,然后实施技能
|
|
147
|
+
- "修复这个 bug" → 先 systematic-debugging,然后领域技能
|
|
148
|
+
- "创建新变更" → 先 propose,然后 apply-change
|
|
149
|
+
- "执行任务" → 先 subagent-driven-dev,然后相关实施技能
|
|
150
|
+
|
|
151
|
+
## 可用技能清单
|
|
152
|
+
|
|
153
|
+
### 规划类(先于编码)
|
|
154
|
+
- `planning-explore` — 苏格拉底式需求探索(无承诺)
|
|
155
|
+
- `planning-propose` — 创建变更提案(proposal + specs + design + tasks)
|
|
156
|
+
- `planning-write-plans` — 将设计转化为极详细的实现计划
|
|
157
|
+
- `planning-write-specs` — 编写 delta 规范
|
|
158
|
+
- `planning-write-design` — 创建架构设计文档
|
|
159
|
+
- `planning-apply-change` — 执行变更(SDD 引擎驱动)
|
|
160
|
+
- `planning-onboard` — 项目入门引导
|
|
161
|
+
- `planning-archive-change` — 归档变更
|
|
162
|
+
- `planning-verify-change` — 规范合规性验证
|
|
163
|
+
- `planning-update-change` — 更新变更
|
|
164
|
+
|
|
165
|
+
### 执行类(编码阶段)
|
|
166
|
+
- `execution-subagent-driven-dev` — **子代理驱动开发**(核心执行引擎)
|
|
167
|
+
- `execution-tdd` — 测试驱动开发(RED-GREEN-REFACTOR)
|
|
168
|
+
- `execution-systematic-debugging` — 4 阶段根因分析
|
|
169
|
+
- `execution-parallel-agents` — 并行子代理调度
|
|
170
|
+
- `execution-git-worktrees` — Git worktree 管理
|
|
171
|
+
- `execution-finish-branch` — 分支完成与合并
|
|
172
|
+
- `execution-requesting-review` — 请求代码审查
|
|
173
|
+
- `execution-receiving-review` — 接收审查反馈
|
|
174
|
+
- `execution-verification-before-completion` — 完成前验证铁律
|
|
175
|
+
|
|
176
|
+
### 质量类(验证阶段)
|
|
177
|
+
- `planning-verify-change` — 规范合规性验证
|
|
178
|
+
|
|
179
|
+
### 业务类(领域能力)
|
|
180
|
+
- `business-java-codegen` — Java 后端代码生成
|
|
181
|
+
- `business-ui-codegen` — Vue2 前端代码生成
|
|
182
|
+
- `business-test-gen` — 测试生成
|
|
183
|
+
- `business-code-review` — 业务代码审查
|
|
184
|
+
- `business-db-design` — 数据库设计
|
|
185
|
+
- `business-prd-writer` — PRD 编写
|
|
186
|
+
- `business-deploy-check` — 发版检查
|
|
187
|
+
- `business-doc-sync` — 文档同步
|
|
188
|
+
- `business-menu-register` — 菜单注册
|
|
189
|
+
|
|
190
|
+
### 元技能类
|
|
191
|
+
- `meta-using-skills` — 如何使用技能
|
|
192
|
+
- `meta-writing-skills` — 如何编写新技能
|
|
193
|
+
- `meta-create-skill` — 引导式技能创建向导
|
|
194
|
+
|
|
195
|
+
## 红旗(立即停止)
|
|
196
|
+
|
|
197
|
+
这些想法意味着 STOP — 你在合理化跳过技能:
|
|
198
|
+
|
|
199
|
+
| 想法 | 现实 |
|
|
200
|
+
|------|------|
|
|
201
|
+
| "这只是个简单问题" | 问题也是任务。检查技能。 |
|
|
202
|
+
| "我需要先了解更多上下文" | 技能检查在澄清问题之前。 |
|
|
203
|
+
| "让我先探索代码库" | 技能告诉你如何探索。先检查。 |
|
|
204
|
+
| "这不需要正式的技能" | 如果技能存在,就使用它。 |
|
|
205
|
+
| "这个技能太重量级了" | 简单的事会变复杂。使用它。 |
|
|
206
|
+
| "我先做这一件事" | 做任何事之前先检查技能。 |
|
|
207
|
+
| "我记得这个技能" | 技能会演进。读当前版本。 |
|
|
208
|
+
| "这不算一个任务" | 行动 = 任务。检查技能。 |
|
|
209
|
+
| "我直接用 claude CLI 调用" | Host-Driven 模式用原生 subagent 工具,不用 CLI 子进程。 |
|
|
210
|
+
| "让我直接调用 SDDController" | 不要!你是编排者,用技能指令而非 TypeScript 代码。 |
|
|
211
|
+
|
|
212
|
+
## 平台适配
|
|
213
|
+
|
|
214
|
+
如果你的 AI 工具在此列表中,读取其参考文件获取特殊指令(**计划中** — 文件尚未创建,当前使用通用指令):
|
|
215
|
+
|
|
216
|
+
- Claude Code: `references/claude-tools.md`(计划中)
|
|
217
|
+
- Cursor: `references/cursor-tools.md`(计划中)
|
|
218
|
+
- CodeBuddy: `references/codebuddy-tools.md`(计划中)
|
|
219
|
+
- GitHub Copilot: `references/copilot-tools.md`(计划中)
|
|
220
|
+
- Codex: `references/codex-tools.md`(计划中)
|
|
221
|
+
|
|
222
|
+
## 用户指令优先级
|
|
223
|
+
|
|
224
|
+
用户指令(CLAUDE.md, AGENTS.md 等直接请求)优先于技能,技能优先于默认行为。只有当你的搭档明确要求时,才跳过技能工作流。
|
|
225
|
+
|
|
226
|
+
## SpecPow 特有规则
|
|
227
|
+
|
|
228
|
+
1. **规划先于编码** — 任何超过 30 分钟的编码工作,必须先完成 propose 流程
|
|
229
|
+
2. **规范即契约** — specs 中定义的行为必须被实现遵守,SDD 审查会验证
|
|
230
|
+
3. **账本即真理** — 上下文压缩后,信任账本和 git log,而非自己的记忆
|
|
231
|
+
4. **文件即接口** — Agent 之间通过文件通信,不依赖对话上下文
|
|
232
|
+
5. **双模式共存** — 默认模式用 SDD Engine(TypeScript 编排);`--host-driven` 模式用宿主 Agent 编排
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,145 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.3.1] - 2026-08-18
|
|
9
|
+
|
|
10
|
+
### 🐛 Comprehensive Bug Fix Release — 21 Issues Resolved
|
|
11
|
+
|
|
12
|
+
This patch release addresses 21 verified issues discovered during a comprehensive review of functional runnability and usability. Every fix was verified against actual code before implementation. Build passes, all 849 tests pass.
|
|
13
|
+
|
|
14
|
+
### 🔴 IMPORTANT Fixes (4 items)
|
|
15
|
+
|
|
16
|
+
- **#1 `init --force` 选项缺失**
|
|
17
|
+
- File: `src/cli/index.ts`
|
|
18
|
+
- Fix: 添加 `--force` Commander.js 选项定义,配合 `TemplateHashManager.reset()` 实现强制覆盖
|
|
19
|
+
|
|
20
|
+
- **#2 `review --diff-file` 未实际解析 diff 文件**
|
|
21
|
+
- File: `src/commands/review.ts`
|
|
22
|
+
- Fix: 添加 diff 文件读取与正则解析(`+++ b/` 前缀匹配),提取变更文件路径列表
|
|
23
|
+
|
|
24
|
+
- **#3 `review --model` 选项无效但无警告**
|
|
25
|
+
- File: `src/commands/review.ts`
|
|
26
|
+
- Fix: 当传入 `--model` 时输出黄色警告:审查为静态分析,不涉及 AI 模型调用
|
|
27
|
+
|
|
28
|
+
- **#4 Hook 失败被静默吞掉**
|
|
29
|
+
- File: `src/core/hooks/hook-registry.ts`
|
|
30
|
+
- Fix: `mergeResults` 中捕获失败 hook 的 error 信息作为 warning 输出
|
|
31
|
+
|
|
32
|
+
### 🟡 MODERATE Fixes (8 items)
|
|
33
|
+
|
|
34
|
+
- **#5 `formatForPlatform` 忽略 platform 参数**
|
|
35
|
+
- File: `src/core/hooks/hook-registry.ts`
|
|
36
|
+
- Fix: 根据 platform 参数返回对应格式(claude/cursor/generic),而非始终返回 claude 格式
|
|
37
|
+
- Breaking: `PlatformOutput` 接口字段改为 optional,支持平台特定返回
|
|
38
|
+
|
|
39
|
+
- **#6 `migrate` 失败时静默退出码 0**
|
|
40
|
+
- File: `src/cli/index.ts`
|
|
41
|
+
- Fix: 迁移失败时输出失败步骤详情并调用 `process.exit(1)`
|
|
42
|
+
|
|
43
|
+
- **#7 `debug` 提示不存在的 `--report` 选项**
|
|
44
|
+
- File: `src/commands/debug.ts`
|
|
45
|
+
- Fix: 移除 `console.log` 中关于 `debug --report` 的误导性提示
|
|
46
|
+
|
|
47
|
+
- **#8 `channel send` 无消息类型验证**
|
|
48
|
+
- File: `src/commands/channel.ts`
|
|
49
|
+
- Fix: 添加 MessageType 白名单校验,无效类型输出有效值列表并退出
|
|
50
|
+
|
|
51
|
+
- **#9 `status` 任务正则仅匹配小写 `[x]`**
|
|
52
|
+
- File: `src/commands/status.ts`
|
|
53
|
+
- Fix: 正则添加 `gi` 标志,支持 `[X]` 大写完成标记
|
|
54
|
+
|
|
55
|
+
- **#10 `verify` 无变更时直接报错退出**
|
|
56
|
+
- File: `src/commands/verify.ts`
|
|
57
|
+
- Fix: 自动检测唯一活跃变更(单变更免 `--change`),多变更时列出选项
|
|
58
|
+
|
|
59
|
+
- **#11/#12 `init` 内置 Schema/Skill 目录不存在时静默返回**
|
|
60
|
+
- File: `src/commands/init.ts`
|
|
61
|
+
- Fix: 添加 `console.warn` 警告输出,提示包安装可能不完整
|
|
62
|
+
|
|
63
|
+
### 🟢 MINOR Fixes (9 items)
|
|
64
|
+
|
|
65
|
+
- **#13/#14 `channel` 提示错误子命令名**
|
|
66
|
+
- File: `src/commands/channel.ts`
|
|
67
|
+
- Fix: `workers add` → `add-worker`,`tasks create` → `create-task`
|
|
68
|
+
|
|
69
|
+
- **#15 session-start 技能列表仅 22/34**
|
|
70
|
+
- File: `src/core/hooks/session-start-hook.ts`
|
|
71
|
+
- Fix: 补全全部 34 个技能,新增 Meta 分类(using-specpow、meta-using-skills 等)
|
|
72
|
+
|
|
73
|
+
- **#16 `apply` host-driven 写文件失败返回码 0**
|
|
74
|
+
- File: `src/commands/apply.ts`
|
|
75
|
+
- Fix: `return` → `process.exit(1)`,确保 task-manifest.json 写入失败时进程异常退出
|
|
76
|
+
|
|
77
|
+
- **#17 `parseProposal` 缺少 risks 解析**
|
|
78
|
+
- File: `src/core/parsers/index.ts`
|
|
79
|
+
- Fix: 添加 Markdown 表格解析逻辑,支持 `| 风险 | 影响 | 概率 | 应对 |` 格式
|
|
80
|
+
|
|
81
|
+
- **#18 `runTests()` 同步阻塞事件循环**
|
|
82
|
+
- File: `src/core/sdd-engine/controller.ts`
|
|
83
|
+
- Fix: `execFileSync` → 异步 `execFile` + Promise,避免最多 14 分钟的事件循环阻塞
|
|
84
|
+
|
|
85
|
+
- **#19 `detectActiveChanges` 重复调用**
|
|
86
|
+
- File: `src/core/hooks/session-start-hook.ts`
|
|
87
|
+
- Fix: `detectWorkflowStage` 接收已计算的 `activeChanges` 参数,避免重复文件系统扫描
|
|
88
|
+
|
|
89
|
+
- **#20 PostToolCall 每次工具调用注入无用上下文**
|
|
90
|
+
- File: `src/core/hooks/post-tool-call-hook.ts`
|
|
91
|
+
- Fix: 仅在有阶段转换信号时注入 `additionalContext`,普通工具调用不再消耗 token
|
|
92
|
+
|
|
93
|
+
- **#21 `initialize()` 同步函数误用 `await`**
|
|
94
|
+
- File: `src/commands/init.ts`
|
|
95
|
+
- Fix: 移除误导性 `await`,`engine.initialize()` 为同步方法
|
|
96
|
+
|
|
97
|
+
### 🧪 Testing
|
|
98
|
+
|
|
99
|
+
- 849 tests pass across 37 test files
|
|
100
|
+
- 3 tests updated to match new PostToolCallHook behavior (no context injection without transition signal)
|
|
101
|
+
- Added `readFileSync` import to `test/hook-system.test.ts`
|
|
102
|
+
|
|
103
|
+
### 📝 Documentation
|
|
104
|
+
|
|
105
|
+
- CHANGELOG.md: 新增 v0.3.1 版本记录
|
|
106
|
+
- README.md: 版本历史新增 v0.3.1 修复摘要
|
|
107
|
+
- docs/guide.md: CLI 命令参考更新(init --force、review、verify、channel、migrate)
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## [0.3.0] - 2026-08-15
|
|
112
|
+
|
|
113
|
+
### 🚀 Superpowers Pattern Transformation — Host-Driven Mode
|
|
114
|
+
|
|
115
|
+
This release introduces **dual-mode execution**: the existing TypeScript SDD Engine (Mode A) now coexists with a new **Host-Driven mode** (Mode B), where the host AI agent orchestrates the SDD workflow using its native subagent tools.
|
|
116
|
+
|
|
117
|
+
### ✨ New Features
|
|
118
|
+
|
|
119
|
+
- **Host-Driven Mode (`--host-driven`)**: New execution mode for `specpow apply` that generates a `task-manifest.json` and delegates orchestration to the host AI agent via SKILL.md instructions. No TypeScript AI-caller subprocess needed.
|
|
120
|
+
- **Bootstrap Meta-Skill (`using-specpow`)**: New skill injected via `SessionStart` hook that teaches the host agent the full SDD workflow, trigger discipline, and iron rules.
|
|
121
|
+
- **SDD Orchestrator Skill (`execution-sdd-orchestrator`)**: Skill file encoding the implement→review→fix loop logic, replacing `controller.ts` orchestration in Host-Driven mode. Includes parallel execution guidance.
|
|
122
|
+
- **Subagent Dispatch Skill (`execution-subagent-dispatch`)**: Skill file encoding implementer/reviewer/re-reviewer prompt templates, replacing `ai-caller.ts` prompt construction in Host-Driven mode.
|
|
123
|
+
- **`init` Copies Builtin Skills**: `specpow init` now uses `copyBuiltinSkillsWithHash` to incrementally copy all 34 builtin skill files to target projects, with template-hash protection for user modifications.
|
|
124
|
+
|
|
125
|
+
### 🏗️ Architecture Changes
|
|
126
|
+
|
|
127
|
+
- **Dual-Mode Execution Layer**: Architecture diagram updated to show Mode A (SDD Engine) and Mode B (Host-Driven) side-by-side. Both modes share Ledger, Git ops, and review-loop infrastructure.
|
|
128
|
+
- **Skills Count**: 31 → 34 (added `using-specpow`, `execution-sdd-orchestrator`, `execution-subagent-dispatch`)
|
|
129
|
+
|
|
130
|
+
### 📦 Deprecation Markers
|
|
131
|
+
|
|
132
|
+
- `src/core/sdd-engine/controller.ts` — marked `@deprecated`, only used by SDD Engine mode
|
|
133
|
+
- `src/core/sdd-engine/ai-caller.ts` — marked `@deprecated`, only used by SDD Engine mode
|
|
134
|
+
- `src/core/sdd-engine/model-selector.ts` — marked `@deprecated`, model selection guidance now in SKILL.md
|
|
135
|
+
|
|
136
|
+
### 🔧 Bug Fixes
|
|
137
|
+
|
|
138
|
+
- **CLI `--host-driven` flag registration**: Flag was implemented in `apply.ts` but not registered in Commander.js — fixed.
|
|
139
|
+
- **`copyBuiltinSkillsWithHash` missing definition**: Function was called but never defined in `init.ts` — implemented with same pattern as `copyBuiltinSchemasWithHash`.
|
|
140
|
+
|
|
141
|
+
### 📝 Documentation
|
|
142
|
+
|
|
143
|
+
- README.md architecture diagram updated for dual-mode execution layer
|
|
144
|
+
- README.md skills table updated from 31 to 34
|
|
145
|
+
- README.md quick-start section documents `--host-driven` flag
|
|
146
|
+
|
|
8
147
|
## [0.2.2] - 2026-08-15
|
|
9
148
|
|
|
10
149
|
### 🐛 Bug Fix: AI Tool Detection
|
|
@@ -395,5 +534,9 @@ This release incorporates best practices from:
|
|
|
395
534
|
- Configuration management with Zod validation
|
|
396
535
|
- Git worktree support for parallel execution
|
|
397
536
|
|
|
537
|
+
[0.3.1]: https://github.com/specpow/framework/compare/v0.3.0...v0.3.1
|
|
538
|
+
[0.3.0]: https://github.com/specpow/framework/compare/v0.2.2...v0.3.0
|
|
539
|
+
[0.2.2]: https://github.com/specpow/framework/compare/v0.2.1...v0.2.2
|
|
540
|
+
[0.2.1]: https://github.com/specpow/framework/compare/v0.2.0...v0.2.1
|
|
398
541
|
[0.2.0]: https://github.com/specpow/framework/compare/v0.1.0...v0.2.0
|
|
399
542
|
[0.1.0]: https://github.com/specpow/framework/releases/tag/v0.1.0
|
package/README.md
CHANGED
|
@@ -22,10 +22,10 @@ SpecPow 将两者融合,形成从需求探索到代码交付的全链路 AI
|
|
|
22
22
|
|
|
23
23
|
```
|
|
24
24
|
┌─────────────────────────────────────────────────────────────────┐
|
|
25
|
-
│ 用户触发层 (
|
|
25
|
+
│ 用户触发层 (20 个 CLI 命令) │
|
|
26
26
|
│ init · explore · propose · status · apply · verify · archive │
|
|
27
27
|
│ execute · review · debug · update · config · schemas · store │
|
|
28
|
-
│ doctor · migrate · sdd · workflow
|
|
28
|
+
│ doctor · migrate · sdd · channel · memory · workflow │
|
|
29
29
|
│ 支持 --json 输出(Agent Contract) │
|
|
30
30
|
└─────────────────────────────────────────────────────────────────┘
|
|
31
31
|
│
|
|
@@ -39,17 +39,20 @@ SpecPow 将两者融合,形成从需求探索到代码交付的全链路 AI
|
|
|
39
39
|
│
|
|
40
40
|
▼
|
|
41
41
|
┌─────────────────────────────────────────────────────────────────┐
|
|
42
|
-
│ 执行层 (
|
|
43
|
-
│
|
|
44
|
-
│
|
|
45
|
-
│
|
|
46
|
-
│
|
|
42
|
+
│ 执行层 (双模式 SDD 引擎) │
|
|
43
|
+
│ ┌─ 模式 A: SDD Engine (默认) ─┐ ┌─ 模式 B: Host-Driven ──┐ │
|
|
44
|
+
│ │ TypeScript 编排 │ │ 宿主 Agent 原生工具 │ │
|
|
45
|
+
│ │ controller.ts → AICaller │ │ task-manifest.json │ │
|
|
46
|
+
│ │ → claude CLI 子进程 │ │ → SKILL.md 指令驱动 │ │
|
|
47
|
+
│ └─────────────────────────────┘ └─────────────────────────┘ │
|
|
48
|
+
│ · TDD 强制 (RED-GREEN-REFACTOR) · 5轮修复断路器 │
|
|
49
|
+
│ · 进度账本(两种模式共享) · 模型配置可化 │
|
|
47
50
|
└─────────────────────────────────────────────────────────────────┘
|
|
48
51
|
│
|
|
49
52
|
▼
|
|
50
53
|
┌─────────────────────────────────────────────────────────────────┐
|
|
51
|
-
│ 能力层 (
|
|
52
|
-
│ 规划类(10) + 执行类(
|
|
54
|
+
│ 能力层 (34 个技能) │
|
|
55
|
+
│ 规划类(10) + 执行类(11) + 业务类(9) + 元技能(4) = 34 个技能 │
|
|
53
56
|
└─────────────────────────────────────────────────────────────────┘
|
|
54
57
|
│
|
|
55
58
|
▼
|
|
@@ -91,9 +94,12 @@ specpow propose add-user-management
|
|
|
91
94
|
# 查看状态(支持 JSON 输出)
|
|
92
95
|
specpow status --json
|
|
93
96
|
|
|
94
|
-
# 执行实现(SDD
|
|
97
|
+
# 执行实现(SDD 引擎驱动,默认模式)
|
|
95
98
|
specpow apply
|
|
96
99
|
|
|
100
|
+
# Host-Driven 模式(宿主 Agent 原生 subagent 工具执行)
|
|
101
|
+
specpow apply --host-driven
|
|
102
|
+
|
|
97
103
|
# 并行执行(使用 git worktree)
|
|
98
104
|
specpow apply --parallel
|
|
99
105
|
|
|
@@ -341,14 +347,14 @@ Delta 格式:
|
|
|
341
347
|
5. 框架更新 → 覆盖
|
|
342
348
|
```
|
|
343
349
|
|
|
344
|
-
## 技能体系(
|
|
350
|
+
## 技能体系(34 个)
|
|
345
351
|
|
|
346
352
|
| 分类 | 数量 | 技能 |
|
|
347
353
|
|---|---|---|
|
|
348
|
-
| **Meta** |
|
|
354
|
+
| **Meta** | 4 | using-specpow、meta-using-skills、meta-writing-skills、meta-create-skill |
|
|
349
355
|
| **Planning** | 10 | explore、propose、apply-change、verify-change、archive-change、write-plans、write-specs、write-design、onboard、update-change |
|
|
350
|
-
| **Execution** |
|
|
351
|
-
| **Business** | 9 | java-codegen、ui-codegen、
|
|
356
|
+
| **Execution** | 11 | subagent-driven-dev、**tdd**、systematic-debugging、parallel-agents、finish-branch、git-worktrees、requesting-review、receiving-review、verification-before-completion、**sdd-orchestrator**、**subagent-dispatch** |
|
|
357
|
+
| **Business** | 9 | java-codegen、ui-codegen、db-design、prd-writer、deploy-check、doc-sync、menu-register、test-gen、code-review |
|
|
352
358
|
|
|
353
359
|
## Agent 体系(8 个)
|
|
354
360
|
|
|
@@ -435,7 +441,7 @@ specpow/
|
|
|
435
441
|
├── bin/ # CLI 入口 (specpow.js)
|
|
436
442
|
├── src/
|
|
437
443
|
│ ├── cli/ # Commander.js 命令注册
|
|
438
|
-
│ ├── commands/ #
|
|
444
|
+
│ ├── commands/ # 20 个命令实现(支持 --json)
|
|
439
445
|
│ │ ├── init.ts # 初始化 + 模板哈希增量更新
|
|
440
446
|
│ │ ├── explore.ts # 苏格拉底式需求探索
|
|
441
447
|
│ │ ├── propose.ts # 变更提案生成
|
|
@@ -462,11 +468,11 @@ specpow/
|
|
|
462
468
|
│ └── command-generation/ # 22 种 AI 工具适配器(P1-9)
|
|
463
469
|
├── .specpow/
|
|
464
470
|
│ ├── schemas/ # 3 套工作流 Schema + 模板
|
|
465
|
-
│ ├── skills/ #
|
|
471
|
+
│ ├── skills/ # 34 个技能(SKILL.md)
|
|
466
472
|
│ ├── agents/ # 8 个 Agent 定义
|
|
467
473
|
│ └── hooks/ # Hook 自动上下文注入
|
|
468
474
|
├── scripts/ # 辅助脚本(task-brief/review-package/sdd-workspace)
|
|
469
|
-
├── test/ #
|
|
475
|
+
├── test/ # 849 个测试用例
|
|
470
476
|
└── docs/ # 使用指南
|
|
471
477
|
```
|
|
472
478
|
|
|
@@ -498,12 +504,41 @@ pnpm lint
|
|
|
498
504
|
| 运行时验证 | Zod |
|
|
499
505
|
| 配置解析 | yaml |
|
|
500
506
|
| 终端 | chalk, ora |
|
|
501
|
-
| 测试 | Vitest (
|
|
507
|
+
| 测试 | Vitest (849 tests) |
|
|
502
508
|
| 包管理 | pnpm |
|
|
503
509
|
|
|
504
510
|
## 版本历史
|
|
505
511
|
|
|
506
|
-
### v0.
|
|
512
|
+
### v0.3.1 (2026-08-18)
|
|
513
|
+
|
|
514
|
+
**21 项缺陷修复**(来自全面功能可运行性审查):
|
|
515
|
+
|
|
516
|
+
**IMPORTANT(4 项)**:
|
|
517
|
+
- ✅ `init --force` 选项缺失 — 添加强制覆盖支持
|
|
518
|
+
- ✅ `review --diff-file` 未实际解析 diff — 实现 diff 文件解析与变更文件提取
|
|
519
|
+
- ✅ `review --model` 选项无效无警告 — 添加黄色提示
|
|
520
|
+
- ✅ Hook 失败被静默吞掉 — 失败 hook 的 error 信息作为 warning 输出
|
|
521
|
+
|
|
522
|
+
**MODERATE(8 项)**:
|
|
523
|
+
- ✅ `formatForPlatform` 忽略 platform 参数 — 根据平台返回对应格式
|
|
524
|
+
- ✅ `migrate` 失败时静默退出码 0 — 输出失败步骤 + `process.exit(1)`
|
|
525
|
+
- ✅ `debug` 提示不存在的 `--report` — 移除误导提示
|
|
526
|
+
- ✅ `channel send` 无消息类型验证 — 添加 MessageType 白名单校验
|
|
527
|
+
- ✅ `status` 任务正则仅匹配小写 `[x]` — 改为大小写不敏感
|
|
528
|
+
- ✅ `verify` 无变更时直接报错 — 自动检测唯一活跃变更
|
|
529
|
+
- ✅ `init` Schema/Skill 目录不存在静默返回 — 添加 `console.warn` 警告
|
|
530
|
+
|
|
531
|
+
**MINOR(9 项)**:
|
|
532
|
+
- ✅ `channel` 提示错误子命令名 — 修正为 `add-worker` / `create-task`
|
|
533
|
+
- ✅ session-start 技能列表仅 22/34 — 补全全部 34 个技能
|
|
534
|
+
- ✅ `apply` host-driven 写文件失败返回码 0 — `return` → `process.exit(1)`
|
|
535
|
+
- ✅ `parseProposal` 缺少 risks 解析 — 添加 Markdown 表格解析
|
|
536
|
+
- ✅ `runTests()` 同步阻塞事件循环 — `execFileSync` → 异步 `execFile`
|
|
537
|
+
- ✅ `detectActiveChanges` 重复调用 — 传参复用已计算结果
|
|
538
|
+
- ✅ PostToolCall 每次注入无用上下文 — 仅在有转换信号时注入
|
|
539
|
+
- ✅ `initialize()` 同步函数误用 `await` — 移除误导性 `await`
|
|
540
|
+
|
|
541
|
+
### v0.3.0 (2026-08-15)
|
|
507
542
|
|
|
508
543
|
**9 项缺陷修复与代码清理**(来自全面代码审查):
|
|
509
544
|
|
|
@@ -541,7 +576,7 @@ pnpm lint
|
|
|
541
576
|
- ✅ 模板哈希增量更新
|
|
542
577
|
|
|
543
578
|
**P2 差异化创新(5 项)**:
|
|
544
|
-
- ✅ Hook 自动上下文注入(
|
|
579
|
+
- ✅ Hook 自动上下文注入(5-hook 管道:SessionStart/UserPromptSubmit/PreToolUse/PreToolCall/PostToolCall)
|
|
545
580
|
- ✅ 跨会话记忆系统(事件源 + 关键词索引 + SQLite/JSON 适配器)
|
|
546
581
|
- ✅ Channel 多代理协作(Supervisor 模式)
|
|
547
582
|
- ✅ 工作流状态标签 `[workflow-state:xxx]`
|
package/dist/cli/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA0BH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA0BH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CA2d5C"}
|
package/dist/cli/index.js
CHANGED
|
@@ -40,6 +40,7 @@ export async function runCli() {
|
|
|
40
40
|
.description('初始化项目 - 安装技能/命令到 AI 工具')
|
|
41
41
|
.option('--tool <tool>', '目标 AI 工具 (claude, cursor, copilot, codebuddy...)')
|
|
42
42
|
.option('--schema <schema>', '工作流 Schema (spec-driven, crud-module, bug-fix)')
|
|
43
|
+
.option('--force', '强制覆盖已有文件(重置模板哈希)')
|
|
43
44
|
.action(async (options) => {
|
|
44
45
|
const { initProject } = await import('../commands/init.js');
|
|
45
46
|
await initProject(options);
|
|
@@ -75,6 +76,7 @@ export async function runCli() {
|
|
|
75
76
|
.description('执行实现 - SDD 引擎驱动的任务执行')
|
|
76
77
|
.option('--change <name>', '指定变更名称')
|
|
77
78
|
.option('--parallel', '启用并行执行(Git worktree 隔离)')
|
|
79
|
+
.option('--host-driven', '使用 Host-Driven 模式(宿主 Agent 原生 subagent 工具执行)')
|
|
78
80
|
.option('--json', 'JSON 格式输出')
|
|
79
81
|
.action(async (options) => {
|
|
80
82
|
const { applyChange } = await import('../commands/apply.js');
|
|
@@ -214,6 +216,17 @@ export async function runCli() {
|
|
|
214
216
|
// 正常执行迁移
|
|
215
217
|
const result = await runner.run(options.to, { backup: options.backup !== false });
|
|
216
218
|
if (!result.success) {
|
|
219
|
+
const failedSteps = result.steps.filter(s => s.status === 'failed');
|
|
220
|
+
if (failedSteps.length > 0) {
|
|
221
|
+
console.error(chalk.red(`\n❌ 迁移失败:`));
|
|
222
|
+
for (const step of failedSteps) {
|
|
223
|
+
console.error(chalk.red(` ✗ ${step.name}: ${step.message}`));
|
|
224
|
+
}
|
|
225
|
+
console.error('');
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
console.error(chalk.red('\n❌ 迁移失败,请检查项目状态\n'));
|
|
229
|
+
}
|
|
217
230
|
process.exit(1);
|
|
218
231
|
}
|
|
219
232
|
}
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|