多智能体协作:Edict、Open Multi-Agent、Agora

之前写过好几篇多智能体(MAS)系统(框架):

Edict

开源(GitHub,15.6K Star,1.7K Fork)多智能体系统,灵感来自中国上千年的帝国制度。将中国古代官僚制度的"分权制衡"思想应用于AI多智能体协作架构,通过强制性的"门下省审核"环节确保任务质量与合规:

  • 太子:消息分拣,闲聊自动回复,旨意才建任务
  • 三省:中书、门下、尚书,负责规划、审议、派发
  • 七部:户礼兵刑工吏+早朝官,负责专项执行
  • 严格权限矩阵:谁能给谁发消息,白纸黑字
  • 每个Agent独立Workspace+Skills

十二部制Agent架构

  • 太子:消息分拣,闲聊自动回复,旨意才建任务
  • 三省:中书·门下·尚书,负责规划、审议、派发
  • 七部:户礼兵刑工吏+早朝官,负责专项执行
  • 严格的权限矩阵:谁能给谁发消息,白纸黑字
  • 状态流转校验:kanban_update.py强制合法转换路径,非法状态跳转被拒绝
  • 每个Agent独立Workspace,独立Skills,独立模型
  • 旨意数据清洗:标题/备注自动剥离文件路径、元数据、无效前缀

军机处看板,10个功能面板

相比CrewAI、AutoGen等主流框架,提供制度化的审核流程、完整的实时可视化看板和任务过程的可干预性。

支持从远程(如GitHub)为各个智能体"部门"灵活增补技能(Skills),并提供CLI、API和UI三种管理方式。

技术亮点

特点 说明
React18前端 TypeScript+Vite+Zustand状态管理,13个功能组件
纯stdlib后端 server.py基于http.server,零依赖,同时提供API+静态文件服务
EventBus事件总线 Redis Streams发布/订阅,服务间解耦通信
Outbox Relay 事务性Outbox模式,保障事件可靠投递(至少一次语义)
状态机审计 严格生命周期状态转换+完整审计日志(audit.py
并行调度引擎 Dispatch Worker支持并行执行、指数退避重试、资源锁
DAG编排器 Orchestrator基于DAG的任务分解与依赖解析
Agent思考可视 实时展示Agent的thinking过程、工具调用、返回结果
一键安装/一键启动 install.sh自动配置,start.sh一条命令启动全部服务
systemd生产部署 edict.service支持systemd守护进程,开机自启
15秒同步 数据自动刷新,看板倒计时显示
Dashboard鉴权 auth.py提供看板登录认证
每日仪式 首次打开播放上朝开场动画
远程Skills生态 从GitHub/URL一键导入能力,支持版本管理+CLI+API+UI

实战

基于Docker部署:
docker run -p 7891:7891 cft0808/sansheng-demo

基于源码部署:

bash 复制代码
git clone https://github.com/cft0808/edict.git
cd edict
chmod +x install.sh && ./install.sh
# 一键启动
chmod +x start.sh && ./start.sh
# 分别启动
bash scripts/run_loop.sh &
python3 dashboard/server.py
open http://127.0.0.1:7891

浏览器打开http://127.0.0.1:7891

Open Multi-Agent

LangGraph需要图状态机、状态持久化、子图;AutoGen依赖Python全家桶;OpenAI Agents SDK绑死自家的模型生态。

官网,基于TypeScript、开源(GitHub,6K Star,2.3K Fork)多智能体编排框架,33个源文件、3个运行时依赖(@anthropic-ai/sdkopenaizod),用runTeam()把目标拆成任务、按依赖关系并行执行、汇总结果。

适用场景:想快速搭多Agent协作原型的Node.js开发者,需要混用多个模型供应商,要在CI/CD、Serverless里嵌入Agent逻辑。

不适合:需要状态持久化(断点续跑)、分布式Agent通信、复杂状态机流转、团队没有TypeScript能力。

实战

安装:npm install @jackchen_me/open-multi-agent

TS

ts 复制代码
import { OpenMultiAgent } from '@jackchen_me/open-multi-agent'

const orchestrator = new OpenMultiAgent({
	defaultModel: 'claude-sonnet-4-6',
})

const team = orchestrator.createTeam('api-team', {
	name: 'api-team',
	agents: [architect, developer, reviewer],
	sharedMemory: true,
})

const result = await orchestrator.runTeam(
	team,
	'Create a REST API for a todo list'
)

框架内部会自动做三件事:用Coordinator Agent把目标拆成任务DAG,按依赖关系调度执行,独立任务并行跑,最后汇总结果。开发者不需要手写任何任务定义或图结构。

三种执行模式覆盖从简单到复杂的场景:

模式 方法 适用场景
单Agent runAgent() 一次调用,最简入口
自动编排 runTeam() 给目标,框架自动规划执行
显式管道 runTasks() 用户自己定义任务依赖关系

任务自动分解:不需要手写DAG

多数框架要求你预先定义任务节点和依赖关系,runTeam()让LLM自己生成任务计划,协调器接收目标和Agent名单,输出JSON任务数组(标题、描述、负责人、依赖项),框架据此构建依赖图调度执行。

10行代码能启动一个多步协作流程,LangGraph或CrewAI同等功能大概要50行起步。

框架内置四种调度策略:

  • dependency-first:默认,优先执行阻塞其他任务最多的节点
  • round-robin
  • least-busy
  • capability-match:关键词匹配的智能分配。

scheduler.ts的实现,"关键路径"的计算就是BFS遍历依赖图统计被阻塞的下游任务数。

本地模型也能跑工具调用

同一个团队里可以混用 Claude、GPT、Gemma 4、Grok。本地模型通过 OpenAI 兼容协议接入(Ollama、vLLM、LM Studio、llama.cpp),已经验证了 Gemma 4、Llama 3.1、Qwen 3 等模型的工具调用能力。

本地模型的工具调用是个已知痛点------很多模型会把 tool_use 返回成文本而非标准的 tool_calls 格式。框架做了自动回退提取:先尝试解析标准格式,失败后从文本中正则提取。这在 src/llm/openai.ts 的 fallback 逻辑里能看到。

DECISIONS.md里写四件明确不做的事:

  • 不做 Agent Handoffs。Agent A 把对话转移到 Agent B 这种模式,和框架的任务边界设计冲突------每个任务就是一个 Agent 干一件事出结果,Handoff 会模糊这个边界。
  • 不做状态持久化:长时运行的工作流崩溃后无法恢复。作者判断目标用户的工作流是秒级到分钟级完成,不是需要 checkpointing 的企业级场景。
  • 不做MCP和A2A协议。理由是defineTool() API已经能包装任何外部服务,加协议层是给工具平台建设者用的,不是给框架目标用户用的。
  • 不做Dashboard。只暴露数据(onProgress 回调、onTrace 结构化追踪),不造UI。

实用工程细节

  • 循环检测:LoopDetector用滑动窗口追踪工具调用签名和文本输出,连续3次相同操作触发警告,可配置为终止或自定义回调。
  • 结构化输出:给Agent配outputSchema(Zod),输出自动解析为JSON并校验,失败重试一次。类型安全,不用自己解析字符串。
  • 任务重试:maxRetries+指数退避,重试期间的Token消耗累计计算。这对计费准确性很重要。
  • 可观测性:onTrace回调输出结构化Span,覆盖每个LLM调用、工具执行、任务和Agent运行,带计时、Token用量和共享runId。不订阅就零开销,也不引入额外依赖。
  • 测试覆盖率88%。

Council of High Intelligence

开源(GitHub,616 Star,65 Fork)项目

Agora

Agora,古希腊语里指代"城邦广场",当时市民把技术、商业、政治、爱情、人生意义所有问题都拿到这里,公开讨论。

开源(GitHub,148 Star,20 Fork)创意即来源于此,基于Claude Code构建的多Agent审议系统,覆盖工程、商业、人生抉择、关系、心理韧性、创造性突破六大领域。输入你的问题,AI自动组建专家面板,通过结构化辩证得出深度结论。

用黑格尔正反合辩证法帮你把问题想深、想透、想出新高度,实现一套多智能体审议系统:

  • 6个专业审议室
  • 31位东西方思想家
  • 1个智能路由器 + 黑格尔 正(Thesis)→反(Antithesis)→合(Synthesis) 结构
  • 8步结构化审议流程 + 两次真人交互确认

6个审议室

审议室 命令 领域 典型问题
锻造坊 /forge 工程与架构 "该用什么架构?""这段代码为什么有问题?"
集市 /bazaar 商业与战略 "怎么定价?""要不要进入这个市场?"
神谕所 /oracle 人生十字路口 "要不要辞职?""我的人生方向是什么?"
火炉边 /hearth 关系与家庭 "怎么跟孩子沟通?""这段感情值得继续吗?"
诊疗室 /clinic 心理韧性 "怎么对抗拖延?""我怎么从倦怠中恢复?"
工作坊 /atelier 创造性突破 "我为什么写不出东西?""怎么建立创作流程?"

5种使用模式

模式 命令 说明
Full(默认) /forge "问题" 8步完整审议,两次交互,黑格尔正反合
Quick /forge --quick "问题" 2轮快速模式,无交互,适合快速决策
Duo /forge --duo "张力" 双人辩证,3轮,探索核心张力
Triad /forge --triad architecture "问题" 预定义三人组,精准匹配问题域
FullPanel /oracle --full "问题" 调用全部成员(6-7位)

13位Agora专属思想家

思想家 核心方法论 隶属审议室
卡尔·波普尔 证伪主义/红队 forge
伊曼努尔·康德 绝对律令/可普遍化 hearth,forge
奥卡姆的威廉 奥卡姆剃刀/复杂度审计 forge,atelier
弗里德里希·尼采 创造性破坏/价值重估 forge,oracle,atelier
让-保罗·萨特 存在自由/激进责任 oracle
卡尔·荣格 阴影整合/个体化 oracle,clinic
埃里希·弗洛姆 爱的艺术/生产性取向 hearth
阿尔弗雷德·阿德勒 课题分离/共同体感觉 hearth
维克多·弗兰克尔 意义疗法/态度自由 clinic,oracle
B.F.斯金纳 行为主义/环境设计 clinic
约瑟夫·熊彼特 创造性毁灭/企业家精神 bazaar
庄子 逍遥游/齐物论 hearth,clinic
路德维希·维特根斯坦 语言游戏/概念分解 forge,atelier

另外,内置18个Council of High Intelligence项目的顶级Agent,无需额外安装:费曼、图灵、老子、孙子、塔勒布......

8步结构化流程,升级自Council的7步协议:

复制代码
STEP 0:解析模式 + 组建面板
STEP 1:证据收集(按 Room 定制)
STEP 2:问题重述 + ★交互确认
STEP 3:第一轮 --- 独立分析(并行、盲审)
STEP 4:自适应深度门控 + ★交互决策
STEP 5:第二轮 --- 黑格尔交叉审查(按需)
STEP 6:协调者综合
STEP 7:Room 裁决

核心机制:Round 2中每位Agent必须提出Synthesis(不能只选边站),Coordinator识别Thesis(多数派)→Antithesis(最强少数派)→Synthesis(更高整合)。

Agora是Council of High Intelligence的扩展,不是替代。Agora内置全部18个council-* agent,无需单独安装Council。两者可以共存,各有侧重。

优点:

  • 视角极度多元:东方逍遥(庄子)+西方存在主义(萨特)+心理韧性(弗兰克尔)+证伪主义(波普尔),真正做到"兼听则明"。
  • 结构化极强:8步流程+辩证法,避免普通AI"输出一堆鸡汤"的毛病。
  • 智能路由,一键直达:输入/agora 要不要辞职创业,系统自动判断该进Oracle(人生抉择)还是Bazaar(商业战略),无需你手动选审议房间。
  • 黑格尔正反合,不是简单投票:每位Agent在第二轮必须提出更高层次的Synthesis(整合方案),而不是各说各话。Coordinator主持人会明确找出多数派观点、最强反对意见,再升华出新结论。
  • 两次交互,真正把控深度
    ◦ 第一次:确认"问题我理解对了没?"
    ◦ 第二次:你决定要"浅聊"还是"深挖到底"
    全程可交互引导,避免AI自嗨。
  • 多种模式,灵活适配

局限:

  • 本质仍是AI,不是真人思想家,偶尔会有幻觉或过于理想化的思维输出,需要你自己最终判断。
  • 目前更适合"需要深度思考"的场景,而不是日常闲聊。
  • 思考深度越深,消耗Token越多,Full模式明显更贵。

实战

安装

bash 复制代码
npx skills add https://github.com/geekjourneyx/agora
git clone https://github.com/geekjourneyx/agora.git ~/.claude/skills/agora
# 卸载
npx skills remove agora

使用示例:

bash 复制代码
# 智能路由
/agora 我38岁,总觉得在过别人的生活,下一步该怎么办?
# 直达特定房间
/forge 我们的monorepo架构还要不要继续用?
/hearth 我和伴侣每周都为同一件事吵架
/clinic 我已经三个月没有动力工作了
/atelier 每次写东西都卡壳,怎么破?
# 查看所有房间
/agora --list
# 快速模式
/oracle --quick 要不要辞职?
# 双人辩证
/bazaar --duo 竞争对手降价30%

卸载:

bash 复制代码
npx skills remove agora
rm -rf ~/.claude/skills/agora
相关推荐
后端小肥肠2 小时前
白嫖小云雀 API 200 秒免费额度,封装 Skill,玩转 Seedance2.0 视频
人工智能·agent
大模型真好玩3 小时前
LangChain DeepAgents 速通指南(八)—— DeepAgents流式输出详解
人工智能·langchain·agent
庞轩px3 小时前
LangChain不是“套壳”——它解决了什么实际问题
langchain·大模型·agent·tool·ai应用开发
七夜zippoe5 小时前
OpenClaw 记忆系统:MEMORY.md 使用指南
agent·memory·使用指南·openclaw·记忆系统
深海鱼在掘金6 小时前
深入浅出 LangChain —— 第十一章:实战一 智能客服系统
人工智能·langchain·agent
深海鱼在掘金6 小时前
深入浅出 LangChain —— 第十章:上下文工程与安全护栏
人工智能·langchain·agent
qcx236 小时前
【AI Agent通识九课】 04 · AI 的双车道 — 安全怎么保
人工智能·安全·agent·ai agent·warp
alwaysrun6 小时前
Agentic AI与思维链和自我反思简介
人工智能·agent·思维链·思维树·自我反思
冬奇Lab6 小时前
一天一个开源项目(第93篇):Symphony - OpenAI 官方定义的 AI 代理编排规范
人工智能·openai·agent