你的 AI 助手每天都在失忆!这个项目能治好它
上周我用 Claude Code 重构一个模块,跟它来回聊了快两个小时,需求理清了,任务拆了 8 个,代码写了一半。
然后浏览器崩了。
重新打开对话窗口,它说:
“您好!有什么可以帮您的?”
两个小时,白聊了。
我盯着屏幕愣了几秒,只能重新把需求说一遍,任务重新拆一遍,上下文重新讲一遍。
这种崩溃,用过 AI 编程工具的人应该都经历过。
最近 GitHub 上有个叫 Beads 的项目火了。前 Google/Amazon 大佬 Steve Yegge 用 Claude 写了 6 天做出来的,现在已经成了 AI 编码代理圈子里的热门话题。
有人说是”AI Agent 的终极记忆方案”,有人说是”过度设计的玩具”。
我花了一天时间扒了它的源码,结论是:两个都没说错,但都说漏了最关键的东西。
一、三个痛点,看看你中了几个
痛点一:会话断了,一切重来
你跟 Agent 聊了 50 轮,终于把需求理清楚了,任务也拆好了。
突然网络断了,或者浏览器崩溃了。
重新打开对话窗口,Agent:”您好!请问有什么可以帮您?”
50 轮对话白聊了。它什么都不记得。
痛点二:任务太多太长,上下文爆了
一个重构项目拆了 20 个任务,每个任务都有描述、设计说明、验收标准。
Agent 每次开始新任务前,都要重新读一遍所有历史。
读着读着,上下文窗口满了。后面的任务根本塞不进去。
要么手动删历史记录,要么开新会话重新开始。
痛点三:多 Agent 协作,各干各的
你开了两个 Agent 同时干活。
Agent A 在改登录接口,Agent B 也在改登录接口。
它们不知道对方的存在,直到代码合并时冲突爆炸。
Agent A ──改登录接口──┐ ├──→ 💥 合并冲突Agent B ──改登录接口──┘ (互不知道对方存在)
这些不是小问题,这是 AI Agent 落地最大的障碍。
Beads 想解决的就是这个问题 —— 给 AI Agent 一个持久化的、结构化的记忆系统。
即使会话断了、开新窗口、换 Agent,记忆都不会丢。
二、它是怎么工作的?
架构很简单:

三层结构:Agent 调命令 → CLI 执行 → 数据库存储。
你用 bd create 创建任务、bd ready 查看可执行的任务、bd close 完成任务,这些命令最终都变成了数据库里的写入操作。
而且每个操作都会自动记录:谁在什么时候创建了什么任务、改了什么状态、建立了什么依赖关系。全都有历史可查。
搞清楚它是怎么工作的之后,我们再来看它最核心的部分 —— 设计理念。
三、它的设计思路
大多数任务管理器的逻辑是:你创建一个任务,填标题、描述、截止日期,然后关掉它。
Beads 的思路完全不一样:它把任务变成了一张关系网。
设计理念一:任务是有依赖关系的
现实中的工作从来不是孤立的。
“登录接口没写完,前端页面没法测。” “数据库迁移没完成,后端接口写不了。”
Beads 把这种关系直接存下来:
bd dep add 前端页面 登录接口 # 前端 依赖 登录接口bd dep add 后端接口 数据库迁移 # 后端 依赖 数据库迁移
依赖关系:

然后你只需要跑一个命令:
bd ready→ 登录接口 (ready)→ 数据库迁移 (ready)
它自动帮你算出来:哪些任务现在可以做,哪些还在等别人。 你不需要自己去记”现在该干嘛了”。
设计理念二:任务是有层级的
一个大需求拆出来的任务,不应该散落在列表里。Beads 用层级 ID 把它们组织起来:
bd-a3f8 ← Epic:重构用户模块├── bd-a3f8.1 ← 实现登录接口├── bd-a3f8.2 ← 实现注册接口└── bd-a3f8.3 ← 数据库迁移
光看 ID 就知道谁属于谁。 不需要额外的标签、分类、文件夹。
设计理念三:边讨论边记录,不等
这是我扒源码时最大的收获。
大多数工具的逻辑是:先开会讨论 → 讨论完了录入系统 → 再分配执行。
Beads 的逻辑是:讨论中随时创建,不打断对话流。
你:我想加个登录功能AI(边聊边拆):$ bd q "实现登录功能" -t epic→ bd-a1b2需求建好了,JWT 还是 Session?你:JWTAI(继续拆):$ bd create "实现登录接口" -p 2 --parent bd-a1b2→ bd-a1b2.1好,我先做这个...
bd q 这个命令很关键 —— 它只输出一个 ID,不啰嗦。AI 拿到 ID 继续用,完全不中断对话。
这个设计解决了 AI 最常见的一个问题:讨论完就忘了。
等聊完再录入?AI 可能已经忘了最初拆了什么。边讨论边记录,就不会丢。
设计理念四:记忆会”遗忘”
AI 的上下文窗口有限。100 个已完成任务 × 2KB ≈ 50K tokens,光读历史就占了大半个窗口。
Beads 的做法很有意思:主动压缩旧任务。

压缩后只保留 ID 和标题,节省 90% 空间。原文呢?版本历史里还能找回来。
这其实模拟了人类的”遗忘”机制 —— 不是真忘,是想起来的时候能想起来,但平时不占脑子。
四、怎么安装使用?
安装
curl -fsSL https://raw.githubusercontent.com/gastownhall/beads/main/scripts/install.sh | bash
或者 brew install beads(macOS)。
初始化
cd your-projectbd initecho"Use 'bd' for task tracking" >> AGENTS.md
三行搞定。之后你的 AI 助手就会自动用 bd 来管理任务。
基本使用
# 创建需求bd create "实现用户认证" -t epic -p 1# 拆子任务bd create "实现登录接口" -p 2 --parent bd-a1b2# 查看可以做的任务(无阻塞的)bd ready→ bd-a1b2.1 实现登录接口 (ready)# 认领 + 完成bd update bd-a1b2.1 --claimbd close bd-a1b2.1 "完成"
五、但它真的适合你吗?
第一次看到 Beads,很多人的反应是:”这不就是个命令行版的 Jira 吗?”
如果你只看到这里,你就错过了它的精妙之处。
但反过来,如果你只是一个人用一个 Agent,你大概率用不上它。
让我问你四个问题:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
四个都是”不需要”?那 Beads 对你就是杀鸡用牛刀。
一个 TODO.md 或者 SQLite 就够了。
六、结论
Beads 是好项目,但不是给所有人用的。
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
AI 工具正在从”对话式交互”走向”持久化协作”。
但它代表了一个趋势:
AI 工具正在从”对话式交互”走向”持久化协作”。
Agent 不再是用完就丢的聊天机器人,而是有记忆的同事。
这个趋势,值得关注。
夜雨聆风