
几乎所有给 AI agent 做记忆的方案,回答的都是同一个问题:记忆存哪、怎么检索回来。向量库、知识图谱、托管的记忆服务,路线各不相同,内核一致,都把「记忆」当成一个存储加检索的问题来解。
单 agent 场景下,这个假设没毛病。一个 agent、一台机器、一份上下文,存得准、捞得回,活就干完了。
但你只要越过一条线,同时跑多个 agent、跨多台机器、跨多个厂商,问题的性质就变了。
真正卡住你的不是「存哪」
设想一个不算极端的场景。你在 Windows 上用 Claude Code,在 macOS 上用 Codex CLI,两台 Linux 上挂着 Gemini,手机上还有一个。它们理论上该「共享记忆」。
这时候你会撞上的是这些问题。A agent 刚写下的结论,B agent 还在用三小时前的旧版,两边都觉得自己对,谁说了算?两台机器几乎同时改了同一份记忆,怎么同步、怎么不互相覆盖?一条临时的调试笔记,要不要让所有 agent 都看见、都被它带偏,什么该共享、什么该私有?
注意,这里没一个问题是「存哪、怎么检索」。它们关于权威、同步、并发、边界。这是协议层面的问题。再快的向量检索、再聪明的语义召回,都不解决「两个 agent 同时写、谁覆盖谁」。数据库管的是数据,管不了协作。
nestwork 就是冲这个空档来的。它不是又一个记忆数据库,是一套面向多 agent 的协作与治理协议。

它长什么样:git 原生,纯 markdown,无服务器
nestwork 的形态简单到反直觉:记忆就是一个 git 仓里的纯 markdown,它就是唯一真相源。没有服务器,没有托管后端,没有要你注册的 SaaS。agent 通过 pull / commit / push 同步,git remote 就是传输层。这意味着跨物理机同步是真跨机,不是某个云租户内部的同步。
接入也是纯 git。用 GitHub 的 Use this template 继承整套协议,clone 即接入。这里有个常被低估的好处:你继承来的是一个你自己的 private 仓,记忆从第一天起就长在你手里,而不是托管在某个服务商的后台。敏感内容还能再叠一层 git-crypt,入库即加密,仓库托管方拿到的也只是密文。继承而非 fork,还意味着上游更新协议时碰不到你的私有数据。
托管的记忆服务给不了这个。你把上下文交出去,它就躺在别人的库里。git 原生的好处之一,是数据的归属权从头到尾没离开过你。
它兼容的是一整类 agent:Claude Code、Codex CLI、Gemini CLI、Hermes、OpenClaw 这些 markdown 配置型 agent,都能挂进同一份记忆。
这点在今天尤其值钱。几乎每个月都有新的「最强模型」,你今天在 Cursor,明天想试 Claude Code,后天 Codex 或 Gemini 又更新了。记忆绑在某一个工具上,等于把宝押在它不被淘汰上。
还不只是淘汰。政策、地区限制、账号、价格,任何一条都可能让你今天离不开的工具,某天突然就用不了了。到那时候,记忆绑得越深,搬家越疼。绑在 git 上的纯文本不挑工具,谁来谁走,记忆都还在。哪天要从一个海外工具整体切到国产模型,你的上下文原样不动,换的只是读它的那个 agent。
凭什么叫它协议,不是工具
把它叫协议不是修辞。撑起这个定位的是一组具体机制,每条都在回答数据库不回答的问题。
分层优先级加冲突裁决。记忆分层:行为规则 > 策略 > 共享记忆 > 各 agent 私有 > 项目 > 方法论。两条指令冲突,规则很硬,选高优先级那条,不许把两边和稀泥地合并。这是治理,是「谁说了算」的明文答案。
写权限按机按 agent 隔离。每个 agent 只写自己的目录。一旦 pull 出现冲突,裁决是确定的:自己目录取本地,别人目录取远端,上游管理的层取远端。多写者并发,从根上不打架。
每次写入都是原子同步。在装了逐次写入钩子的工具上(目前是 Claude Code 和 Kimi Code),每次写记忆之前 pull --rebase,写之后 commit、push 带重试。竞态窗口被压到一次写入的瞬间,而不是敞开一整个会话。没有这类钩子的工具,比如 Codex、Gemini,在会话结束时 commit、push 自己的目录。
蒸馏。多个 agent 各自的私有记忆,怎么沉淀成全员共享的事实?走一条蒸馏流程:先派子 agent 审查,查敏感信息、查事实错误、查矛盾、查过时,再交人确认,最后才并入共享记忆。合并是非破坏性的:共享记忆取并集而不是交集,只有一个 agent 观察到的也保留,各 agent 的私有记忆原样不动。
agent mailbox。agent 之间不只能读同一份共享记忆,还能互相留言,一套 git 原生的异步通信。协作从「都看同一块白板」升级成「能点对点对话」。
协议版本治理。用 MAJOR.MINOR 标记协议演进,会话启动钩子发现上游有新版本时会提醒、但不自动应用,文件行数上限还能按每个实例覆盖。它像一份会迭代的协议规范,不是一个静态的软件包。

真有人在跑
最有说服力的不是机制清单,是作者自己在 dogfood。Windows、macOS、多台 Linux、安卓,16 个以上的 agent 实例,共用同一套记忆。不是 demo 仓,是天天在用的真实负载。
换个框架看
你只有一个 agent 的时候,需要的或许真就是一个好记忆库。但只要你开始让多个 agent、跨多台机器、跨多个厂商一起干活,你迟早会发现,瓶颈不在「存哪、怎么检索」,在「谁说了算、怎么同步、怎么不互相覆盖」。
那一刻,你需要的不是又一个数据库,是一份协议。
上手
bash scripts/install/claude.sh # codex / gemini 同理
GitHub:songth1ef/nestwork。这个框架戳中你了,给它一个 star;想直接跑,用 Use this template 继承协议,clone 即接入。
给你的 agent 一份记忆
nestwork 把一个私有 git 仓库变成 Claude Code、Codex、Gemini、Kimi 等 agent 共享的长期记忆。
用模板创建我的记忆仓库 → ★ 去 GitHub 点个 Star