@haiyangbg/buildbeat 2.0.0 → 2.0.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/CHANGELOG.md +22 -1
- package/README.en.md +100 -243
- package/README.md +100 -241
- package/SKILL.md +95 -27
- package/docs/CAPABILITY-MATRIX.md +37 -6
- package/docs/CLI.md +13 -3
- package/docs/README.md +37 -0
- package/docs/RELEASING.md +27 -3
- package/docs/V2-PLAN.md +2 -0
- package/docs/V2.0.0-RELEASE-EVIDENCE-2026-09-05.md +11 -0
- package/docs/v2/RFC-0001-product-definition.md +2 -0
- package/docs/v2/guide/00-how-to-talk.md +3 -1
- package/docs/v2/guide/01-quickstart.md +92 -29
- package/docs/v2/guide/02-workflow-guide.md +4 -2
- package/docs/v2/guide/04-adapter-guide.md +17 -2
- package/docs/v2/guide/05-worker-contract.md +17 -6
- package/docs/v2/guide/06-evidence-guide.md +2 -1
- package/docs/v2/guide/07-approval-guide.md +22 -7
- package/docs/v2/guide/08-migration-v1.md +8 -4
- package/docs/v2/guide/09-security-boundaries.md +22 -11
- package/docs/v2/guide/10-recovery.md +4 -2
- package/docs/v2/guide/11-session-handoff.en.md +84 -0
- package/docs/v2/guide/11-session-handoff.md +84 -0
- package/docs/v2/guide/README.md +40 -21
- package/example/.buildbeat/manifest.json +1 -1
- package/package.json +10 -8
- package/src/v2/cli/run.js +26 -0
- package/templates/v2/AGENTS.md +6 -6
- package/templates/v2/BUILDBEAT.md +15 -0
- package/templates/v2/CLAUDE.md +7 -0
- package/templates/v2/envelope/prompts/builder.md +8 -0
- package/templates/v2/envelope/prompts/fixer.md +8 -0
- package/templates/v2/envelope/prompts/reviewer.md +13 -0
- package/templates/v2/envelope/worker.sh +70 -0
- package/templates/v2/run-config.example.yaml +74 -0
- package/templates/v2//346/214/207/346/214/245/345/217/260.md +7 -3
package/README.md
CHANGED
|
@@ -2,306 +2,165 @@
|
|
|
2
2
|
|
|
3
3
|
**简体中文** | [English](README.en.md)
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**会话随时换,项目接着干。**
|
|
6
|
+
上下文存进文件,协作围绕 Git,工作持续推进。
|
|
6
7
|
|
|
7
|
-
BuildBeat
|
|
8
|
+
BuildBeat 是以 Git 和项目文件为基础的 AI 交付工作流,面向人和 AI 会话。目标、计划、决定与交付记录保存在项目里,换模型、换工具、换会话,或换一个人接手,都有继续工作的依据。Loop 推进实现、验证、审查与修复;进度和证据由内核从 Git 与真实命令回读,不靠会话自述;关键决定由人掌握。
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
[使用指南](docs/v2/guide/README.md) · [跨会话接续](docs/v2/guide/11-session-handoff.md) · [npm](https://www.npmjs.com/package/@haiyangbg/buildbeat) · [CI](https://github.com/HaiYangBG1/BuildBeat/actions/workflows/ci.yml) · [MIT](LICENSE)
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
## 告别祖传上下文
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
不用再抱着一个越来越长的“祖传会话”不放。上下文满了,开个新会话;想换模型或工具,从项目记录接着做;今天交给同事,接手的人也能从文件了解进度和下一步。目标、约束、计划、决定和交付记录都应落在文件系统中,新会话不必依赖旧聊天历史来判断下一步。
|
|
14
15
|
|
|
15
|
-
|
|
16
|
+
下面是已配置项目的**使用情景示意**,不是一次实测运行记录:
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
| 时刻 | 你说什么 | 会话做什么 |
|
|
19
|
+
|---|---|---|
|
|
20
|
+
| 会话 A:开始 | “给导出功能加日期筛选,先定计划。” | 读取项目约束,把目标与计划写入 Work;接受后启动执行 |
|
|
21
|
+
| 准备离开 | “把决定和未完成事项落盘,我要关闭这个会话。” | 补齐项目记录,核对运行状态与未提交改动,说明下一步 |
|
|
22
|
+
| 新会话接手 | “读取项目的 BuildBeat 入口,接着做日期筛选。” | 读取 Work、Git 与运行台账,查清已完成、未验证、待批和阻塞 |
|
|
23
|
+
| 继续推进 | “按当前已接受的计划继续。” | 根据实况继续执行、处理恢复或等待决定,带证据停在合并决定前 |
|
|
18
24
|
|
|
19
|
-
|
|
25
|
+
新会话可以由自己打开,也可以交给另一位有项目权限的人;换人或换机器时,同步记录与候选,并核对原 Run 的执行环境。
|
|
20
26
|
|
|
21
|
-
|
|
22
|
-
- 人在会话之间复制粘贴,自己变成消息总线;
|
|
23
|
-
- Agent 声称“完成”,却没有测试、commit 或线上证据;
|
|
24
|
-
- 一个子文档或 commit 完成后,会话过早停下等人说“继续”;
|
|
25
|
-
- 草案中的每个小选择都打断人,真正的阶段 Gate 被确认噪音淹没;
|
|
26
|
-
- 当前进度、线上版本和决策被重复写进多个文档,逐渐互相矛盾。
|
|
27
|
+
**关键上下文落盘后,旧聊天可以关闭或删除。** 未保存的讨论不会自动变成项目记忆;删除聊天时应保留项目、候选分支和所需运行文件。具体步骤见 [跨会话接续](docs/v2/guide/11-session-handoff.md)。
|
|
27
28
|
|
|
28
|
-
|
|
29
|
+
## 上下文就在项目里
|
|
29
30
|
|
|
30
|
-
|
|
31
|
-
2. **文件总线**:`NOW → 看板 → contracts → status`,交接不依赖聊天记忆。
|
|
32
|
-
3. **人在 Gate**:规格、设计、合并、上线四个关键决策不允许自动跨过。
|
|
33
|
-
4. **证据制完成**:完成必须带 commit hash 和可核验证据;无证据,不算完成。
|
|
31
|
+
Git 管理需要长期保留的项目事实;本机文件保存运行中的状态。BuildBeat 读取这些事实来回答“做到哪了”,而不是让每个会话重新写一份进度猜测。
|
|
34
32
|
|
|
35
|
-
|
|
33
|
+
| 文件与目录 | 保存什么 | 怎样使用 |
|
|
34
|
+
|---|---|---|
|
|
35
|
+
| `AGENTS.md`、项目规范与契约 | 项目入口、约束、角色和写入边界 | 新会话从入口读取,按任务深入相关文件 |
|
|
36
|
+
| `delivery/work/<ID>/` | 目标、计划、配置、决定、审查裁决与终态运行记录 | 纳入 Git,作为同一项工作的接续依据 |
|
|
37
|
+
| `.buildbeat/runtime/` | 在途事件、检查点、锁与原始日志 | 留在本机,不进 Git;恢复活动 Run 时需要 |
|
|
38
|
+
| `.buildbeat/worktrees/` | Run 的隔离工作树 | 保留候选代码与现场,不作为聊天缓存清理 |
|
|
36
39
|
|
|
37
|
-
|
|
40
|
+
落在文件系统不等于每个文件都应该提交到 Git。秘密留在受保护的本地环境中;终态记录保存证据摘要和引用,原始日志需要按项目要求另行保留。详见 [证据指南](docs/v2/guide/06-evidence-guide.md)。
|
|
38
41
|
|
|
39
|
-
|
|
42
|
+
## 换个方式,继续同一项工作
|
|
40
43
|
|
|
41
|
-
|
|
44
|
+
继续工作所需的上下文由项目文件承载。装载了 BuildBeat 的新会话可以读取同一份目标、决定和当前状态;负责执行的 Worker 通过命令接入,模型选择与鉴权由所用 AI 工具处理。
|
|
42
45
|
|
|
43
|
-
|
|
46
|
+
- **跨会话**:关闭旧聊天,用干净上下文接续同一个 Work。
|
|
47
|
+
- **跨工具与模型**:按目标工具的方式加载 Skill、配置执行命令和输出合同,复用项目记录。
|
|
48
|
+
- **跨人接手**:有项目访问权限的人,同步上下文、候选与必要证据后,可以在职责和授权范围内继续;有效的既有决定继续保留。
|
|
49
|
+
- **跨时间与地点**:同步已提交的项目文件后,可在准备好环境的另一台机器重新接手;活动 Run 的运行状态和工作树不会随普通 Git clone 自动迁移。
|
|
44
50
|
|
|
45
|
-
|
|
51
|
+
**随时随地接手的基础,是记录可达、环境可用、权限明确。** 自己继续或交给别人,都从项目文件开始,无需携带旧聊天全文。Git 提供协作与版本管理,访问权限沿用仓库托管和执行平台的设置。
|
|
46
52
|
|
|
47
|
-
|
|
53
|
+
协议可由不同工具读写;具体工具能否直接执行 Loop,要看适配、权限和环境。现有真实 Worker 证据覆盖 `codex exec`,脚本 Worker 有确定性测试;其他工具不能仅因有 CLI 就算已验证。见 [能力矩阵](docs/CAPABILITY-MATRIX.md) 与 [Adapter 指南](docs/v2/guide/04-adapter-guide.md)。
|
|
48
54
|
|
|
49
|
-
|
|
55
|
+
## 多个角色,共同推进一项工作
|
|
50
56
|
|
|
51
|
-
|
|
52
|
-
/plugin marketplace add /absolute/path/to/BuildBeat
|
|
53
|
-
/plugin install buildbeat@buildbeat-plugins
|
|
54
|
-
/buildbeat:buildbeat
|
|
55
|
-
```
|
|
57
|
+
**端到端工作包**是协作单元。一个 Builder 对一个用户级结果负责,按需要调用产品、全栈、测试三个 AI 视角;多个 Builder 可以分别拥有不同工作包,也可以交接同一工作包;交接时写清当前负责推进的人、已完成事项和下一步,避免重复执行。
|
|
56
58
|
|
|
57
|
-
|
|
59
|
+
| 会话视角 | 接手时读取什么 | 产出什么 |
|
|
60
|
+
|---|---|---|
|
|
61
|
+
| 产品 | 目标、约束与既有决定 | 可接受的范围、计划与验收条件 |
|
|
62
|
+
| 全栈(含运维) | 已接受计划、契约与环境事实 | 候选代码与实现记录 |
|
|
63
|
+
| 测试 | 验收条件与候选 | 实际测试结果、覆盖范围与缺口 |
|
|
58
64
|
|
|
59
|
-
|
|
65
|
+
这些是可调用的专业视角,不是人类岗位接力的固定流程,也不要求固定开三个会话。审查不是会话视角:它是 Run 内置的只读 reviewer,见下一节。一个人或多个人都可以按需要调用这些视角。共同事实通过项目文件传递,各视角遵守自己的写入边界。当前单仓活动 Run 锁在本地生效;多角色或多个 Git 副本不等于有跨机器的运行协调。同一工作包交接前应核对原执行环境,避免双方重复启动。
|
|
60
66
|
|
|
61
|
-
|
|
67
|
+
## 让工作进入 Loop
|
|
62
68
|
|
|
63
|
-
|
|
64
|
-
npm view @haiyangbg/buildbeat@latest version
|
|
65
|
-
npx --yes --package=@haiyangbg/buildbeat@latest buildbeat doctor /path/to/project
|
|
66
|
-
npx --yes --package=@haiyangbg/buildbeat@latest buildbeat init /path/to/project --dry-run
|
|
67
|
-
npx --yes --package=@haiyangbg/buildbeat@latest buildbeat adopt /path/to/project --dry-run --json
|
|
68
|
-
npx --yes --package=@haiyangbg/buildbeat@latest buildbeat upgrade /path/to/project --dry-run --json
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
需要长期使用时,可以显式管理全局 CLI:
|
|
69
|
+
接受所需计划后,`buildbeat-v2` 在隔离 Git worktree 中调用配置好的 Worker,推进实现、验证、审查与修复。审查由一个不带上下文、只读的 reviewer worker 执行,任何工作树写入都会被前后快照比对捕获并按失败落账。
|
|
72
70
|
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
71
|
+
```mermaid
|
|
72
|
+
flowchart LR
|
|
73
|
+
P[接受计划] --> B[实现]
|
|
74
|
+
B --> V[验证]
|
|
75
|
+
V -->|通过| R[审查]
|
|
76
|
+
V -->|失败| F[修复]
|
|
77
|
+
R -->|阻断性发现| F
|
|
78
|
+
F --> V
|
|
79
|
+
R -->|通过| H[等待人的合并决定]
|
|
78
80
|
```
|
|
79
81
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
`1.21.0` 已独立验证发布,并在 `1.20.0` 生命周期上新增统一域回复格式:收口时按「已做 → 未做 → 下一步」输出,证据紧跟对应的已做事项;CLI 命令和安全边界不扩张。`--force` 仍永不覆盖 project-owned 内容或不安全路径,跨 major 另需 `--major`。源码 checkout、Git tag 和 npm artifact 是不同证据面,精确发布证据见 [`docs/V1.21-RELEASE-EVIDENCE-2026-08-25.md`](docs/V1.21-RELEASE-EVIDENCE-2026-08-25.md)。
|
|
82
|
+
图示为正常与修复路径;风险预设、发现分诊、故障和预算可能增加等待点。
|
|
83
83
|
|
|
84
|
-
|
|
84
|
+
- **完成有证据**:候选提交由 Git 回读,测试结论来自实际命令;AI 的“已完成”不能代替验证。
|
|
85
|
+
- **批准有对象**:批准绑定具体候选、计划与证据;对象变了,旧批准会失效。
|
|
86
|
+
- **中断有去向**:Runner 可按台账恢复;中断步骤可能重跑,脏工作树会先请求处理。
|
|
87
|
+
- **循环有止损**:预算、重复失败与基础设施故障形成明确的待处理事项;可配置通知。
|
|
85
88
|
|
|
86
|
-
|
|
89
|
+
合并决定表示候选具备合并条件。合并、推送和部署由人或另行授权的工具在 Runner 之外执行;上线后可用 `release-readback` 保存回读与观察记录。执行检查与宿主隔离各有范围,见 [安全与权限边界](docs/v2/guide/09-security-boundaries.md)。
|
|
87
90
|
|
|
88
|
-
|
|
91
|
+
## 开始你的第一次接力
|
|
89
92
|
|
|
90
|
-
|
|
93
|
+
需要 Node.js ≥ 20、Git、Bash,以及已安装并完成鉴权的 AI 编程工具。
|
|
91
94
|
|
|
92
|
-
|
|
95
|
+
**1. 安装运行时。** 稳定发布包使用 `@latest`,同包包含 `buildbeat-v2` 运行时与 `buildbeat` v1 生命周期命令。
|
|
93
96
|
|
|
94
97
|
```bash
|
|
95
|
-
npm
|
|
96
|
-
|
|
97
|
-
buildbeat-v2 inbox --repo . # 谁在等你批,下一句该说什么
|
|
98
|
-
buildbeat-v2 start --config delivery/work/WORK-X/run-config.yaml --attempt new
|
|
99
|
-
buildbeat-v2 status --repo . --run RUN-X-01 # 在跑第几步、跑了多久、历史通常多久、卡没卡
|
|
98
|
+
npm view @haiyangbg/buildbeat@latest version
|
|
99
|
+
npm install --global @haiyangbg/buildbeat@latest
|
|
100
100
|
```
|
|
101
101
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
### 手动安装
|
|
105
|
-
|
|
106
|
-
只建议在你已经理解模板含义时使用:
|
|
107
|
-
|
|
108
|
-
```bash
|
|
109
|
-
git clone https://github.com/HaiYangBG1/BuildBeat.git
|
|
110
|
-
rsync -a --exclude '/standards/' --exclude '/pm/adr/' "BuildBeat/templates/" /path/to/new-project/
|
|
111
|
-
cd /path/to/new-project
|
|
112
|
-
```
|
|
102
|
+
> 快速开始用到的信封模板(`templates/v2/envelope/`)自 2.0.1 起随包分发;版本与内容对照见 [CHANGELOG](CHANGELOG.md)。
|
|
113
103
|
|
|
114
|
-
|
|
104
|
+
**2. 让会话加载入口。** 下载或检出本仓,让你的 AI 工具读取其中的 [`SKILL.md`](SKILL.md),然后在目标项目中说:
|
|
115
105
|
|
|
116
|
-
|
|
106
|
+
> 用 BuildBeat 接管这个项目。先检查代码和现有约束,为第一项工作准备 v2 上下文与运行配置。
|
|
117
107
|
|
|
118
|
-
|
|
119
|
-
2. 将 `gitignore.template` 的规则合并进项目 `.gitignore`;
|
|
120
|
-
3. 为 `verify-status.sh` 配置真实测试命令;
|
|
121
|
-
4. 运行 `bash scripts/bus-check.sh`,确认骨架指针和能力边界;
|
|
122
|
-
5. 在 meta 仓和每个代码子仓分别安装 pre-commit 护栏:
|
|
108
|
+
会话先检查项目,补齐目标、计划、验证命令和执行配置;你接受后再启动。完整步骤见 [快速开始](docs/v2/guide/01-quickstart.md),已有 v1 项目见 [迁移指南](docs/v2/guide/08-migration-v1.md)。
|
|
123
109
|
|
|
124
|
-
|
|
125
|
-
cp scripts/pre-commit.sh .git/hooks/pre-commit
|
|
126
|
-
chmod +x .git/hooks/pre-commit
|
|
127
|
-
```
|
|
110
|
+
**3. 试一次接力。** 在工作记录落盘后关闭旧会话,打开一个没有旧聊天历史的新会话;也可以同步记录与候选,让另一位有权限的成员用自己的工具接手:
|
|
128
111
|
|
|
129
|
-
|
|
112
|
+
> 读取项目的 BuildBeat 入口,查看当前进度和待批事项,告诉我下一步,然后在已有授权范围内继续。
|
|
130
113
|
|
|
131
|
-
|
|
114
|
+
核对它读出的目标、候选、验证结果和下一步,再继续。见 [跨会话接续指南](docs/v2/guide/11-session-handoff.md)。
|
|
132
115
|
|
|
133
|
-
|
|
116
|
+
<details>
|
|
117
|
+
<summary>Claude Code 插件安装</summary>
|
|
134
118
|
|
|
135
|
-
|
|
136
|
-
你是当前工作包的产品视角,负责澄清需求、看板和决策事实。开工。
|
|
137
|
-
```
|
|
119
|
+
插件负责加载 Skill 与参考资料,运行时需要另行安装。
|
|
138
120
|
|
|
139
121
|
```text
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
```text
|
|
144
|
-
你是当前工作包的测试视角,负责黑盒验收、E2E 和证据。验收当前候选。
|
|
122
|
+
/plugin marketplace add HaiYangBG1/BuildBeat
|
|
123
|
+
/plugin install buildbeat@buildbeat-plugins
|
|
124
|
+
/buildbeat:buildbeat
|
|
145
125
|
```
|
|
146
126
|
|
|
147
|
-
|
|
127
|
+
本地源码安装可把 marketplace 地址换成本仓绝对路径。缓存与安装检查见 [插件说明](plugins/buildbeat/README.md)。
|
|
148
128
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
```bash
|
|
152
|
-
git pull
|
|
153
|
-
bash scripts/bus-check.sh
|
|
154
|
-
```
|
|
129
|
+
</details>
|
|
155
130
|
|
|
156
|
-
|
|
131
|
+
<details>
|
|
132
|
+
<summary>v1 生命周期与旧名称</summary>
|
|
157
133
|
|
|
158
|
-
|
|
134
|
+
`buildbeat doctor` 检查 v1 骨架,`init/adopt/upgrade` 管理其生命周期;它们不会生成或迁移完整的 v2 Work。
|
|
159
135
|
|
|
160
136
|
```bash
|
|
161
|
-
|
|
162
|
-
bash scripts/bus-check.sh --strict # 任一 conflict/error finding 会非零退出
|
|
163
|
-
bash scripts/verify-status.sh --run # 跑项目配置的真实测试套件并记录最近全绿
|
|
164
|
-
bash scripts/design-preview.sh 1 # 有 UI 时,Gate2 前打开真实可点原型
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
## 核心机制
|
|
168
|
-
|
|
169
|
-
- **工作包**:按一个可验收的用户级结果持续推进,不因单个文件、commit 或 reviewer 返回而提前结束。
|
|
170
|
-
- **三级审批**:`STOP_NOW` 处理越权、冻结语义和不可逆动作;`BATCH_AT_GATE` 集中可逆取舍;`NO_APPROVAL` 自主完成派生工作。
|
|
171
|
-
- **三轨制**:快轨、标准轨、重轨按风险选择流程重量,小事不上全套仪式。
|
|
172
|
-
- **单点事实**:`NOW.md` 只做薄指针,契约、决策、状态和线上查询各有唯一入口。
|
|
173
|
-
- **review-ready 核查门**:候选稳定、工作树干净、L3 证据已绿且没有已知待修项后,才启动一次独立 milestone reviewer。
|
|
174
|
-
- **机器护栏**:`bus-check --strict`、pre-commit、gitleaks 和项目测试把确定性规则变成可执行检查。
|
|
175
|
-
- **多仓漂移**:多仓项目在契约入口显式绑定各子仓 CHANGELOG、契约版本来源和本地部署基线 app;确定不一致才阻塞,缺仓或缺来源保持 unverified,不猜自然语言。
|
|
176
|
-
- **可选规范与 ADR**:STACK/CODE/REVIEW/DESIGN 默认不生成;存在时检查三行声明、Rule ID 和 Draft/Confirmed 状态。Confirmed STACK 还只读比对显式基线与 Node、lockfile、Docker FROM 事实,无法覆盖时保持 unverified。长期难回退决定才建 ADR,并校验 Status 与 Superseded 链。
|
|
177
|
-
- **生产状态证据**:项目接入 `live-status.sh` / `live-config.sh` 后,可检查部署平台配置与基线的漂移;它不自动证明运行中容器已经加载最新配置。
|
|
178
|
-
- **存量接管**:先建立系统边界和最小验证能力,再把新地盘纳入完整总线,避免直接重写未知遗留行为。
|
|
179
|
-
|
|
180
|
-
完整规则、Bootstrap 和接管流程见 [`SKILL.md`](SKILL.md);真实失败模式和设计理由见 [`lessons.md`](lessons.md)。
|
|
181
|
-
|
|
182
|
-
## 运转模型
|
|
183
|
-
|
|
184
|
-
```mermaid
|
|
185
|
-
flowchart LR
|
|
186
|
-
Views["AI 专业视角<br/>产品 · 全栈 · 测试"] --> WPA["Builder / 工作包 A<br/>判断 → 实现 → 测试 → 合并/发布证据"]
|
|
187
|
-
Views --> WPB["Builder / 工作包 B<br/>判断 → 实现 → 测试 → 合并/发布证据"]
|
|
188
|
-
Human["人工 Gate<br/>规格 · 设计 · 合并 · 上线"] --> WPA
|
|
189
|
-
Human --> WPB
|
|
190
|
-
WPA --> Bus["Git 文件总线<br/>NOW · 契约 · 决策 · 状态 · 证据"]
|
|
191
|
-
WPB --> Bus
|
|
137
|
+
npx --yes --package=@haiyangbg/buildbeat@latest buildbeat doctor /path/to/project
|
|
192
138
|
```
|
|
193
139
|
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
## 适用边界
|
|
197
|
-
|
|
198
|
-
推荐用于:
|
|
199
|
-
|
|
200
|
-
- 至少 2 个仓库或部署单元;
|
|
201
|
-
- 会持续迭代数周或更久;
|
|
202
|
-
- 一个或多个 Builder 需要分别驾驭多个 AI 上下文,并按工作包端到端闭环;
|
|
203
|
-
- 多个 AI Coding 会话需要稳定交接;
|
|
204
|
-
- 项目重视可核验记录,但不希望引入复杂 Agent Runtime。
|
|
205
|
-
|
|
206
|
-
不建议用于:
|
|
207
|
-
|
|
208
|
-
- 单仓小任务;
|
|
209
|
-
- 一次性脚本;
|
|
210
|
-
- 一周内即可收尾的工作;
|
|
211
|
-
- 没有验证能力、又不准备先补最小测试的项目。
|
|
140
|
+
完整合同见 [CLI 参考](docs/CLI.md)。BuildBeat 旧称 Solobaton,`solobaton` 可执行文件保留兼容别名;历史示例在 [example/](example/README.md)。
|
|
212
141
|
|
|
213
|
-
|
|
142
|
+
</details>
|
|
214
143
|
|
|
215
|
-
|
|
144
|
+
## 日常使用与适用范围
|
|
216
145
|
|
|
217
|
-
|
|
146
|
+
完成配置后,直接在会话里说:
|
|
218
147
|
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
│ ├── NOW.md # 当前期薄指针
|
|
227
|
-
│ ├── <期>-看板.md
|
|
228
|
-
│ ├── decisions.md
|
|
229
|
-
│ ├── status/
|
|
230
|
-
│ ├── changes/
|
|
231
|
-
│ ├── adr/ # 可选;长期技术决定与替代链
|
|
232
|
-
│ └── archive/<期>/evidence/
|
|
233
|
-
├── standards/ # 可选;STACK/CODE/REVIEW,UI 项目可加 DESIGN
|
|
234
|
-
├── scripts/
|
|
235
|
-
│ ├── bus-check.sh
|
|
236
|
-
│ ├── verify-status.sh
|
|
237
|
-
│ ├── drift-check.sh
|
|
238
|
-
│ ├── design-preview.sh
|
|
239
|
-
│ └── pre-commit.sh
|
|
240
|
-
├── .claude/agents/reviewer.md # 只读 milestone / risk-delta / closure 核查
|
|
241
|
-
├── 指挥台.md # 给人的一页操作卡
|
|
242
|
-
└── BUILDBEAT.md # 所用 BuildBeat 版本与升级记录
|
|
243
|
-
```
|
|
148
|
+
| 你想做什么 | 可以怎么说 |
|
|
149
|
+
|---|---|
|
|
150
|
+
| 新会话或新成员接手 | “同步项目记录,读取入口,继续这个工作。” |
|
|
151
|
+
| 查进度 | “已经做了什么,还差什么,下一步该谁?” |
|
|
152
|
+
| 处理决定 | “有什么需要我拍板?把证据一起给我。” |
|
|
153
|
+
| 排查中断 | “这次运行卡住了吗?核对现场后处理恢复。” |
|
|
154
|
+
| 准备换会话 | “把关键上下文落盘,核对哪些工作还在运行。” |
|
|
244
155
|
|
|
245
|
-
|
|
156
|
+
BuildBeat 适合持续迭代、经常切换 AI 上下文、需要多角色协作与可核验交付记录的项目。个人可以连续推进自己的工作,团队也可以通过共享记录接力。一次性脚本和很小的修改通常无需完整工作流。项目应有真实验证命令,或先建立最小验证能力。
|
|
246
157
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
| 能力 | 依赖 | 缺失时 |
|
|
250
|
-
|---|---|---|
|
|
251
|
-
| 文件总线和基础检查 | Git、Bash | 无法使用核心流程 |
|
|
252
|
-
| 真渲染设计预览 | Python 3 | 不能使用自带预览脚本 |
|
|
253
|
-
| Secret 提交阻断 | gitleaks | 降级为警告,不能声称 Secret gate 已建立 |
|
|
254
|
-
| 生产配置漂移 | `jq`、SHA 工具、项目 `live-config.sh` | 明确跳过,不能外推生产状态 |
|
|
255
|
-
| 线上版本查询 | 项目 `live-status.sh` 和平台 CLI | 明确未配置,不引用文档版本冒充线上事实 |
|
|
256
|
-
| L3 测试证据 | 项目填写 `verify-status.sh` 的 `SUITES` | 只能报告未配置,不能声称自动化测试已绿 |
|
|
257
|
-
| CLI 检查/脚手架/机械升级 | Node.js 20+、npm registry 或本仓库源码 | legacy npm v0 仍只读;scoped BuildBeat 1.21 已独立验证,真实 schema 2 版本增量试点仍由 v1.20 证据支撑;项目 uninstall 继续冻结,Skill/手动等价路径始终保留 |
|
|
258
|
-
|
|
259
|
-
Skill-only、legacy npm v0 和 scoped BuildBeat 1.21 是三个不同可用面;源码 checkout、registry artifact 与真实项目也必须分别核验。`doctor`、`init/adopt`、`upgrade` 不承担相同责任。完整对照见 [BuildBeat 能力矩阵](docs/CAPABILITY-MATRIX.md),真实版本增量证据见 [v1.20 试点记录](docs/PHASE4-V1.20-PILOT-2026-08-25.md)。
|
|
260
|
-
|
|
261
|
-
## 继续阅读
|
|
262
|
-
|
|
263
|
-
- [`SKILL.md`](SKILL.md):方法论与 Bootstrap 的唯一完整入口,§0.5 是 v2 驾驶手册;
|
|
264
|
-
- [`docs/v2/guide/README.md`](docs/v2/guide/README.md):v2 运行时十件套指南(怎么和会话说话、快速开始、workflow / policy / adapter / worker 合同 / 证据 / 审批 / 从 v1 迁移 / 安全边界 / 恢复);
|
|
265
|
-
- [`example/`](example/):虚构「简账」项目一期收尾的协议教学快照(可执行脚本仍引用模板 SSOT);
|
|
266
|
-
- [`lessons.md`](lessons.md):真实反模式、根因与解法;
|
|
267
|
-
- [`docs/ROADMAP.md`](docs/ROADMAP.md):新版产品方向、设计原则与 2026-08-24 生效的 CLI 执行修订;
|
|
268
|
-
- [`docs/EXECUTION-PLAN.md`](docs/EXECUTION-PLAN.md):当前分阶段工作包、依赖、验收和冻结边界;
|
|
269
|
-
- [`docs/CLI-STRATEGY-2026-08.md`](docs/CLI-STRATEGY-2026-08.md):基于官方来源的 CLI 策略对照与证据边界;
|
|
270
|
-
- [`docs/CHECKS.md`](docs/CHECKS.md):文件总线不变量、Gate/证据令牌、finding code 与严格模式规格;
|
|
271
|
-
- [`docs/CLI.md`](docs/CLI.md):CLI 命令边界、文件所有权、manifest、机械升级和手动移除合同;
|
|
272
|
-
- [`docs/CAPABILITY-MATRIX.md`](docs/CAPABILITY-MATRIX.md):Skill-only、legacy npm v0 与 scoped BuildBeat 1.21 的双语能力/互操作对照;
|
|
273
|
-
- [`docs/LEGACY-V1.16-MIGRATION.md`](docs/LEGACY-V1.16-MIGRATION.md):v1.16 拷出项目继续手工维护或受控重建 schema 2 基线的安全路径;
|
|
274
|
-
- [`docs/CLI-PILOT-2026-08-23.md`](docs/CLI-PILOT-2026-08-23.md):三个真实存量项目的 CLI v0 只读试点与写入边界决策;
|
|
275
|
-
- [`docs/PHASE1-PILOT-2026-08-24.md`](docs/PHASE1-PILOT-2026-08-24.md):Phase 1 文件总线在 example、活跃多仓投影和真实单仓代码树上的只读试点;
|
|
276
|
-
- [`docs/PHASE2-PILOT-2026-08-25.md`](docs/PHASE2-PILOT-2026-08-25.md):Wave 1 三条真实目录写路径、Tide 保护摘要、UI 探测反馈与最终本地 Git/Hook/hash 证据;
|
|
277
|
-
- [`docs/PHASE2-BUILDBEAT-PILOT-2026-08-25.md`](docs/PHASE2-BUILDBEAT-PILOT-2026-08-25.md):BuildBeat canonical namespace 的新真实目录回归、Tide 保护复核与 Gate3 关闭证据;
|
|
278
|
-
- [`docs/PHASE4-V1.20-PILOT-2026-08-25.md`](docs/PHASE4-V1.20-PILOT-2026-08-25.md):schema 2 真实版本增量升级、项目所有权保护与真实多仓只读刷新证据;
|
|
279
|
-
- [`docs/PHASE4-STABILITY-AUDIT-2026-08-25.md`](docs/PHASE4-STABILITY-AUDIT-2026-08-25.md):演进书 §15 的 12 条硬门槛现状、证据边界与未关闭发布阻塞;
|
|
280
|
-
- [`docs/RELEASING.md`](docs/RELEASING.md):npm 发布 Gate、验证与 Trusted Publishing 迁移;
|
|
281
|
-
- [`CONTRIBUTING.md`](CONTRIBUTING.md):贡献、验证和 PR 边界;
|
|
282
|
-
- [`SECURITY.md`](SECURITY.md):支持版本与私密漏洞报告通道;
|
|
283
|
-
- [`CHANGELOG.md`](CHANGELOG.md):版本历史和拷出项目升级说明。
|
|
284
|
-
|
|
285
|
-
## 贡献
|
|
286
|
-
|
|
287
|
-
欢迎 Issue 和 Pull Request。完整提交规则见 [`CONTRIBUTING.md`](CONTRIBUTING.md);未公开漏洞请勿发公开 Issue,按 [`SECURITY.md`](SECURITY.md) 私密报告。修改流程语义时,请同时更新 `SKILL.md`、相关模板、中文/英文 README、示例和 CHANGELOG,并说明:
|
|
288
|
-
|
|
289
|
-
1. 解决了哪个真实失败模式;
|
|
290
|
-
2. 如何复现;
|
|
291
|
-
3. 哪些自动化检查证明没有回归。
|
|
292
|
-
|
|
293
|
-
提交前至少运行:
|
|
294
|
-
|
|
295
|
-
```bash
|
|
296
|
-
bash -n templates/scripts/*.sh tests/*.sh
|
|
297
|
-
npm test
|
|
298
|
-
npm run test:scripts
|
|
299
|
-
npm run test:skill-only
|
|
300
|
-
npm run check:docs
|
|
301
|
-
npm run pack:check
|
|
302
|
-
git diff --check
|
|
303
|
-
```
|
|
158
|
+
团队协作使用共享 Git 仓库与项目约定。BuildBeat 不提供独立的多人账号、角色/权限管理;不采集或上传项目使用数据,没有遥测采集。你配置的 AI 工具和通知服务有各自的数据处理方式。更完整的日常话术见 [用户指南](docs/v2/guide/00-how-to-talk.md)。
|
|
304
159
|
|
|
305
|
-
##
|
|
160
|
+
## 深入了解与贡献
|
|
306
161
|
|
|
307
|
-
[
|
|
162
|
+
- [文档总入口](docs/README.md):当前指南、规范与历史记录。
|
|
163
|
+
- [能力矩阵](docs/CAPABILITY-MATRIX.md):手工协议、v1 CLI、v2 运行时与插件的能力和验证范围。
|
|
164
|
+
- [跨会话接续](docs/v2/guide/11-session-handoff.md) · [运行恢复](docs/v2/guide/10-recovery.md) · [批准与分诊](docs/v2/guide/07-approval-guide.md)。
|
|
165
|
+
- [Skill](SKILL.md):会话如何使用 BuildBeat;[lessons](lessons.md):机制背后的真实事故。
|
|
166
|
+
- [CHANGELOG](CHANGELOG.md) · [贡献指南](CONTRIBUTING.md) · [MIT 许可](LICENSE)。
|