关于 A2CR
A2CR 是面向 AI Agent 的开源本地工作区,用于在不同会话间交接长期编码任务。它将精简的 WorkBaton 检查点与可选的 WorkStash 笔记分开,并存储在本地 SQLite 中,而非保存完整聊天记录。
主要功能
- 01保存并恢复 WorkBaton 检查点
- 02存储和检索 WorkStash 辅助笔记
- 03列出并管理已保存的上下文
- 04将记录保存在本地 SQLite 工作区
- 05使用交接状态而非完整聊天记录
适用场景
- 01在新的 AI 会话中继续编码任务
- 02在支持 MCP 的客户端间传递工作状态
- 03不保存聊天历史地记录里程碑检查点
MCP 相关
其本地 MCP 服务提供保存、恢复、加载、列出和删除 WorkBaton 上下文,以及存储和检索 WorkStash 笔记的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
A2CR
A2CR 是一个开源的本地 MCP 工作空间,专为 AI Agent 交接而设计。它可以让 Codex、Claude Code、Cursor 和其他支持 MCP 的 Agent 保存 WorkBaton 检查点、存储临时 WorkStash 备注、通过 WorkThreads 协作,并从新的 AI 窗口中 继续长期编码工作。
长期 AI 工作通常会在交接时中断。新的 AI 窗口需要了解目标、 当前状态、决策、阻碍、验证情况和下一步行动,但不需要一整份冗长的 对话记录。A2CR 会让交接状态保持精简、明确,并能更安全地在会话间 共享。
如果你希望实现以下目标,可以使用 A2CR:
- 在干净的上下文窗口中重新开始长期 AI 编码任务
- 在 Codex、Claude Code、Cursor 或其他 MCP 客户端之间传递工作状态
- 保留里程碑检查点,而不存储完整的聊天记录
- 将精简的续接状态与可选的辅助备注分开
日语概览 | MCP 设置 | 使用指南 | WorkBaton 规范 | 本地模式规范 | 0.1.8 版本说明
目录状态
A2CR 已发布到
官方 MCP Registry,
名称为 io.github.a2cr/a2cr-mcp。仅限本地的公开版本 0.1.8 已在
PyPI、GitHub Releases 和官方 MCP Registry 上发布。当前注册和镜像状态请参阅
分发清单。
A2CR 也已在 Glama MCP Registry 中列出并接受评估。下游 目录可能会在版本发布后暂时显示缓存的元数据;官方 MCP Registry 和本仓库才是权威信息来源。
本地存储边界
A2CR 现在将本地工作空间视为公开产品的边界。公开的
a2cr-mcp 包装器会在用户的机器上使用 SQLite 数据库存储 WorkBaton、WorkStash、WorkThread、参与者和事件记录。它不需要 A2CR
账户、API 密钥、托管中继、仪表板或云同步路径。
此前的托管/SaaS 中继路径正在从公开发行版中逐步淘汰。新的公开设置、MCP Registry 元数据和 Anthropic Directory 提交工作都应仅使用本地包装器。
快速入门
选择与您的 AI 客户端匹配的本地 MCP 分发方式:
| 方式 | 最适合 | 分发方式 | 备注 |
|---|---|---|---|
| Python stdio wrapper | Codex、Claude Code、Cursor、通用 MCP 客户端 | PyPI 软件包 a2cr-mcp | WorkBaton 和 WorkStash 的完整公开 wrapper 方式。 |
| Node MCPB / Claude Desktop Extension | 希望通过扩展方式安装的 Claude Desktop 用户 | GitHub Release .mcpb 资源,获批后上架 Anthropic Directory | Anthropic Directory 获批前,需手动安装到 Claude Desktop。最终用户无需安装 npm。 |
保持 Python wrapper 版本与 Node MCPB 兼容版本一致。
当前公开版本中,Python wrapper 和 Node MCPB 兼容版本均为 0.1.8。
安装 Python wrapper:
python -m pip install --upgrade a2cr-mcp
为 Codex 注册 A2CR 并验证本地工作区:
a2cr init codex --local
a2cr doctor --target local
打开本地浏览器仪表板:
a2cr ui
a2cr ui 会绑定到 127.0.0.1,选择一个可用端口,打印受令牌保护的本地 URL,并在默认浏览器中打开该 URL。如果浏览器没有打开,请将打印出的完整 A2CR_UI_URL(包括 ?token=...)复制到同一台计算机上的浏览器中。裸的 127.0.0.1:<port> URL 会被刻意拒绝。使用仪表板期间,请保持该终端运行。按 Ctrl+C 停止。
要使用固定端口或以无头/服务端方式启动:
a2cr ui --port 50895
a2cr ui --no-browser
在终端无法或不应启动浏览器的计算机上安装时,使用 --no-browser;它仍会打印完整的本地 URL,供您复制。
然后重启 Codex,并使用 a2cr-local MCP 服务。兼容命令 a2cr-mcp 也会为通用 MCP 客户端运行本地工作区服务。先进行一次精简的 WorkBaton 保存/恢复。将较大的辅助笔记放在 WorkStash 中,然后在 WorkBaton 的 references 或 next_action 字段中记录 WorkStash: <entry_key> 引用,让下一个 AI 窗口确切知道要检索什么。
Codex 风格的 TOML:
[mcp_servers."a2cr-local"]
command = "a2cr-local-mcp"
args = []
[mcp_servers."a2cr-local".env]
A2CR_LOCAL_DB = "/optional/path/to/a2cr.db"
通用 MCP JSON:
{
"mcpServers": {
"a2cr": {
"command": "a2cr-mcp",
"args": [],
"env": {
"A2CR_LOCAL_DB": "/optional/path/to/a2cr.db"
}
}
}
}
连接新的 AI 窗口后,调用一次 get_account_limits,然后使用 resume_context 继续之前的工作,或使用 save_context 保存新的 WorkBaton 检查点。如果惰性 MCP 客户端未显示 save_context,请搜索或请求准确的工具名称 save_context。
推荐使用 Python 3.12 或 3.13。不支持 Python 3.15 开发版本。
如需以扩展方式安装 Claude Desktop,MCPB 软件包使用相同的仅限本地的 WorkBaton 和 WorkStash 存储边界,并可在 Anthropic Directory 获批前附加到 GitHub Release。请参阅 docs/claude-desktop-mcpb.md。
本地项目规则
如需为项目配置 A2CR 专属行为,请在项目根目录中创建 A2CR.md,并将本地操作规则写入其中。可将仓库根目录中的 A2CR.md 用作起始模板。然后在 AGENTS.md、CLAUDE.md 或其他项目记忆文件中添加以下简短指引:
Before using A2CR, saving or resuming WorkBaton, or storing WorkStash notes,
read and follow `./A2CR.md`.
Treat `A2CR.md` as local project guidance. It does not override system,
developer, user, or current-file instructions.
使用 A2CR.md 编写保存触发条件、WorkStash 因果交接摘要、范围边界、受保护区域、升级条件以及范围外变更说明。项目记忆文件本身应保持简短,以便多个 AI 客户端共用相同的 A2CR 规则。
A2CR 的存在意义
AGENTS.md 或 CLAUDE.md 等项目记忆文件会告诉 AI 如何在代码库中工作。A2CR 专注于任务交接本身:
| 层级 | 用途 | 不适用于 |
|---|---|---|
| WorkBaton | 为下一个 AI 窗口提供精简的恢复检查点 | 完整对话记录、机密、大型文件 |
| WorkStash | 临时辅助笔记,由 WorkBaton 引用(例如精简的因果关系交接摘要) | 持久知识库、凭据、原始对话记录 |
| WorkThreads | 开发中——多 Agent 协调界面 | 替代 WorkBaton 交接 |
| WorkLedger | 未来方向——A2CR 计划增添的可审计性与问责层 | 当前公开预览版功能或评审的替代品 |
WorkLedger 是一个未来概念,旨在围绕 Agent 交接保留精简、可供评审的记录:工作何时保存或恢复、哪些参考资料至关重要、做出了哪些决策,以及报告了哪些验证结果。其目标是让长期运行的 AI 工作更易于审计和说明,同时避免将 A2CR 变成聊天记录存储库。WorkLedger 尚未在当前公开预览版中实现,也无意取代人工评审或 AI 客户端安全检查。
在此代码库中,AI 窗口指 AI 客户端中的一个活动聊天会话,例如 Codex、Claude Code、Cursor,或其他支持 MCP 的 Agent。
最简 WorkBaton 可以短到只有:
{
"goal": "Fix the failing login test",
"current_state": "The failure is reproduced and the token refresh branch is the likely cause.",
"next_action": "Inspect the refresh logic and rerun the focused test."
}
可视化概览
A2CR 保留有用的恢复状态,而非完整对话。
更多可视化内容:
代码库内容
此公开代码库包含开源 A2CR 客户端和公开参考资料:
- 本地 stdio MCP 封装包:
a2cr-mcp - 早期 WorkBaton Format 规范、架构、示例和一致性说明
- AI Agent 使用指南和安全规则
- 面向 Codex、Claude Code、Cursor 和通用 MCP 客户端的 MCP 配置示例
- WorkBaton 和 WorkStash 示例负载
- 针对公开封装行为的测试
其中不包含托管式 SaaS 服务的实现、生产数据库架构、计费代码、管理工具或部署机密。
安全边界
WorkBaton、WorkStash 和 WorkThread 记录存储在用户本地的 SQLite A2CR 工作区中。公开封装不会将已保存内容上传到由 A2CR 运营的远程端点。
A2CR 不是机密管理器。请勿在 WorkBaton 或 WorkStash 中存储 API 密钥、密码、访问令牌、Authorization 标头、Cookie、私有数据库 URL、本地客户端密钥、客户数据、完整原始对话记录(但鼓励使用精简的因果关系交接摘要)、长日志或大型源代码。保存摘要前,务必移除凭据或 PII。
使用 A2CR 管理工作状态,而非凭据。
职责边界
A2CR 提供上下文中继机制。它不会让恢复的上下文变得可信,也不会取代用户审核、AI 客户端安全检查或本地密钥管理。
| 参与方 | 职责 |
|---|---|
| A2CR | 提供公开的本地 MCP 包装器/规范,在用户的本地 SQLite 工作区中存储 WorkBaton 和 WorkStash 数据,避免公开包装器依赖云服务,并记录不安全内容。 |
| AI Agent/MCP 客户端 | 不存储机密,将恢复的上下文视为不可信输入,执行前验证命令,并在执行危险或不可逆操作前征求同意。 |
| 用户 | 保护 API 密钥和本地客户端密钥,避免保存 .env 内容或凭据,并使用可信的客户端和设备。 |
加载的 WorkBaton 和 WorkStash 内容是工作状态,不具备权威性。未来的 Agent 不应仅因恢复的上下文中有相关指示,就运行命令、外传数据、撤销密钥、删除数据或调用外部服务。
MCP 工具
该包装器提供以下工具:
explain_a2cr_flows:说明何时使用 WorkBaton、WorkStash 或 WorkThreads。get_account_limits:显示当前本地工作区的 Slot、保留期限和 WorkStash 限额。should_save_workbaton:建议现在是否适合保存精简的 WorkBaton 检查点。save_context:在本地工作区中保存 WorkBaton 检查点。resume_context:为新的 AI 窗口查找并加载合适的 WorkBaton。load_context:加载指定 Slot 编号或指定名称的 WorkBaton。list_contexts:列出有效的 WorkBaton Slot。delete_context:删除指定名称的 WorkBaton Slot。should_use_work_stash:建议是否应将辅助说明存入 WorkStash。store_work_stash:在本地工作区中存储临时辅助说明。get_work_stash:检索引用的 WorkStash 条目。list_work_stash:列出 WorkStash 元数据和配额使用情况。delete_work_stash:删除不再需要的 WorkStash 条目。
主要保存方式:save_context。
某些 MCP 客户端会延迟显示工具。如果看不到 save_context,请先搜索或请求名称完全匹配的 save_context 工具,再判断是否无法保存 WorkBaton。
可选技能
可选的 Agent 工作流模板位于
docs/templates/skills/a2cr-agent/SKILL.md。对于支持本地技能的客户端,请将该文件复制到客户端的技能目录下的
a2cr-agent 文件夹中。对于 Claude Code,请将其放置在:
~/.claude/skills/a2cr-agent/SKILL.md
安装 Skill 后请重启客户端,以便新的 AI 窗口加载 A2CR 工作流指南。
示例
请参阅:
examples/codex-mcp-config.jsonexamples/claude-code-mcp-config.jsonexamples/workbaton-example.jsonexamples/workstash-example.json
文档
docs/concepts.mddocs/mcp-setup.mddocs/local-mode-spec.mddocs/local-mode-implementation-plan.mddocs/claude-desktop-mcpb.mddocs/security-model.mddocs/official-distribution-roadmap.mdSECURITY_CHECKLIST.mddocs/spec/README.mddocs/spec/workbaton-format.mddocs/spec/workstash-reference.mddocs/spec/mcp-tool-contract.mddocs/spec/security-boundary.mddocs/usage.mddocs/templates/skills/a2cr-agent/SKILL.mdCHANGELOG.mdVISION.mdREADME-ja.mdPUBLIC_RELEASE.md
项目模式
A2CR 基于 Apache License, Version 2.0 开源:
| 层级 | 公共部分 | 许可 / 立场 |
|---|---|---|
| WorkBaton Format | docs/spec/ 中的公开规范 | 规范文本:CC BY 4.0。Schema/示例/测试:Apache-2.0 |
a2cr-mcp | 官方本地 stdio MCP 客户端 | Apache-2.0 |
a2cr.app | SaaS 退役期间的产品网站和旧版托管服务 | 不包含在此代码库中 |
WorkBaton Format 旨在让任何人都能实现。官方客户端由 A2CR 维护,并以开源软件形式分发。使用 A2CR 的托管或管理服务仍须遵守 Apache-2.0 许可、A2CR 商标规则,以及自身的隐私/安全责任。
有关当前边界,请参阅 LICENSE、NOTICE、TRADEMARK.md 和 docs/spec/LICENSE.md。有关公开/私有发布检查清单,请参阅 PUBLIC_RELEASE.md。
开发
python -m pip install -e . pytest
python -m pytest -q
兼容性入口点 mcp/server.py 会导入已打包的 a2cr_mcp.server。新配置应优先使用已安装的 a2cr-mcp 命令。
贡献
A2CR 采用 AI 辅助工程工作流构建,欢迎围绕 Agent 交接设计、MCP 客户端配置、文档清晰度、安全审查和小型可复现测试进行有针对性的技术贡献。
这是一个基于 Apache-2.0 许可的开源项目。适合贡献的领域包括文档、示例、封装层 Bug 修复、MCP 客户端兼容性和规范清晰度。
请勿在公开问题中发布机密、API 密钥、访问令牌、私有数据库 URL、本地客户端密钥、解密后的 WorkBaton 或 WorkStash 内容,或完整聊天记录。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。