项目简介

EquilateralAgents Open Core 是一个开源框架,包含 22 个生产就绪的 AI Agent 和 5 个经过实战验证的工作流。它旨在将您的 AI 编码助手转化为一个协调的开发团队,并通过 Model Context Protocol (MCP) 与大型语言模型 (LLM) 客户端进行集成。该项目专注于提供零配置、MIT 许可的 AI Agent 解决方案,以简化 AI 辅助开发的流程。

主要功能点

  • AI Agent 托管与管理: 统一管理和调度多种 AI Agent,包括代码审查、安全扫描、测试、部署、基础设施管理等,提供标准化的 Agent 能力接口。
  • 工具注册与执行: 允许将 EquilateralAgents 中的 Agent 能力注册为 MCP 工具。LLM 客户端可以通过 JSON-RPC 协议调用这些工具,以执行特定的代码分析、安全审查、自动化测试或部署验证任务。
  • 上下文提供: 向 LLM 客户端提供丰富的项目上下文信息和 Agent 能力声明,支持 LLM 更智能地理解和执行任务。
  • JSON-RPC 通信支持: 服务器通过 JSON-RPC 2.0 协议与 MCP 客户端通信,支持 'stdio' 和 'http' 等多种传输协议,确保灵活的集成方式。
  • 背景执行: 支持工作流的非阻塞式背景执行,并提供进度监控和结果获取机制,使得耗时任务不影响客户端的即时交互。
  • 能力声明: MCP 服务器在初始化时向客户端声明其所支持的工具、资源和 Prompt 模板等能力。

安装步骤

  1. 克隆仓库: 打开终端或命令行工具,执行以下命令克隆 EquilateralAgents Open Core 仓库:
    git clone https://github.com/Equilateral-AI/equilateral-agents-open-core.git
  2. 进入项目目录: 进入刚刚克隆下来的项目目录:
    cd equilateral-agents-open-core
  3. 安装依赖并运行初始化脚本: 安装所有必要的 Node.js 依赖,并运行项目的初始化脚本:
    npm install && npm run wow
    此步骤将安装所有后端依赖,包括 SQLite 数据库(如果 'better-sqlite3' 可用,否则回退到 JSON 文件存储),为服务器运行做好准备。

服务器配置

为了让您的 MCP 客户端(例如 Claude Desktop)能够连接并使用 EquilateralAgents Open Core MCP 服务器提供的功能,您需要将以下配置添加到客户端的 'claude_desktop_config.json' 文件中。请注意,这是一个 JSON 格式的配置文件,不包含代码。

{
  "mcpServers": {
    "equilateral-agents": {
      "command": "node",
      "args": [
        "path/to/equilateral-core/protocols/MinimalMCPServer.js"
      ],
      "comment": "请将 'path/to/equilateral-core/protocols/MinimalMCPServer.js' 替换为实际的 MinimalMCPServer.js 文件的绝对或相对路径"
    }
  }
}
  • 'equilateral-agents': 这是您为 MCP 服务器实例指定的唯一名称,客户端将使用此名称来引用它。
  • 'command': 启动 MCP 服务器进程的命令行命令。对于 Node.js 应用程序,通常是 'node'。
  • 'args': 传递给 'command' 的参数列表。这里指定了 'MinimalMCPServer.js' 文件的路径,这是 EquilateralAgents Open Core 中 MCP 服务器的入口点。请务必根据您的项目实际存放位置进行路径修改。

基本使用方法

  1. 启动 MCP 服务器: 当您的 MCP 客户端(如 Claude Desktop)加载上述配置后,它会自动尝试启动 'equilateral-agents' MCP 服务器,并建立连接。服务器将通过配置的传输协议(如 'stdio' 或 'http')与客户端进行通信。
  2. 注册自定义 Agent 能力为 MCP 工具: 在 'MinimalMCPServer.js' 文件中,您可以像以下示例一样,将 EquilateralAgents 中的 Agent 能力注册为 MCP 工具。这使得 LLM 客户端能够发现并调用这些能力。
    const MinimalMCPServer = require('./equilateral-core/protocols/MinimalMCPServer');
    const AgentOrchestrator = require('./equilateral-core/AgentOrchestrator');
    // ... 引入其他 Agent 类
    
    // 创建 MinimalMCPServer 实例
    const server = new MinimalMCPServer({
        name: 'equilateral-agents',
        version: '2.0.1',
        transports: ['stdio', 'http'], // 支持 stdio 和 http 传输
        port: 3000 // 如果使用 http 传输,则指定端口
    });
    
    // 注册一个名为 'security-scan' 的 MCP 工具
    server.registerTool('security-scan', {
        description: '在项目上运行全面的安全扫描', // 工具的描述
        inputSchema: { // 定义工具输入参数的 JSON Schema
            type: 'object',
            properties: {
                projectPath: { type: 'string', description: '项目路径' }
            },
            required: ['projectPath'] // 必需的参数
        },
        handler: async (args) => { // 工具的执行逻辑
            const orchestrator = new AgentOrchestrator();
            await orchestrator.start();
            // 调用 EquilateralAgents 的 'security-review' 工作流
            return await orchestrator.executeWorkflow('security-review', args);
        }
    });
    
    // 初始化并启动 MCP 服务器
    await server.initialize();
  3. 通过 LLM 客户端调用工具: 一旦 MCP 服务器启动并成功注册了工具,连接到该服务器的 LLM 客户端就能够发现 'security-scan' 工具。LLM 可以通过向服务器发送 JSON-RPC 请求(例如 'tools/call' 方法,附带 'security-scan' 作为工具名称和 '{ "projectPath": "./my-codebase" }' 作为参数),来调用这个工具,从而触发 EquilateralAgents 的安全审查工作流。服务器将执行任务并将结果返回给 LLM 客户端。

信息

分类

开发者工具