Switch sessions. Keep building. A delivery runtime for humans and AI sessions: work context and records in project files and Git, a recoverable build-verify-review-fix loop whose evidence is read back
Developer toolsJavaScript · ShellGitHub @HaiYangBG1Self-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
Switch sessions. Keep building. A delivery runtime for humans and AI sessions: work context and records in project files and Git, a recoverable build-verify-review-fix loop whose evidence is read back from Git, and merge decisions bound to the candidate you reviewed.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
会话随时换,项目接着干。 名字的由来:每一步是一个音符,Agent 按节拍把它们演奏出来;演奏过的乐谱——上下文、决定和结论——留在 Git 里,随时翻阅。 BuildBeat 面向人和 AI 会话:工作说明、决定和每轮结论留在项目文件与 Git 里,实现、验证、审查和修复在会话之外自动推进、随时可恢复,候选带着证据停在你的合并决定前。 一项工作写一份 work.md。你接受之后,buildbeat run 在隔离的工作树里按节拍推进:实现、跑项目自己的验证命令、独立只读审查,有问题就修复、重验、再审。真正需要人的时候它会停下:合并拍板、环境故障、预算到顶、审查不收敛。工作说明、决定、审查问题和每轮运行的终态记录都进 Git,换会话、换工具、换人都从同一份记录接着干;运行中的台账和原始日志留在本机(见下文「记录与接续」)。 关掉会话、换 AI 工具、换人,工作照样接着干。 工作说明和运行台账都在项目里,buildbeat run 从记录恢复;主仓带多个代码仓时,buildbeat status --repo . --all-repos 一条命令看全所有仓的待办。 回来看到的是事实,不是 AI 的自述。 验证跑项目真实命令,结果由运行时从 Git 和台账回读;审查独立、只读;缺工具、后端不可用、审查没交报告都按环境故障停下,不会当成代码问题去修。Read the full README ↗
用 AI 写代码,换个会话、换个软件、换台电脑、换个人,事情都得从头讲一遍。
BuildBeat 面向人和 AI 会话,把要做的事、做到哪、定过什么都记在项目和 Git 里,谁接手都能接着干。AI 写完代码,它会接着跑测试、做审查、修问题,最后停下来等你拍板。
work.md 给你看:目标、范围、做到什么算完测试结果由 BuildBeat 自己去读,不靠 AI 汇报。中途断了,说一句「继续」就接着跑。
把下面这段复制给你的 AI 编程工具(Claude Code、Codex、Cursor 都行),它会自己装好、配好:
请帮我在这个项目里用上 BuildBeat(https://github.com/HaiYangBG1/BuildBeat):
1. 检查本机有没有 Node 20 以上和 Git,缺了就告诉我怎么装。
2. 安装或升级 BuildBeat 运行时:
npm view @haiyangbg/buildbeat@latest version
npm install --global @haiyangbg/buildbeat@latest
buildbeat --version
如果本机已经装了 3.x,并且还有没跑完的工作,先用旧版跑完或取消,再升级。
3. 读一遍 npm 包里的 SKILL.md 和 docs/v2/guide/01-quickstart.md(在 $(npm root -g)/@haiyangbg/buildbeat/ 下),之后都按 SKILL.md 的方式干活。
4. 按快速开始把模板放进这个项目、补好 .gitignore。实现、审查、修复默认用本机已登录的 AI 命令行工具,拿不准就问我。
5. 弄好后用一两句话告诉我可以开始了。之后我只用平常的话跟你说要做什么,命令都由你来跑。
装好之后,就用平常的话跟它说,常见场景见下面「用起来是什么样」。
/plugin marketplace add HaiYangBG1/BuildBeat
/plugin install buildbeat@buildbeat-plugins
/buildbeat:buildbeat
想自己动手一步步装,见快速开始。
不想装 Node 或运行时?只用 Skill 和项目文件也行,见只用 Skill 和项目文件。
第一次用
开始一项工作
work.md:导出当前筛选的账目,带逗号的字段加引号,测试全过才算完。你看行吗?换会话、换电脑、换人
想再改改
你自己动手改了
卡住了
好几个仓库
它会停下来找你的情况只有这几种:做完了等你拍板、预算用完、审查一直不收敛、环境出了问题。
$ buildbeat status --repo . --work WORK-CSV-EXPORT
WORK-CSV-EXPORT MERGE_DECISION
[P1 0b5e258117cb5602] (accept) csv: quote fields that contain commas
work.md ✓ · runs 1
cost: review rounds 2 · findings 1 · human waits 1 (open 33s) · worker 2s
work WORK-CSV-EXPORT:
RUN-CSV-EXPORT-01 [final-decision] enter-wait-merge — waiting 33s
candidate: ede20b668cb04ae30cba1676b5e031930e711c8d
next: buildbeat decide --action approve … --candidate ede20b6… --by <you>
next: buildbeat decide --action reject … --reason <why> --by <you>
next: buildbeat run … --adopt <sha> --by <you> # commit a manual repair in the run worktree …
next: buildbeat decide … --action fix --reason <what to repair> --by <you>
是什么:BuildBeat 记东西的最小单位。一个你能看到的结果,比如「导出 CSV」,就是一项工作,对应一个文件夹。
为什么要有它:AI 记不住事,会话也随时会换。把这件事要做什么、做到哪、审出过什么问题、你拍过什么板,都收进这个文件夹,谁接手都从这里接着干,回头也能翻出来看它是怎么做成的。
第一次接入时,AI 会照模板把这些文件放好:
你的项目/
├── AGENTS.md、CLAUDE.md 告诉 AI 工具:这个项目用 BuildBeat
├── .gitignore 加上下面两行 .buildbeat/ 目录
├── delivery/ 跟着 Git 走
│ ├── envelope/
│ │ ├── worker.sh 把 AI 工具包成 BuildBeat 能调用的一步
│ │ └── prompts/ 实现、审查、修复各自的提示词
│ └── work/
│ └── WORK-X/ 一项工作一个文件夹
│ ├── work.md 要做什么、做到什么算完
│ ├── run-config.yaml 用哪个 AI、跑什么测试、能改哪些目录
│ ├── decisions.jsonl 接受、批准、关闭这些决定
│ ├── review-findings.jsonl 审查挑出的问题和你的裁决
│ ├── releases.jsonl 上线后的检查记录(用到才有)
│ ├── result.md 关窗时写:做成了什么、剩下什么、写进了哪些项目文档
│ └── runs/RUN-X-01/
│ └── run-record.json 这一轮的结果、证据和成本
└── .buildbeat/
├── notify.yaml 可选:等你拍板时发 webhook 或钉钉通知
├── runtime/ 只在本机:正在跑的台账、日志、截图
└── worktrees/ 只在本机:AI 干活用的隔离副本
delivery/ 进 Git:换会话、换软件、换电脑、换人,拉下代码就能接着干;不要在 .gitignore 或 .git/info/exclude 里排除它.buildbeat/runtime/、.buildbeat/worktrees/ 只在本机:正在跑的那一轮不跟着 Git 走,要在原来那台机器上跑完或停掉work.md名字的由来:每一步是一个音符,Agent 按节拍把它们演奏出来;演奏过的乐谱——上下文、决定和结论——留在 Git 里,随时翻阅。