同时用 Claude Code 和 Codex 的人大概都碰到过这种情况:几个月后翻 git log,看到一段奇怪的代码,commit message 是模型自己写的一句"refactor xxx",当时让它改的原话、它试过又放弃的方案、跑了哪些命令,全都跟着终端滚动没了。换个 agent 接着干也一样,Codex 不知道 Claude Code 昨天定下的约定,你得从头再讲一遍。
Atlas 想解决的就是这个。它给自己的定位是"给 coding agent 用的版本控制":每次 agent 会话都记下来,提交代码时把 commit 和产生它的那次会话关联起来,形成一个"检查点",以后随时能回头查这段代码是哪个 agent、在什么提示下、出于什么理由改的。这几天它在 Rust 日榜上冲得挺猛,一天涨了五六百星。
核心是"检查点"
Atlas 会把项目里每个 agent 会话存进 .atlas/sessions.db:提示词、消息、工具调用、改了哪些文件、打了哪些补丁。落盘之前先做一遍密钥脱敏,本地库本身不会变成泄露源。
关联 commit 的方式比较聪明,它是"观察"提交而不是拦截提交。你在终端里手动 commit、在别的编辑器里 commit,甚至 Atlas 没开的时候 commit,之后它都能找到对应的会话。amend 和 rebase 之后,它按 patch-id 重新对上关联;squash 之后如果确实分不清,它宁可把关联标成孤立,也不瞎猜。
查的时候也不用自己翻原始记录,选中一个检查点就能直接跟它对话,回答内容来自那次会话里实际发生的事。已有的 Claude Code 历史也能导入进来,记录不必从装上 Atlas 那天才开始。
多个 agent 共用一份记忆
Claude Code 和 Codex 通过 ACP(Zed 推的 Agent Client Protocol)作为子进程跑,另外还有 Atlas 自带的 agent,ACP registry 里的 Cursor、OpenCode、Kilo Code 等也能拉起来,都在同一个窗口里并排对着同一个代码库。
每次发消息前,Atlas 会往提示里补上下文:
- 共享记忆:任意 agent 写下的计划、决策、改动、失败记录、架构笔记,下一个 agent 都能看到。Claude Code 做的决定会出现在 Codex 的下一轮提示里
- 语义匹配:你的消息在本机做 embedding,跟项目记忆索引做匹配,检索不出本机
- 会话交接:新会话第一条消息会带上上一次会话的要点,哪怕上次用的是另一个 agent
- 你已经写好的东西:
.atlas/knowledge/里的 markdown 笔记、CLAUDE.md、AGENTS.md、Claude Code 的记忆文件、Codex 的历史,统一进一个索引
@ 引用文件、目录、符号、分支、commit、笔记、历史会话都行。引用目录或大文件时只传路径让 agent 按需去读,不会一下把上下文窗口塞满,这个细节挺实在。
顺带还是个编辑器
除了 agent 部分,它还带了 CodeMirror 编辑器、带泳道的 git 提交图、块式终端(每条命令单独带输出、退出码和耗时)、markdown 知识库、arXiv / Semantic Scholar 论文检索、内置浏览器标签页、最多三栏分屏。Skills 也能管,按项目或全局启用,通过软链接到各 agent 自己的 skills 目录生效。
数据格式都是开放的:笔记是 markdown,会话是 JSONL,画布是 JSON,只有检查点关联表用 SQLite 放在已被 gitignore 的 .atlas/ 里。哪天不想用了,关掉 Atlas 照样用 vim 打开项目。
怎么用
官网或 Releases 页下载安装包,macOS 13+ 是 .dmg(Apple Silicon 和 Intel 都有),Windows 10+ 是 .msi。要用 Claude Code 的话,本机得先装好 claude CLI 并放进 PATH;Atlas 自带的 agent 不需要额外 CLI。本地模式不用注册账号、可以完全离线,想多设备或团队同步再去登录建组织。
Linux 能从源码编(Tauri 项目),但官方说没测过:
git clone https://github.com/pacifio/atlas
cd atlas
bun install
bun run dev:app
需要 Bun 和 Rust stable,Linux 还要装 GTK 3、WebKit2GTK 4.1 的开发包。
值得注意的地方
- 还在 alpha,最新版本号是 alpha-0.3.4,ACP registry 里那些长尾 agent 的适配还在测
- 匿名使用统计默认是开的,说是只收粗粒度元数据、不收代码和提示词,介意的话看仓库里的 TELEMETRY.md 关掉
- 它本质是个完整的桌面 IDE,不是插在你现有工作流里的小工具。如果你已经习惯在 VS Code 或终端里跑 Claude Code,要不要为了检查点和共享记忆换个主界面,得自己掂量
我觉得最有价值的是"commit 关联会话"这个思路。现在 agent 写的代码占比越来越高,只留一条模型写的 commit message 确实不够,这块迟早要有人补上。经常在多个 agent 之间切换的人可以装上试试。
项目信息
- 语言:Rust(Tauri 桌面应用)
- License:Apache-2.0
- Star:截至 2026-09-28 约 8000
- 平台:macOS 13+、Windows 10+
- GitHub:GitHub - pacifio/atlas: Source control for agents. Use multiple coding agents, track their changes and query them in one place · GitHub
- 官网:https://www.tryatlas.cc/
- 文档:https://docs.tryatlas.cc/
