项目简介

Codex Mail 是一个集成了 Model Context Protocol (MCP) 服务器和多智能体协调功能的统一平台。它为AI编程智能体提供了一个“邮件式”的协作层,允许多个智能体(如 Codex CLI、Claude Code、Gemini CLI 等)在一个项目上协同工作。平台基于OpenAI Codex构建,并增强了多智能体编排能力和Web协调前端,通过标准化的方式向 LLM 客户端提供上下文信息和功能,包括资源托管、工具执行和Prompt模板渲染。

主要功能点

  • 多智能体协调: 提供邮件式消息系统、文件预留机制(通过“租赁”防止智能体在同一文件上发生冲突)、智能体身份识别、可搜索的通信历史和Web仪表盘进行人工监督。
  • Auto Drive & 智能体编排: 支持多智能体自动化任务,包括自我修复和完成完整任务;提供可选的 GUI 模式和浏览器集成;支持 '/plan'、'/code' 和 '/solve' 等多智能体命令;以及统一设置中心和主题系统。
  • MCP 服务器核心功能:
    • 资源 (Resources) 托管: 管理项目上下文数据和信息,支持数据访问。
    • 工具 (Tools) 注册与执行: 允许 LLM 调用外部功能,例如 'send_message' (发送消息)、'reserve_file_paths' (预留文件路径)、'search_messages' (搜索消息) 等。
    • Prompt 模板 (Prompts) 定义与渲染: 支持可定制的 LLM 交互模式。
  • 安全与控制: 提供只读模式、人工审批和工作区沙盒等安全功能,确保智能体操作的安全性和可控性。
  • 跨项目协作: 允许智能体在不同仓库(如前端和后端)之间建立联系并协调工作,实现统一开发。

安装步骤

  1. 安装 'uv' (Python 包管理器):
    curl -LsSf https://astral.sh/uv/install.sh | sh
    export PATH="$HOME/.local/bin:$PATH"
  2. 克隆仓库并进入目录:
    git clone https://github.com/ApexHockey/codex_mail
    cd codex_mail
  3. 创建 Python 虚拟环境并安装依赖:
    uv python install 3.14
    uv venv -p 3.14
    source .venv/bin/activate  # Windows 用户请运行: .venv\Scripts\activate
    uv sync
  4. 自动检测并集成编码智能体 (可选): 此脚本会自动检测您已安装的编码智能体(如 Claude Code, Gemini CLI 等),并为它们安装 MCP 智能体邮件集成。
    scripts/automatically_detect_all_installed_coding_agents_and_install_mcp_agent_mail_in_all.sh
  5. 启动 MCP 服务器 (默认端口 8765): 此脚本会启动 MCP 服务器,并在启动时自动生成或使用认证令牌。
    scripts/run_server_with_token.sh

服务器配置 (MCP 客户端使用)

MCP 客户端(例如 Codex CLI、Claude Code、Gemini CLI 等)需要配置 MCP 服务器的连接信息才能与之通信。以下是配置 MCP 服务器所需的关键信息和参数说明:

  • 服务器名称 (server name): 您可以为您的 MCP 服务器实例指定一个名称,例如 'codex_mail' 或 'my_mcp_server'。这个名称用于客户端识别不同的 MCP 服务器连接。
  • 命令 (command): 客户端连接 MCP 服务器通常需要一个执行命令。对于 Codex Mail,该命令是 'npx'。'npx' 是一个 Node.js 包执行工具,用于运行 '@modelcontextprotocol/server-http',这是一个实现 MCP HTTP 传输协议的工具。
  • 参数 (args): '["-y", "@modelcontextprotocol/server-http", "http://127.0.0.1:8765/mcp/"]'。
    • '-y': 'npx' 的参数,表示自动确认安装所有必要的依赖。
    • '@modelcontextprotocol/server-http': 这是 MCP HTTP 服务器的 npm 包名称,它负责处理 MCP 协议的 JSON-RPC 请求和响应。
    • 'http://127.0.0.1:8765/mcp/': 这是 MCP 服务器的访问 URL。
      • 'http://127.0.0.1': 服务器运行的主机地址(本地回环地址)。
      • '8765': 服务器监听的端口。
      • '/mcp/': MCP 服务器的 API 路径。
  • 认证 (Authorization,可选): 如果您在服务器启动时配置了 'HTTP_BEARER_TOKEN' 环境变量(例如在 'scripts/run_server_with_token.sh' 中),客户端在连接时需要在 HTTP 请求头中包含 'Authorization: Bearer <您的令牌>'。请确保在客户端配置中使用正确的令牌值,例如通过环境变量 'CODEX_MAIL_TOKEN' 引用。

请注意:

  • MCP 客户端配置通常需要指定 'command' 和 'args'。某些客户端可能还允许您设置 'type' 为 'http' 并直接提供 'url' 和 'headers'(用于认证)。
  • 上述信息是 MCP 客户端与 Codex Mail MCP 服务器建立连接所需的核心参数。具体的配置语法将取决于您使用的 MCP 客户端工具。

基本使用方法

  1. 访问 Web UI: 服务器成功启动后,您可以在浏览器中打开 'http://127.0.0.1:8765/mail'。这是一个 Web 仪表盘,用于:
    • 浏览所有项目和已注册的智能体。
    • 查看消息线程和智能体之间的对话。
    • 以“人类监督者”的身份直接向智能体发送高优先级消息。
    • 搜索所有智能体通信记录。
    • 监控文件预留和活动。
  2. MCP 客户端连接: 配置您的 MCP 兼容客户端(如 Codex CLI、Claude Code 或 Gemini CLI)以连接到服务器的 MCP 端点,即 'http://127.0.0.1:8765/mcp/'。
  3. 注册智能体: 您的客户端首次连接时,应使用服务器提供的 'register_agent' 或 'create_agent_identity' 工具在 MCP 服务器上注册自己的身份,以便参与协作。
  4. 智能体通信: 客户端可以使用 'send_message' 工具发送消息,并使用 'fetch_inbox' 工具获取新消息和更新。
  5. 文件协作: 在进行代码修改前,智能体可以使用 'reserve_file_paths' 工具声明对特定文件或文件模式的编辑意图,防止与其他智能体发生冲突。工作完成后,使用 'release_file_reservations' 解除预留。

信息

分类

AI与计算