beads
AI编程Agent的结构化记忆系统,用图状任务追踪和版本控制数据库解决长期上下文管理难题
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
AI编程Agent的结构化记忆系统,用图状任务追踪和版本控制数据库解决长期上下文管理难题
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有没有过这种经历:让 AI 编程助手帮你改了个 bug,结果第二天再问它,它完全不记得这件事,还得从头解释一遍背景?这不是 AI 的「忘性大」——而是 AI 本身就没有持久记忆能力。每一次对话都是全新的开始,历史上下文稍纵即逝。
这就是 Beads 要解决的核心问题。
Beads 诞生于前亚马逊工程师、传奇程序员 Steve Yegge(以《程序员的呐喊》博客闻名)之手。它不是一个聊天助手,而是一个面向 AI 编程工具的记忆与任务管理系统。2025 年底开源后迅速走红,截至 2026 年初已积累超过 24,000 颗 GitHub Stars,成为 AI Agent 基础设施领域的标杆项目。
图1:Beads 在终端中的使用场景,Agent 可通过结构化命令管理长期任务
Steve Yegge 早在 2020 年代初就开始折腾 AI 编程工具。作为一个写了三十年代码的老程序员,他敏锐地意识到:AI 编程助手最缺的,不是更聪明的模型,而是一个可靠的记忆系统。
2025 年底,Steve 正式发布 Beads,并在 2026 年 1 月基于 Beads 搭建了完整的 AI 编程 Agent 编排引擎 Gastown。随后在 2 月,他将 Beads 的底层存储从 SQLite+Git 混合架构迁移到 Dolt(一个 Git 风格的 SQL 数据库),解决了跨机器同步和并发写入的核心瓶颈。3 月,基于 Beads 构建的 Wasteland 项目也随之亮相。
整个演进路径清晰:先解决记忆问题,再构建 Agent 协作层,最后扩展到更大规模的编排系统。
可以把 Beads 理解为给 AI 编程工具配备的一个专属项目经理。传统的 TODO.md 或 README.md 对 AI 来说只是普通文本,AI 需要"猜测"哪些是已完成任务、哪些是待办、哪些任务之间有依赖关系。
Beads 则提供了一个结构化的数据库:每个 issue 有唯一哈希 ID(类似 bd-a1b2),可以标注优先级、状态、负责人,还能声明任务间的依赖关系(谁阻塞谁、谁被谁发现、谁回复谁)。AI 不再需要"猜测",而是像调用 API 一样精确操作任务。
Beads 底层使用 Dolt——一个支持分支、合并、版本历史的 SQL 数据库。这意味着项目任务历史可以像 Git 一样被追踪、回滚和协作编辑。
.beads/embeddeddolt/bd dolt push / bd dolt pull 对接 Dolt 远程仓库,实现跨机器同步所有 bd 命令都支持 --json 输出格式,方便 AI 解析和自动化:
bd ready # 列出没有未解决阻塞项的任务
bd create "修复登录bug" -p 0 # 创建 P0 优先级任务
bd update bd-a1b2 --claim # 原子性认领任务
bd dep add bd-a3f8.1 bd-a3f8 # 声明任务依赖关系
bd prime # 输出 Agent 工作流上下文和持久记忆
bd remember "这个模块使用自定义 ORM" # 存入项目知识记忆
支持 epic → task → sub-task 三级嵌套:bd-a3f8(Epic)→ bd-a3f8.1(Task)→ bd-a3f8.1.1(Sub-task)。
Beads 自动将已关闭的老任务进行「记忆衰减」摘要,减少上下文窗口占用的同时保留关键信息。这对处理长期项目的 AI 尤为重要——任务历史不会无限膨胀,但重要结论不会丢失。
Beads 不只是给人类用的 CLI——它的真正目标是让 AI Agent 学会使用它。目前已支持:
运行 bd setup claude 或 bd setup codex,Beads 会自动配置好相关的指令文件和 hooks。
支持消息类型的 issue(--type message),适合在任务上下文中嵌入临时讨论,支持线程回复。
Beads 是一个纯 CLI 工具,没有 Web 界面或服务端组件。安装极其简单:
# 官方安装脚本(跨平台)
curl -fsSL https://raw.githubusercontent.com/gastownhall/beads/main/scripts/install.sh | bash
# Homebrew(macOS/Linux)
brew install beads
# npm
npm install -g @beads/bd
# pip
pip install beads-mcp
安装后,在项目目录运行 bd init 即可初始化。Beads 非常轻量——Go 编写,无 GPU 依赖,运行时内存约 200MB,磁盘约 100MB。不支持 Docker 部署,适合作为本地/项目级工具。
从代码结构看,Beads 是一个典型的 Go CLI 项目:
cmd/bd/:主命令入口(init、create、update 等子命令)internal/:核心业务逻辑integrations/:各类 Agent 集成(Claude Code MCP、beads-mcp 等)examples/:15+ 完整示例,覆盖从单人开发到团队协作的多种场景website/:基于 Docusaurus 构建的完整文档站关键依赖:Dolthub 驱动(SQL)、Cobra CLI 框架、Anthropic SDK(Agent 集成)、Charm TUI 库、testcontainers-go(测试环境)。项目配置了完整的 lint、测试套件和 GoReleaser 跨平台发布,覆盖 macOS、Linux、Windows、FreeBSD 四大平台。
Beads 的出现,标志着 AI 编程工具正在从「单次对话交互」向「持久化项目上下文」演进。
过去一年,AI 编程工具的军备竞赛集中在模型能力和上下文窗口。但 Steve Yegge 敏锐地指出:光有上下文还不够——上下文需要结构化和可操作。Beads 代表了一种趋势:AI 基础设施正在从「模型层」向下渗透到「工具层」和「数据层」。类似的趋势还包括 MCP(Model Context Protocol)、Agent 记忆系统、项目知识图谱等细分领域。
它 24,000 Stars 的增长曲线印证了社区对这类工具的强烈需求。对于正在构建 AI 编程 Agent 或希望提升 AI 编程效率的开发者,Beads 是一个值得认真研究的案例。