Claude Code、Codex 这类 AI 编码代理正在承担越来越多的代码改动,但「这次提交为什么这么改、代理当时依据了什么」往往随会话结束一起丢失。开源项目 Atlas(github.com/pacifio/atlas)把源码控制的思路延伸到代理身上:每次提交都回链到产生它的会话,提示词、工具调用和推理记录一并留存,之后随时可查。项目以 MIT 协议开源,目前 2.7k star、181 fork。

检查点:每个提交都有会话来源

Atlas 的核心机制是「检查点」(checkpoint)。代理每次运行都会产生检查点,把提交与产生它的会话绑在一起:会话里包含提示词、工具调用和文件改动,几个月后仍可查询。

会话记录保存在项目本地的 .atlas/sessions.db(SQLite),写入磁盘前会自动脱敏密钥等敏感信息。即使提交是在终端里、其他编辑器里、甚至 Atlas 关闭状态下完成的,也能通过 patch-id 对回会话;rebase 和 amend 之后,链接依然有效。

多代理并行与共享记忆

Atlas 不绑定单一代理。Claude Code、Codex、Atlas 自带的代理,以及 ACP registry 里的 Cursor、OpenCode、Kilo Code 等,都可以在同一代码库上并行运行。所有代理共享一份本地语义记忆:决策、计划、文件改动、架构笔记会自动写入,任意代理的下一轮对话都能读到——切换代理不必从头再来。

上下文注入也做得直接:在输入框用 @ 提及文件、目录、符号、分支、笔记或历史会话,Atlas 会在请求发出前在本地解析好;提及 5000 行的大文件时只传路径,不占满上下文窗口。检索和 embedding 都在本机完成,不离开设备。

本地优先与平台现状

代码、笔记与会话默认只留在本机,不注册账户也能离线使用;需要团队同步时才登录创建组织。匿名使用遥测默认开启,可在项目 TELEMETRY.md 查看收集内容并关闭。

需要留意的是平台支持:macOS 是官方支持平台(提供 .dmg 安装包);Linux 和 Windows 基于同一套 Tauri 代码库构建,但目前标记为未测试。构建源码需要 Bun、Rust 和 Xcode 命令行工具,Linux 还需 GTK3、WebKit2GTK 4.1 等系统依赖。

适用场景

如果你已经用 Claude Code、Codex 或 Cursor 这类代理写代码,又时常说不清「某段改动是哪个会话、因为什么理由产生的」,Atlas 正好补上这块记录。团队需要审计代理行为、个人需要跨代理切换不丢上下文,都值得一试;Linux 与 Windows 用户则可以先观望官方适配。