定位来源与工作目录
根据原生会话 ID 查找记录,保留实际 cwd。不会自动把已有 Worktree 改为主仓库目录。
AGENTRELAY / 本地会话接力
换一个编程工具,继续同一项工作。
Claude Code 限额、上下文满了或排查停滞时,带上已有记录与工作目录,切换到 Codex、OpenCode、Kimi、Pi 或 Grok 继续。
读取已有会话记录,核对工作目录,再选择目标 Agent。
/Users/dev/projects/example-api检查 API 重试流程,保留此前结论与失败尝试。
已确认工作目录和重试边界;下一步补充错误处理回归。
BashEditRead项目须先存在;工具调用与结果可能降级为文本。模型继续未纳入限定通过范围。
demo-plan / example-api合成记录已载入,等待预览。
仅使用合成记录,不读取本机、不写入 Agent、不启动客户端。
每条接力路径有自己的保护边界,不将局部校验包装成全局保证。桌面端提供会话接力、接力记录、支持路径、设置四个视图,外观支持亮色、暗色与跟随系统。
根据原生会话 ID 查找记录,保留实际 cwd。不会自动把已有 Worktree 改为主仓库目录。
Codex 路径绑定目标目录与配置,使用执行日志与持久锁。结果不确定时保留计划,只查询状态。
按目标格式转录已记录的消息与事件。不同工具保留程度不同;内部 round-trip 不等于原生继续验收。
导入已成功但客户端打开失败时,仅重试打开。终端启动失败会尝试复制命令,不重复转入。
按来源、方向、平台与版本核验。安装检测不是兼容性证明。
| 接力路径 | 入口 | 证据与限制 | 状态 |
|---|---|---|---|
| Claude Code → Codex Desktop | 官方导入 | macOS arm64 合成样本:项目列表、prepare / confirm / 两次独立打开限定通过;工具记录可转为文本,模型继续仍受限。 | 限定验收 |
| Claude / Codex / OpenCode / Kimi / Pi / Grok | 基础 CLI 适配器 | 读取、转换和恢复入口已实现,桌面六张目标卡与适配器恢复命令逐字一致;Grok 另在隔离环境通过 `sessions list` / `export` / ACP `session/load` 原生回放。不是所有组合、平台、内容样本和版本都已通过原生验收。 | 逐方向验收 |
| OpenCode Web / TUI 官方增强 | 官方 JSON 实验 | 1.18.29 隔离历史可见与目标模型有效性已通过;单次模型继续返回 provider 429,未作为新的默认入口。 | 未接入增强 |
| Antigravity 2.0 → Antigravity CLI | 同产品交互式 picker | 官方 /resume 的 Antigravity 页签可在二次确认后导入;--conversation 只恢复既有 CLI 会话。Watch 尚无适配器与原生验收,不是其他 Agent → Antigravity。 | 未接入 |
| Claude Desktop Code / 其他入口 | 官方入口调研 | 尚无 Watch 完整路径验收,不增加默认目标入口。Grok 已从该名单移出并单独入卡,见桌面端支持路径。 | 未接入 |
每篇先给可以直接引用的答案,再给步骤。Watch 不绕过限额,也不评测哪家模型更好。
Claude Code 提示 5 小时或周限额时,/compact 不能恢复额度。Watch 只读取本机 ~/.claude/projects/<编码目录>/<会话>.jsonl,核对工作目录后转入 Codex;原文件不改,工具事件可能降级为文本。
阅读指南OpenCode 的会话在本机 ~/.local/share/opencode/opencode.db,可用 WATCH_OPENCODE_DB 换库。Watch 用一次 SQLite 事务写入 sessions、messages、parts;事务失败会回滚。不支持的工具参数降级为文本,续写质量取决于你配置的模型。
阅读指南上下文满了是这一次对话太长,在 Claude Code 里执行 /compact 或 /clear。账户限额到了会给出重置时间,此时 /compact 无效。Watch 不扩大上下文,也不恢复额度,只把已保存的会话记录转入另一个仍可用的 Agent。
阅读指南Opus 5.5 提高的是 Pro、Max、Team 和按席位 Enterprise 的 5 小时限额,并给一次可保存的重置,不是取消限额。Watch 不读取、不增加 Claude 额度。官方重置用完后若仍被拦住,再把本机会话转入 Codex。
阅读指南从仓库运行 CLI 或构建桌面端。需要仓库访问权限,未发布 npm 全局包。
git clone https://github.com/can4hou6joeng4/Watch.gitcd Watch && npm installnpm run watch -- status --jsonnpm run watch -- import-codex prepare <claude-id> --cwd /abs/project --desktop-project --experimental --jsonnpm --prefix desktop installnpm run desktop:devcd desktop && npx tauri build出现 tsx 缺失时先运行 npm install;node:sqlite 错误需核对 Node 版本。
在隔离环境用合成会话生成:动图是 CLI 的真实输出按原时序回放,截图是桌面端浏览器预览的合成演示。它们展示程序真实行为,不是原生验收证据。


以下是仓库历史验收,不是此次设计重构的新客户端验收。
Codex CLI 0.153.4 / macOS arm64;工具记录降级为文本,未做桌面 UI 或模型继续。
ChatGPT Desktop 26.901.51231;合成样本在项目列表可见,未做模型继续。
ChatGPT Desktop 26.903.61454;合成样本两次进入同一目标,只有一个导入计划。模型继续仍不属于通过范围。
在 Watch 桌面端输入来源会话 ID,核对实际工作目录,选择目标 Agent。Claude → Codex 先显示官方项目先建的导入预览,明确确认后才写入,再独立打开目标会话;其他目标使用已有 CLI 适配器。Watch 不绕过限额,也不迁移代码,转入的是已有会话记录。
两种入口:桌面端选择来源会话后点 OpenAI Codex 卡片,走官方单会话导入的 prepare → confirm → 打开;或用 CLI watch import-codex prepare <claude-id> --cwd <项目> --desktop-project --experimental,再 confirm。前提是该项目已在 Codex Desktop 中存在。工具调用记录在 Codex 侧可能变为文本,模型续写未纳入验收范围。
不能。压缩或清空上下文是 Claude Code 自己的 /compact 与 /clear。Watch 做的是把已保存的会话记录整体转入另一个 Agent,目标会话从这些记录开始,原会话不变。上下文是否装得下取决于目标工具的窗口大小。
Claude Code 在 ~/.claude/projects/<按目录编码>/<会话 id>.jsonl,用 claude --resume <id> 恢复;Codex 在 ~/.codex/sessions/年/月/日/rollout-*.jsonl,用 codex resume <id>;OpenCode 在 ~/.local/share/opencode/opencode.db,用 opencode -s <id>。Watch 的「会话接力」按会话 id 反查这些位置并显示所属工作目录,「接力记录」列出同一目录的链式接力历史。
Watch 不评测哪家更好。两家都装好并认证后,用 Watch 在两者之间接力:Claude → Codex 走官方导入预览,Codex → Claude 走 CLI 适配器转换;两条路径都保留工作目录。不同格式可能降级部分事件,结果会列出降级项。
Watch 是本地会话工具,不提供自己的中继服务器。部分原生会话创建路径会调用目标 CLI,可能联网;目标 Agent 继续调用模型时,也按它自身的服务与隐私规则通信。本地转换不等于全流程离线。
不能。新建或整文件替换有原子写和反解校验,部分追加路径的保护范围不同。Codex 官方路径使用独立执行日志、目标锁与读后验证;完整边界见架构文档。
官方入口已调研,Watch 接力尚未接入。以下是 Antigravity 自身的操作,不是 Watch 转换命令。
官方有依据 / Watch 未验收
agy --conversation <conversation-id>仅恢复已有的 Antigravity CLI 会话 ID,不是把 Claude、Codex 或桌面会话导入 CLI。
agy -c按当前工作目录查找最近会话;记录缺失或已删除时可能新建会话。因此不能将它当作无副作用的状态探测。
/resume在 CLI 的会话选择器中切至 Antigravity 页签,选择桌面会话并二次确认。官方描述为克隆历史、上下文与工具轨迹;Watch 尚未原生验收,也没有外部 Agent 导入协议。