- 新增 CLIPluginAdapter 统一接口 (backend/app/core/agent_adapter.py) - 新增 LLM 服务层,支持 Anthropic/OpenAI/DeepSeek/Ollama (backend/app/services/llm_service.py) - 新增 Agent 执行引擎,支持文件锁自动管理 (backend/app/services/agent_executor.py) - 新增 NativeLLMAgent 原生 LLM 适配器 (backend/app/adapters/native_llm_agent.py) - 新增进程管理器 (backend/app/services/process_manager.py) - 新增 Agent 控制 API (backend/app/routers/agents_control.py) - 新增 WebSocket 实时通信 (backend/app/routers/websocket.py) - 更新前端 AgentsPage,支持启动/停止 Agent - 测试通过:Agent 启动、批量操作、栅栏同步 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
9.7 KiB
9.7 KiB
多 Agent 协作系统 - 参考项目分析
本文档分析相关开源项目的优点,用于设计整合
一、插件化架构参考
1. OpenClaw ⭐⭐⭐⭐⭐
GitHub: MindDock/OpenClaw
核心优点:
- Channel Plugin 接口:统一的插件架构,支持消息通道、Agent 工具、CLI 扩展
- Plugin SDK:完整的插件开发框架,包含扩展点、配置系统、发布流程
- Gateway 控制平面:WebSocket/HTTP 控制平面,支持 RPC 方法、事件系统
- 适配器模式:每个插件实现标准接口,易于扩展
// OpenClaw Channel Plugin 接口
interface ChannelPlugin {
id: string;
meta: ChannelMeta;
capabilities: ChannelCapabilities;
config: ChannelConfigAdapter;
outbound: ChannelOutboundAdapter;
inbound?: ChannelInboundAdapter;
messaging?: ChannelMessagingAdapter;
}
适用场景:CLI 工具插件化、多通道适配
2. everything-claude-code ⭐⭐⭐⭐⭐
GitHub: affaan-m/everything-claude-code
核心优点:
- 跨工具兼容:设计为可在 Claude Code、Codex、Cursor、OpenCode 等多种工具运行
- DRY Adapter:适配器模式实现跨工具通用描述
- 插件系统:完整的 Claude Code 插件,支持 agents、commands、skills、hooks
- 多语言规则架构:按语言分组的规则系统(common + typescript + python + golang)
{
"extraKnownMarketplaces": {
"everything-claude-code": {
"source": {
"source": "github",
"repo": "affaan-m/everything-claude-code"
}
}
},
"enabledPlugins": {
"everything-claude-code@everything-claude-code": true
}
}
适用场景:跨 CLI 工具的 Agent 适配
3. Kimi CLI ⭐⭐⭐⭐
GitHub: MoonshotAI/kimi-cli
核心优点:
- Agent Client Protocol (ACP):标准的 Agent 客户端协议
- MCP 支持:完整的 Model Context Protocol 支持
- Zsh 集成:Shell 集成,支持模式切换(Agent/Shell)
# MCP 配置示例
kimi --mcp-config-file /path/to/mcp.json
适用场景:CLI 工具的 MCP 集成参考
二、共识机制参考
1. W-5 Multi-Agent Consensus Framework ⭐⭐⭐⭐⭐
GitHub: Winner12-AI/w5-football-prediction
核心优点:
- 概率再平衡器:使用 Gemini 3 作为"概率再平衡器"
- 动态提示注入:根据任务动态调整提示词
- 多 Agent 辩论:Agent 之间通过辩论达成共识
- 准确率提升:86.3% 准确率,通过共识机制实现
共识流程:
1. 各 Agent 独立分析
2. 提出初步结论
3. Agent 之间辩论
4. 概率再平衡
5. 达成共识
适用场景:多 Agent 决策共识
2. Claude-Flow ⭐⭐⭐⭐⭐
项目: Enterprise multi-agent orchestration for Claude Code
核心优点:
- 容错共识:支持 Byzantine、Weighted、Majority 三种共识机制
- Queen-led Swarms:层级化协调,防止 Agent 漂移
- SONA 学习:自优化神经架构,<0.05ms 适应速度
- HNSW Memory:150x-12,500x 更快的模式检索
| 共识类型 | 特点 | 适用场景 |
|---|---|---|
| Byzantine | 2/3 多数,抗恶意节点 | 高安全要求 |
| Weighted | 按权重投票 | 专家系统 |
| Majority | 简单多数 | 快速决策 |
| Raft | 领导者选举 | 分布式协调 |
| Gossip | 流言传播 | 大规模系统 |
适用场景:企业级 Agent 编排、容错共识
3. Multi-Agent Consensus Seeking via LLMs
论文: Multi-Agent Consensus Seeking Via Large Language Models
核心优点:
- 平均策略:LLM Agent 主要使用平均策略寻求共识
- 网络拓扑影响:分析 Agent 数量、个性、网络拓扑对谈判的影响
- 零样本自主规划:应用于多机器人聚合任务
适用场景:Agent 谈判、共识算法设计
三、协作协议参考
1. Co-TAP: Three-Layer Agent Interaction Protocol ⭐⭐⭐⭐⭐
项目: Co-TAP 三层 Agent 交互协议
核心优点:
- HAI (Human-Agent Interaction):人机交互标准化
- UAP (Unified Agent Protocol):异构 Agent 统一通信
- MEK (Memory-Extraction-Knowledge):认知链标准化
┌─────────────────────────────────────────────────┐
│ HAI 层:用户-界面-Agent 信息流标准化 │
├─────────────────────────────────────────────────┤
│ UAP 层:异构 Agent 无缝互联 │
├─────────────────────────────────────────────────┤
│ MEK 层:记忆-提取-知识认知链 │
└─────────────────────────────────────────────────┘
适用场景:跨平台 Agent 通信
2. Internet of Agents (IoA) ⭐⭐⭐⭐
论文: Internet of Agents: Fundamentals, Applications, and Challenges
核心优点:
- 能力通知与发现:Agent 动态发现机制
- 自适应通信协议:协议转换机制
- 动态任务匹配:任务自动分配
- 共识与冲突解决:内置冲突解决机制
- 激励模型:经济激励机制
适用场景:大规模 Agent 网络
3. Agent Name Service (ANS) ⭐⭐⭐⭐
项目: Universal Directory for AI Agent Discovery
核心优点:
- PKI 证书:可验证的 Agent 身份
- DNS 命名:DNS 风格的命名约定
- 协议适配器层:支持 A2A、MCP、ACP 等多种协议
- 安全解析:正式化的解析算法
适用场景:Agent 发现与互操作
四、MCP 集成参考
1. MCP 协议完整生态
标准: Model Context Protocol (Anthropic)
核心优点:
- 三种传输模式:stdio、http、sse
- 三大核心原语:Tools、Resources、Prompts
- 动态发现:运行时工具发现
- 16000+ Server:丰富的生态
{
"mcpServers": {
"github": {
"type": "http",
"url": "https://github-mcp.example.com",
"headers": {
"Authorization": "Bearer ${GITHUB_TOKEN}"
}
},
"filesystem": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "~/Projects"]
}
}
}
五、整合设计建议
基于以上分析,建议整合以下优点:
1. 插件化架构(来自 OpenClaw + everything-claude-code)
interface CLIPluginAdapter {
id: string
name: string
version: string
# 适配能力
def execute(task: Task) -> Result
def get_status() -> Status
def join_meeting(meeting_id: str) -> None
def write_state(state: dict) -> None
def read_others(agent_id: str) -> dict
}
# 预置适配器
class ClaudeCodeAdapter(CLIPluginAdapter): ...
class KimiCodeAdapter(CLIPluginAdapter): ...
class OpenCodeAdapter(CLIPluginAdapter): ...
2. 共识机制(来自 Claude-Flow + W-5)
class ConsensusMechanism:
def propose(self, agent_id: str, proposal: Proposal) -> None
def vote(self, agent_id: str, vote: Vote) -> None
def resolve(self) -> Decision
# 共识类型
class ByzantineConsensus(ConsensusMechanism): ...
class WeightedConsensus(ConsensusMechanism): ...
class MajorityConsensus(ConsensusMechanism): ...
3. 会议驱动(栅栏同步)
class MeetingBarrier:
def wait(self, agent_id: str) -> None
def trigger_when_all_ready(self) -> None
def start_conensus_process(self) -> Decision
4. .doc 文件夹结构
.doc/
├── agents/ # Agent 注册与状态
│ ├── claude-code.json
│ ├── kimi-cli.json
│ └── opencode.json
├── dialogues/ # Agent 间对话记录
│ └── agent_a_agent_b_20250304.json
├── progress/ # 工程进度
│ └── project_state.json
├── resources/ # 资源分配与锁
│ └── resource_pool.json
├── meetings/ # 会议记录与共识
│ └── meeting_20250304.md
├── cache/ # 实时缓存
│ └── meeting_queue.json
└── workflow/ # 工作流定义
└── project_workflow.yaml
六、参考项目链接汇总
| 项目 | GitHub/链接 | 核心价值 |
|---|---|---|
| OpenClaw | MindDock/OpenClaw | 插件化架构 |
| everything-claude-code | affaan-m/everything-claude-code | 跨工具兼容 |
| Kimi CLI | MoonshotAI/kimi-cli | MCP + ACP |
| W-5 Framework | Winner12-AI/w5-football-prediction | 共识机制 |
| Claude-Flow | ruvnet/claude-flow | 企业级编排 |
| RuVector | ruvnet/ruvector | 自学习向量库 |
| template-repo | AndrewAltimit/template-repo | 6 Agents + 14 MCP |
| MCP Protocol | modelcontextprotocol | 统一协议标准 |
更新日期:2026-03-04