njbrake/agent-of-empires
GitHub: njbrake/agent-of-empires
一个基于 tmux 和 Rust 的终端会话管理器,用于并行管理和监控多个 AI 编码智能体。
Stars: 1159 | Forks: 91
Agent of Empires (AoE)
一个面向 Linux 和 macOS 上 AI 编码智能体的终端会话管理器。基于 tmux 构建,使用 Rust 编写。 在代码库的不同分支上并行运行多个 AI 智能体,每个智能体都在其独立的会话中运行,并可选 Docker 沙箱隔离。 [](https://www.youtube.com/watch?v=Kk8dX_F-P4E) ## 功能特性 - **多智能体支持** -- Claude Code, OpenCode, Mistral Vibe, Codex CLI, Gemini CLI, Cursor CLI, Copilot CLI 和 Pi.dev - **TUI 仪表盘** -- 用于创建、监控和管理会话的可视化界面 - **智能体 + 终端视图** -- 使用 `t` 在 AI 智能体和配对的 Shell 终端之间切换 - **状态检测** -- 查看哪些智能体正在运行、等待输入或处于空闲状态 - **Git worktrees** -- 在同一代码库的不同分支上运行并行智能体 - **Docker 沙箱** -- 使用共享的 auth 卷在容器中隔离智能体 - **Diff 视图** -- 无需离开 TUI 即可查看 git 更改并编辑文件 - **单仓库配置** -- `.aoe/config.toml` 用于项目特定设置和钩子 - **配置文件** -- 针对不同项目或客户端的独立工作区 - **CLI 和 TUI** -- 两种接口均提供完整功能 ## 工作原理 AoE 封装了 [tmux](https://github.com/tmux/tmux/wiki)。每个会话都是一个 tmux 会话,因此当你关闭 TUI 时,智能体仍会继续运行。重新打开 `aoe`,一切仍在原地。 你需要知道的关键 tmux 快捷键:**`Ctrl+b d`** 可从会话分离并返回 TUI。 ## 安装说明 **前置条件:** [tmux](https://github.com/tmux/tmux/wiki)(必需),[Docker](https://www.docker.com/)(可选,用于沙箱) ``` # 快速安装 (Linux & macOS) curl -fsSL \ https://raw.githubusercontent.com/njbrake/agent-of-empires/main/scripts/install.sh \ | bash # Homebrew brew install aoe # Nix nix run github:njbrake/agent-of-empires # 从源码构建 git clone https://github.com/njbrake/agent-of-empires cd agent-of-empires && cargo build --release ``` ## 快速入门 ``` # 启动 TUI aoe # 从 CLI 添加会话 aoe add /path/to/project # 在新的 git 分支上添加会话 aoe add . -w feat/my-feature -b # 添加沙盒会话 aoe add --sandbox . ``` 在 TUI 中:`n` 创建会话,`Enter` 连接会话,`t` 切换终端视图,`D` 进入 diff 视图,`d` 删除,`?` 查看帮助。 ## 文档 - **[安装说明](https://www.agent-of-empires.com/docs/installation)** -- 前置条件和安装方式 - **[快速入门](https://www.agent-of-empires.com/docs/quick-start)** -- 首次步骤和基本用法 - **[工作流指南](https://www.agent-of-empires.com/docs/guides/workflow)** -- 推荐的 bare repo 和 worktree 设置 - **[Git Worktrees](https://www.agent-of-empires.com/docs/guides/worktrees)** -- 不同分支上的并行智能体 - **[Docker 沙箱](https://www.agent-of-empires.com/docs/guides/sandbox)** -- 智能体的容器隔离 - **[仓库配置与钩子](https://www.agent-of-empires.com/docs/guides/repo-config)** -- 项目级设置和自动化 - **[Diff 视图](https://www.agent-of-empires.com/docs/guides/diff-view)** -- 在 TUI 中查看和编辑更改 - **[tmux 状态栏](https://www.agent-of-empires.com/docs/guides/tmux-status-bar)** -- 集成会话监控 - **[音效](https://www.agent-of-empires.com/docs/sounds)** -- 可听的智能体状态通知 - **[配置参考](https://www.agent-of-empires.com/docs/guides/configuration)** -- 所有配置选项 - **[CLI 参考](https://www.agent-of-empires.com/docs/cli/reference)** -- 完整命令文档 - **[开发指南](https://www.agent-of-empires.com/docs/development)** -- 贡献和本地设置 ## 常见问题 ### 关闭 aoe 会发生什么? 什么也不会发生。会话即是在后台运行的 tmux 会话。你可以随意打开和关闭 `aoe`。只有在你明确删除会话时,它们才会被移除。 ### 支持哪些 AI 工具? Claude Code, OpenCode, Mistral Vibe, Codex CLI, Gemini CLI, Cursor CLI, Copilot CLI 和 Pi.dev。AoE 会自动检测你的系统上安装了哪些工具。 ## 故障排除 ### 在移动 SSH 客户端(Termius, Blink 等)中使用 aoe 从移动设备连接时,请在 tmux 会话内运行 `aoe`: ``` tmux new-session -s main aoe ``` 连接到智能体会话后,使用 `Ctrl+b L` 切换回 `aoe`。 ### Claude Code 闪烁 这是一个已知的 Claude Code 问题,而非 aoe 的问题:https://github.com/anthropics/claude-code/issues/1913 ## 开发指南 ``` cargo check # Type-check cargo test # Run tests cargo fmt # Format cargo clippy # Lint cargo build --release # Release build # Debug 日志 (写入 app 数据目录中的 debug.log) AGENT_OF_EMPIRES_DEBUG=1 cargo run ``` ## 致谢 灵感来源于 [agent-deck](https://github.com/asheshgoplani/agent-deck) (Go + Bubble Tea)。 ## 作者 由 [Nate Brake](https://x.com/natebrake) ([@natebrake](https://x.com/natebrake)) 创建 ## 许可证 MIT License -- 详情见 [LICENSE](LICENSE)。标签:AI编程助手, Claude Code, Copilot CLI, Docker沙箱, Gemini CLI, Git Worktree, Linux 内核安全, Linux工具, macOS软件, PyRIT, Rust, Tmux管理器, TUI界面, 代码生成, 可视化界面, 多智能体系统, 威胁情报, 并行开发, 开发效率, 开发者工具, 渗透测试工具, 端口探测, 终端会话管理, 网络可观测性, 网络流量审计, 自动化运维, 请求拦截, 通知系统, 项目管理