项目简介
Orchestra是一个强大的框架,旨在通过并行运行多个AI编码代理来加速软件开发流程。它允许人类专注于高层设计和决策,而AI代理则负责执行具体的编码任务。Orchestra通过智能编排、监控和协作功能,确保AI代理的高效工作,并使人工审查和代码合并变得更加便捷。
主要功能点
- 智能任务分解: 设计师代理(AI)能够将复杂的功能实现分解为可管理的子任务。
- 并行代码执行: 针对每个子任务,Orchestra可以启动独立的执行器代理(AI),在隔离的容器或工作区中并行工作。
- 实时监控与协作: 提供文本用户界面(TUI),允许用户监控所有代理的进展、查看代码差异、与代理直接交互,甚至可以与代理在本地代码库中“结对编程”。
- 上下文通信: 代理之间以及代理与用户之间可以通过MCP工具进行消息传递,请求帮助、报告进展或共享信息。
- 代码合并与审查辅助: 支持代码审查流程,并协助将代理完成的代码合并到主分支。
- Git工作区管理: 为每个执行器代理创建独立的Git工作区和分支,确保代码隔离和版本控制。
安装步骤
- 依赖检查: 确保您的系统已安装 'git'、'tmux'、'python' 和 'docker' (如果计划使用Docker模式)。
- Claude CLI: 安装Claude的命令行接口(CLI)工具。
npm install -g @anthropic-ai/claude-code - Orchestra库安装: 使用pip或uv安装Orchestra。
pip install orchestra-code # 或者 uv tool install orchestra-code - 初始化设置: 运行安装向导,配置Docker、Claude API认证等。
orchestra-setup
服务器配置
Orchestra内置一个MCP服务器,名为 'orchestra-subagent',默认监听 '8765' 端口(可在 '~/.orchestra/config/settings.json' 中配置 'mcp_port')。MCP客户端可以通过HTTP协议连接到此服务器。
以下是一个MCP客户端配置示例,用于连接Orchestra的内置MCP服务器:
{ "mcpServers": { "orchestra-subagent": { "type": "http", "url": "http://127.0.0.1:8765/mcp", "description": "Orchestra内部的MCP服务器,用于管理代理会话和提供工具。" } }, "permissions": { "allow": [ "mcp__orchestra-subagent__spawn_subagent", "mcp__orchestra-subagent__send_message_to_session" ] } }
- 'mcpServers.orchestra-subagent': 定义一个名为 'orchestra-subagent' 的MCP服务器。
- 'type': 连接协议类型,这里是 'http'。
- 'url': 服务器地址和端口。默认情况下,Orchestra MCP服务器会在 '127.0.0.1:8765' 运行。
- 'description': 对服务器功能的简要描述。
- 'permissions.allow': 允许客户端调用的MCP工具列表。'spawn_subagent' 用于创建子代理,'send_message_to_session' 用于代理间通信。
基本使用方法
- 进入您的编码项目目录。
- 运行 'orchestra' 命令启动用户界面。
orchestra - 界面启动后,您将在右侧窗格看到设计师代理。通过描述您希望构建或改进的内容来开始,设计师代理将帮助您规划和委派工作。
- 使用 'CTRL+S' 切换窗格,'CTRL+Q' 关闭Orchestra,'CTRL+\' 分离会话。
- 在左侧会话列表中选择代理,然后在右侧查看其执行情况或与其交互。
- 使用 's' 键打开规范编辑器('designer.md')与设计师代理协作。
- 使用 'p' 键切换“结对编程”模式,将选定代理的工作区同步到您的本地目录。
信息
分类
开发者工具