Baton
Baton 在隔离的 git worktree 中并行编排多个 AI 编码代理,支持终端运行、状态监控与基于 diff 的评审再开 Pull Requests。
Baton 是什么?
Baton 是一款终端原生应用,用于并行运行多个 AI 编码代理。它在隔离的 git 工作区中编排代理运行,确保每个任务互不干扰。
其核心目的是减少协调开销,同时您审查和集成代理输出。Baton 为每个工作区提供状态监控、基于 diff 的变更审查,以及 git 感知控制,如分支、Pull Requests 和按工作区文件浏览。
主要特性
- 并行任务的工作区隔离:每个工作区基于真实 git worktree 和独立分支,避免代理运行相互干扰(无工作区间的暂存/切换冲突)。
- CLI 原生多代理编排:在完整终端会话中运行终端 AI 编码代理(非简化包装)。站点列出对 Claude Code、Codex、OpenCode 和 Gemini CLI 的支持,以及“任意 CLI 代理”。
- 工作区监控与状态徽章:带标签的状态徽章指示代理等待输入、成功完成或遇到错误。工作区分组显示在仪表板中,便于查看需关注位置。
- Git 感知变更审查:Monaco 驱动的 diff 查看器显示每个代理的变更,支持拆分和统一 diff 模式,并在开 PR 前支持单个文件回滚。还支持与分支(而非仅
main)比较。 - 内置工作区管理:从想法快速创建工作区(自动生成分支名、标题和描述)。归档完成的工作区,并批量停止/归档/删除多个工作区。
- 模板、搜索与浏览:将 shell 命令和代理提示保存为可复用模板,进行模糊文件搜索和全文内容搜索(fzf + ripgrep),浏览提交历史和文件历史(含按提交 diff)。
- 终端与编辑器工作流:每个工作区多终端标签,支持窗格拆分、可搜索高亮输出,以及 Shift+Enter 多行输入。编辑器包含 git blame 和 Monaco 文件查看器。
- Git GUI 操作与 PR 创建:一键从应用中 fetch/pull/rebase/push 并开 GitHub 或 GitLab 的 Pull Requests(如页面所述)。
- 代理预设与自定义命令:定义多种代理 CLI 预设,支持不同启动模式、标志和自定义启动脚本。配置通过终端工具运行的自定义代理命令。
- MCP 服务器支持:代理可从对话中启动新 Baton 工作区、并行运行任务,并直接更新工作区标题/描述(通过集成 MCP 服务器)。
如何使用 Baton
- 启动 Baton,描述您想构建的内容。
- Baton 使用专用 git worktree 和分支创建隔离工作区,并立即启动代理。
- 使用仪表板和状态徽章查看代理是否完成、出错或等待输入。
- 变更就绪时,打开 diff 查看器审查代理修改,回滚不需要的单个文件,然后从应用开 Pull Request。
- 完成任务时,归档工作区以保持侧边栏整洁。
使用场景
- 隔离分支的并行特性开发:为多个编码任务创建独立工作区,每个代理运行在其 git worktree 中,完成后审查并开 PR。
- 审查优先的代理输出以安全开 PR:使用 Monaco diff 查看器(拆分/统一)逐文件检查代理变更,回滚特定文件,满意后再开 PR。
- 处理需输入的代理提示:监控“输入”状态徽章,当代理等待时响应并继续,无需在标签间切换。
- 调查代码变更原因:在 Baton 内使用 git blame 和提交历史视图追踪行变更至提交,并检查文件历史(含 diff、行级统计及 git 历史的重命名跟踪)。
- 复用验证命令与提示:将 shell 命令和代理提示保存为模板,从工具栏在不同工作区运行。
常见问题
Baton 支持哪些 AI 编码代理?
网站明确列出 Claude Code、Codex (Codex CLI)、OpenCode 和 Gemini CLI,并说明 Baton 可运行 any CLI agent。
Baton 如何避免代理运行间的合并冲突?
Baton 将每个工作区隔离为独立的 git worktree 和单独分支。页面描述此设计可防止代理运行相互干扰,避免任务间 stash/切换。
“input” 状态是什么意思?
在工作区监控 UI 中,input 徽章表示代理正在等待您的输入。
开 PR 前能否审阅变更?
可以。Baton 提供 diff 查看器,用于审阅每个 AI 代理的变更,并在开 Pull Request 前回滚单个文件。
Baton 是终端工具吗?
是的。产品描述为“built around the terminal”,强调 CLI 原生代理执行及终端功能,如标签页、窗格分割和可搜索输出。
替代方案
- 本地 git + 手动代理运行与独立分支:您可在各分支/worktree 手动运行代理、审阅 diff 并开 PR;但通常缺少 Baton 的集中监控仪表板及内置 diff/blame/工作区管理。
- IDE 中集成的 AI 助手功能:基于 IDE 的 AI 工具可在编辑器内提供代理聊天和代码建议,但可能无法提供 Baton 所述的 worktree 隔离并行执行模型及终端中心多代理工作流。
- 无 git worktree 隔离的任务/代理编排工具:通用编排平台可协调多代理运行,但 Baton 强调使用真实 git worktree 和任务分支来隔离代理输出以供审阅。
- 版本控制导向的审阅工作流(diff + PR 工具):代码审阅工具有助于检查变更和管理 PR,但通常不结合并行 AI 代理执行和工作区级状态跟踪。
替代品
BotBoard
用 BotBoard 像团队管理 AI 代理:共享待办、结构化上下文与人工审核流程,分配、跟踪并批准输出结果。
GitBoard
GitBoard 是原生 macOS 菜单栏应用,可查看 GitHub Projects 看板,按状态筛选、搜索问题,并在工作流中创建或分配任务。
Biji
Biji是一个多功能平台,旨在通过创新工具和功能提升生产力。
Codex Plugins
使用 Codex Plugins 将技能、应用集成和 MCP 服务器打包成可复用工作流,扩展 Codex 访问 Gmail、Google Drive 与 Slack 等工具。
Falconer
Falconer 是自更新知识平台,帮高速度团队在一个地方编写、分享并搜索可靠内部文档与代码上下文。
OpenFlags
OpenFlags 是开源自托管功能开关系统,支持渐进式交付;应用 SDK 本地评估,配套简单控制平面实现安全定向发布。