news 2026/9/27 2:11:55

AI编码代理会话管理器Agent of Empires:如何用一套tmux并行管理Claude Code、Codex等15+个AI代理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AI编码代理会话管理器Agent of Empires:如何用一套tmux并行管理Claude Code、Codex等15+个AI代理

AI编码代理会话管理器Agent of Empires:如何用一套tmux并行管理Claude Code、Codex等15+个AI代理

【免费下载链接】agent-of-empiresManage multiple Claude Code, OpenCode agents from either TUI or Web for easy access on mobile. Also supports Mistral Vibe, Codex CLI, Gemini CLI, Pi.dev, Copilot CLI, Factory Droid Coding.项目地址: https://gitcode.com/gh_mirrors/ag/agent-of-empires

Agent of Empires(简称aoe)是一款运行在 Linux 和 macOS 上的 AI 编码代理会话管理器。它把 Claude Code、Codex CLI、OpenCode、Gemini CLI 等 15+ 个 AI 编码代理放进独立的 tmux 会话中并行运行,让你用一套 TUI 界面统一监控、切换、审批,还能通过内置的 Web 仪表盘在手机上远程管理。会话持久保存在后台——关掉终端、断开 SSH,代理照样在跑。

🎯 它解决什么问题?

同时用多个 AI 代理写代码时,你很快会遇到这些麻烦:

  • 多个终端窗口来回切换,不知道哪个代理在跑、在等审批、已完成
  • 关掉终端或断开 SSH,所有代理会话跟着中断
  • 多个代理改同一个仓库,分支互相冲突
  • 想出门时用手机看看代理干得怎么样了,却做不到

aoe 用 tmux 持久会话 + 状态检测 + Git worktree 隔离,一次性解决这些问题。

🚀 三步安装快速上手

前置要求:tmux(必需);Docker 等容器运行时(可选,用于沙箱)。

# 方式一:Homebrew(macOS / Linux) brew install aoe # 方式二:从源码构建(需要 Rust 工具链) git clone https://gitcode.com/gh_mirrors/ag/agent-of-empires cd agent-of-empires && cargo build --release # 方式三:Nix nix run github:agent-of-empires/agent-of-empires

安装完成后,三条命令就能跑起来:

aoe # 启动 TUI 面板 aoe add --cmd claude # 创建一个运行 Claude Code 的会话 aoe serve # 启动 Web 仪表盘

TUI 里按?可随时查看当前上下文的按键帮助,完整键位说明见 docs/quick-start.md。

🖥️ TUI 核心玩法:tmux 持久会话

每个代理都运行在自己独立的 tmux 会话里,这是 aoe 的架构核心:

按键作用
n新建会话
Enter附着到某个代理会话
Ctrl+b d脱离会话,返回 TUI 面板
t在结构化视图和配套终端间切换
D打开 diff 查看器
/搜索会话
  • 状态自动检测:aoe 通过解析终端输出和代理钩子(hooks)实时判断每个代理是「运行中」「等待审批」还是「空闲」,侧边栏一目了然
  • 快速权限响应:Claude Code、Codex 等支持的代理,可在 TUI 侧边栏直接按键批准或拒绝操作,无需切进终端
  • 会话恢复:Claude 的会话 id 会被 aoe 捕获并持久化,重启后自动重新附着到同一对话

状态检测规则定义在 src/tmux/detect/manifests/ 下的 TOML 清单文件中,每个代理一条规则,易于扩展。

📱 手机上管代理:Web 仪表盘

运行aoe serve后,aoe 内置的 Web 服务器会打印一个带鉴权 token 的 URL——在任何浏览器打开,就能用和 TUI 相同的能力管理会话。支持作为PWA安装到手机桌面。

桌面端拥有完整仪表盘、实时终端和 diff 审查面板,终端视图支持重连:

想从手机远程访问?aoe serve --remote会通过 Tailscale Funnel 或 Cloudflare 隧道暴露 HTTPS 地址,并打印二维码供手机扫码配对,详见 docs/guides/web-dashboard.md。

🌳 Git worktree 并行分支:多代理互不干扰

让多个代理在同一个仓库的不同分支上并行干活,是最实用的场景之一:

aoe add . -w feat/my-feature -b # 为新分支创建独立 worktree 会话 aoe worktree list # 查看所有 worktree aoe remove <session> [--delete-worktree] # 删除会话并清理 worktree

每个 worktree 会话拥有独立的分支和检出目录,创建时生成、删除时可自动清理。Web 端和 TUI 的新建会话向导里都有Worktree开关。完整的分支管理、命名规则和孤儿清理见 docs/guides/worktrees.md。

改完后在 diff 视图中审查各代理的改动,甚至可以直接评论:

📦 容器沙箱:让代理安全地跑

担心代理的写入操作影响真实环境?用容器隔离:

aoe add --sandbox . # 在容器中运行代理

沙箱会把项目挂载到容器内的/workspace,并通过持久卷共享认证配置;支持 Docker、Podman 和 Apple Containers。实现细节见 docs/guides/sandbox.md 和 src/containers/。

🤖 支持哪些 AI 代理?

运行aoe agents可查看当前机器上检测到的全部代理及其可用性。目前注册表内置 17 个代理定义,覆盖主流的终端编码 AI:

分类代理
头部编码代理Claude Code、Codex CLI、OpenCode、Gemini CLI
大厂系Cursor Agent、GitHub Copilot CLI、Antigravity(agy)
社区 / 其他Mistral Vibe、Pi.dev、Factory Droid、Qwen、Kimi Code、Hermes、Kiro CLI、Settl、OMP、Prime Agent

每个代理都定义了二进制检测、YOLO 模式参数、状态检测和会话恢复策略,统一注册在 src/agents.rs 中;新增代理的完整流程可参考 docs/development/adding-agents.md。

📚 推荐学习路径

  • 快速开始:TUI 键位与第一个会话
  • CLI 完整参考:所有命令和参数
  • 多仓库工作区:项目注册与跨仓库管理
  • 会话恢复:重启后继续同一对话
  • 仓库级配置与钩子:按项目定制行为
  • HTTP API:用脚本驱动 aoe

一句话总结:Agent of Empires 把 tmux 的持久会话能力包装成「AI 代理控制塔」——一条命令并行拉起 15+ 个编码代理,桌面 TUI、浏览器、手机三端同屏,关掉终端也不掉线。多代理并行开发时代,值得放进你的工具箱。

【免费下载链接】agent-of-empiresManage multiple Claude Code, OpenCode agents from either TUI or Web for easy access on mobile. Also supports Mistral Vibe, Codex CLI, Gemini CLI, Pi.dev, Copilot CLI, Factory Droid Coding.项目地址: https://gitcode.com/gh_mirrors/ag/agent-of-empires

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/27 2:06:38

51单片机温控系统实战:Proteus+Keil+嘉立创PCB全流程开发

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/27 2:02:23

MyBatis动态SQL:从条件拼接到底层原理实战

第一部分&#xff1a;动态SQL概述1.1 为什么需要动态SQL⭐ 老师强调&#xff1a;之前在Eclipse里查学生&#xff0c;是在Java中用if-else硬拼接SQL——传名字、性别或班级就手动加条件和空格&#xff0c;很麻烦。现在用动态SQL不用再自己复杂拼接了。对比硬拼接动态SQL实现方式…

作者头像 李华
网站建设 2026/9/27 2:02:12

给智能体加“专业技能包”:用LangChain实现按需加载的Agent Skills

告别巨型系统提示&#xff0c;让Agent只在需要时加载对应指令&#xff0c;成本更低、扩展性更强小伙伴们&#xff0c;你有没有好奇过&#xff1a;ChatGPT、Gemini 这些聊天界面为什么能直接生成PPT、Excel文件&#xff1f;明明底层跑的只是大语言模型&#xff0c;哪来的生成文档…

作者头像 李华
网站建设 2026/9/27 2:00:18

STM32串口空闲中断卡死根因:USART_ITConfig初始化顺序陷阱

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/27 1:59:58

MTK Android 10侧键改造成相机键:全链路实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华