OPAL · BRIDGE · OPEN SOURCE · 80 ★
跨 agent 的
session 翻译 + resume 桥
Claude Code 做到一半,想换 Codex 继续干?不丢上下文,不重新介绍项目,不粘贴摘要。OPAL Bridge 把两边的 session 直接接起来,一行命令切换。
共享记忆 vs 共享状态
一句话讲:「记忆管理」是让 AI 更好地回忆过去;「状态管理」是直接让 AI 回到过去。
现在所有的跨 agent 协作方案都是「共享记忆」——把做过的事压成摘要塞给下一个 agent。但摘要丢失了关键判断点。我们做的是「共享状态」:把上一棒的整个现场完整搬过去,颗粒度最高、上下文最全。
它就像存档——你点继续游戏,读他的档,就带入了他的角色。
当前能力
- ✓双向 CC ↔ Codex:live claude --resume / codex resume 都验证通过
- ✓共享标题:任一边重命名,对面 picker 自动跟进,不再产生重复文件
- ✓自动镜像:CC Stop hook + Codex notify hook,每段对话结束自动同步
- ✓历史修复同步:sync --force --include-active --days 365 重渲染旧镜像
- ✓空会话降噪:没有 replayable context 的源不会生成空镜像
- ✓MCP server:暴露 6 个工具给任意 MCP host(Claude Desktop / Cursor / Cline)
- ✓6 核心工具映射:Bash / Read / Glob / Grep / WebSearch / metadata
- ✓apply_patch 双向:CC Edit/Write/MultiEdit ↔ Codex apply_patch grammar
- ✓subagent inline:自动扫子 agent 目录、拼进主线
- ✓compact_boundary 双向翻译
- ✓shell 命令模式识别:避免 round-trip 退化
- ✓覆盖保护:只允许覆盖 agent-bridge 生成的文件
- ✓31 pytest + live resume 双重验证
一行装、一行用
# 安装
python3 -m venv .venv && .venv/bin/pip install -e .
# CC → Codex 翻译 + smoke 验证
.venv/bin/python -m agent_bridge.cli smoke \
~/.claude/projects/<encoded-cwd>/<UUID>.jsonl \
--prompt "Reply with: WORKS"
# 拿到 UUID 后直接续上
codex exec resume <UUID> "你的新指令"