Mng-dev-ai/agentrove

Self-hosted AI coding workspace to run and orchestrate Claude Code, Codex, Copilot, Cursor, Grok and OpenCode agents — multi-agent workflows, personas, and ACP-powered sandboxes

核心概念

与其在各自独立的工具中使用每个编码代理,Agentrove 将它们整合到一个共享工作区中。每个对话都有聊天面板、内置代码编辑器、终端、文件树、差异视图、存储密钥的位置以及 Git 命令——全部在同一个浏览器窗口中。

它实际做什么

  • 运行七个不同的编码代理,通过标准适配器使它们使用相同的协议。您可以在每个对话或每个任务之间切换。
  • 隔离每个工作区。 每个项目文件夹都在自己的 Docker 容器中运行(或者如果您愿意,也可以直接在主机上运行),因此代理在隔离环境中工作。
  • 从多个来源创建工作区: 空文件夹、Git 克隆、现有本地目录或 GitHub 仓库。
  • 实时流式传输代理活动——支持中途取消、内联批准权限提示、排队后续消息、提及文件、使用斜杠命令以及向聊天附加文件。
  • 包含高级用户便利功能: 子线程、固定聊天、Git worktree 模式、自定义角色(系统提示)、自定义指令、每个聊天的环境变量以及已安装的代理技能。
  • 处理 Git 和 GitHub 任务: 浏览仓库、审查和创建拉取请求,以及分支/提交/推送/拉取辅助工具。

编排技巧

Agentrove 允许代理相互通信。在幕后,内置的 MCP 服务器将整个实例暴露为工具——send_message、get_messages、list_models、list_personas 等。每个聊天的代理都可以使用这些工具,这意味着“主导”代理可以:

  1. 探索代码库,使用快速、廉价的模型和只读的“侦察”角色。
  2. 委派精确任务给子线程中的编码模型(每个子线程是一个工作聊天,分组在主线程下,位于同一工作区和分支中)。
  3. 并行运行审查者——例如,一个错误狩猎角色和一个结构质量角色对差异进行审查——在单独的 Git worktree 中,以免冲突。
  4. 轮询每个工作线程直到回合结束,根据实际代码判断结果,并将返工发送回同一线程。后续消息保留线程之前的模型、角色和推理设置。
  5. 无人值守运行: 编排的回合完全执行,无需请求权限提示。

模型、角色和路由规则均由用户定义,因此您可以控制代理“舰队”。list_models 还报告每个模型的思考层级,因此主导代理可以根据任务调整努力程度。

频道:与多个代理的群聊

频道是您与多个代理同时进行的对话。每个成员都有自己的代理、模型、显示名称、角色、思考级别和权限模式。他们都共享同一个工作区(可选地,特定分支或专用 worktree)。

  • 共享对话: 成员批量查看新消息,并要么发布一条简短回复,要么跳过,因此他们只在有补充时发言。
  • 共享工作区: 所有成员在同一个目录中工作,并在编辑前宣布他们将更改哪些文件。
  • 实时状态: 状态行显示谁在思考、输入、等待批准或重试;每个回复都包含一个折叠的“工作”汇总,包含工具活动和持续时间。
  • 控制: 附加文件、内联批准权限提示,并从编辑器停止正在运行的成员。

如何运行

快速开始(Docker): 克隆仓库,将 .env.example 复制为 .env,设置 SECRET_KEY(使用 openssl rand -hex 32 生成一个),然后运行 docker compose up -d。打开 http://localhost:3000。Antigravity 的认证在终端中使用 Google OAuth,其令牌存储在 ~/.gemini/antigravity-acp/ 中,与 Antigravity CLI 登录分开。

桌面: 使用 Tauri 构建的 macOS 应用。它在本地端口启动一个捆绑的 Python 后端 sidecar,并在启动时连接前端。预构建的 Apple Silicon 构建在 Releases 页面上,或者使用 npm run desktop:dev 从源代码构建。

iPhone/iPad: 一个原生 iOS 应用,也使用 Tauri 构建。由于 iOS 无法运行本地后端,该应用是一个轻量客户端:它连接到您已经托管的 Agentrove 实例(您的 Docker 或生产设置),可通过 https/wss 访问。由于它是开源的,您自己构建并签名——没有硬编码到任何人的服务器。需要一台装有 Xcode 的 Mac、Rust iOS 目标以及 CocoaPods。一个捆绑的辅助工具(npm run ios:install)构建、签名、导出并安装一个独立的 .ipa 到连接的设备上,即使使用免费的 Apple ID 也可以(每 7 天重新签名一次)。

生产环境: 使用 SECRET_KEY、您的 APP_URL 和 ALLOWED_ORIGINS 设置的单主机 Docker 部署,使用 docker-compose-production.yml。

底层技术

  • 前端: React 19、TypeScript、Vite、Tailwind CSS、Monaco(代码编辑器)、xterm.js(终端)
  • 后端: FastAPI、SQLAlchemy、SQLite、Redis
  • 运行时: ACP(代理通信协议)、Docker 或主机沙箱、Tauri 桌面 sidecar

项目详情

  • 许可证:Apache 2.0
  • 社区:README 中链接的 Discord 服务器
  • 欢迎贡献和反馈

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目