Files
edict/docs/wechat-article.md
cft0808 efd36ab729 feat: 添加 Copilot 模型配置 + 旨意看板归档功能
模型配置:
- 新增 Copilot 系列模型 (Claude Sonnet 4, Claude Opus 4.5, GPT-4o, Gemini 2.5 Pro, o3-mini)
- 新增 github-copilot/claude-opus-4.6 模型

旨意看板归档:
- 看板顶部新增筛选栏: 进行中 / 已归档 / 全部
- Done/Cancelled 状态自动归入归档视图
- 支持单条归档/取消归档操作
- 支持一键归档所有已完成任务
- 归档卡片虚线边框半透明展示
- Tab 徽章仅统计活跃旨意数

其他:
- agents SOUL.md 更新
- 脚本健壮性改进 (file_lock, refresh, sync)
2026-02-26 21:09:05 +08:00

303 lines
12 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 我用三省六部制重新设计了 AI 多 Agent 协作架构
> 1300 年前的制度设计,比现代 AI 框架更懂分权。
![封面:军机处看板全貌](screenshots/01-kanban-main.png)
---
## 一、一个奇怪的想法
去年底我开始重度使用 AI Agent 干活——写代码、做分析、生成文档。用的是市面上最火的几个多 Agent 框架。
用了一个月,我发现一个根本性的问题:
**这些框架没有"审核"这个概念。**
CrewAI 的模式是:几个 Agent 各自干活做完就交。AutoGen 好一点,有个 Human-in-the-loop但本质上是你自己当 QA。MetaGPT 有角色分工,但审核是可选的。
就像一家公司没有 QA 部门,工程师写完代码直接部署到线上。
然后你拿到最终结果,不知道中间发生了什么,无法复现,无法审计,无法干预。出了问题只能重跑。
我一直在想:有没有一种架构,天然就把审核嵌入到流程里,不是可选的插件,而是必须经过的关卡?
然后有一天,我在翻《资治通鉴》的时候突然想到——
**三省六部制。**
唐太宗在 1300 年前就设计了这个制度:中书省草拟政令,门下省审议封驳,尚书省执行。三个部门互相制衡,任何政令必须经过审议才能下发。
这不就是我要找的架构吗?
![上朝仪式:每日首次打开的彩蛋动画](screenshots/11-ceremony.png)
*▲ 每天第一次打开看板,会有一个"上朝"开场动画——仪式感拉满*
---
## 二、古人的架构设计
三省六部制不是一个 metaphor它是一套经过 1400 年实践检验的分权制衡系统。
简化一下,信息流是这样的:
```
皇上(你)
↓ 下旨
中书省(规划) ← 把你的一句话拆成可执行的子任务
↓ 提交审核
门下省(审议) ← 审查方案质量,不行就封驳打回
↓ 准奏
尚书省(派发) ← 分配给六部执行
六部(执行) ← 户部管数据、礼部管文档、兵部管开发、刑部管合规、工部管基建
尚书省汇总回奏 ← 结果回报给你
```
注意这里最关键的一步:**门下省审议**。
中书省规划完方案后,不是直接扔给执行层——必须先经过门下省审议。门下省会检查:
- 子任务拆解是否合理?有没有遗漏需求?
- 部门分配是否准确?该派兵部的是不是错派给了礼部?
- 方案是否可执行?有没有不切实际的地方?
如果不合格,门下省可以**封驳**——直接打回让中书省重新规划。不是一个 warning是强制返工。
这就是为什么唐朝能运转 289 年。**不受制约的权力必然会出错**,唐太宗想得很清楚。
---
## 三、我把它做成了开源项目
我用 OpenClaw 搭了一个真正的三省六部系统。9 个 AI Agent 各司其职,严格按照权限矩阵通信。
项目叫 **Edict三省六部**,已开源:
**GitHubhttps://github.com/cft0808/edict**
核心架构很简单:
- **中书省**:接旨(你的指令),规划方案,拆解子任务
- **门下省**:审议方案,质量把关,不合格直接封驳
- **尚书省**:准奏后派发给六部,协调执行,汇总结果
- **六部**户部数据分析、礼部文档撰写、兵部代码开发、刑部安全合规、工部CI/CD 部署)
- **早朝官**:每天给你推一份新闻简报
每个 Agent 有独立的 Workspace、独立的 Skills、独立的 LLM 模型。严格的权限矩阵——谁能给谁发消息,白纸黑字:
| 谁 ↓ 给谁发 → | 中书 | 门下 | 尚书 | 六部 |
|:---:|:---:|:---:|:---:|:---:|
| **中书省** | — | ✅ | ✅ | ❌ |
| **门下省** | ✅ | — | ✅ | ❌ |
| **尚书省** | ✅ | ✅ | — | ✅ |
| **六部** | ❌ | ❌ | ✅ | ❌ |
中书省不能直接指挥六部,六部不能越级上报中书省。所有的跨层通信必须经过尚书省中转。
**这不是装饰性的设定,这是架构层面的强制约束。**
![Demo30 秒看完整流转](demo.gif)
*▲ 30 秒 Demo从上朝仪式到旨意看板、奏折归档、模型配置的完整巡览*
---
## 四、跟现有框架对比
你可能会问:跟 CrewAI、AutoGen 比,差在哪?
| | CrewAI | AutoGen | **三省六部** |
|---|:---:|:---:|:---:|
| 审核机制 | ❌ | ⚠️ 可选 | ✅ 门下省强制审核 |
| 实时看板 | ❌ | ❌ | ✅ 10 个面板 |
| 任务干预 | ❌ | ❌ | ✅ 叫停 / 取消 / 恢复 |
| 流转审计 | ⚠️ | ❌ | ✅ 完整奏折存档 |
| Agent 健康监控 | ❌ | ❌ | ✅ 心跳检测 |
| 热切换 LLM | ❌ | ❌ | ✅ 看板内一键切换 |
最核心的差异是**门下省审核机制**。
这不是 Human-in-the-loop那是让你自己当 QA这是一个专职的 AI Agent 负责审核另一个 AI Agent 的产出。制度性的,强制的,架构级别的。
一个不经审核的 AI 协作系统,就像一个没有代码 review 的团队——跑得快,翻车也快。
---
## 五、军机处看板——让一切可观测
光有架构不够,你还得看得见。
所以我做了一个**军机处看板**——一个实时监控所有任务流转的 Web 面板。零依赖,单文件 HTMLPython 标准库后端,打开浏览器就能用。
10 个功能面板:
**📋 旨意看板**:所有任务以卡片形式展示,按状态分列,支持过滤搜索。每张卡片有心跳徽章——🟢 活跃、🟡 停滞、🔴 告警。点开看完整的流转时间线,随时可以叫停或取消。
![旨意看板](screenshots/01-kanban-main.png)
*▲ 旨意看板:任务卡片按状态分列,心跳徽章一目了然*
**🔭 省部调度**可视化各状态的任务数量、部门分布、Agent 健康卡片。一眼看清谁在忙、谁在闲、谁宕机了。
![省部调度](screenshots/02-monitor.png)
*▲ 省部调度:状态分布 + 部门负载 + Agent 健康卡片*
**📜 奏折阁**:所有已完成的旨意自动归档为"奏折",展示完整的五阶段时间线——圣旨→中书规划→门下审议→六部执行→回奏。一键复制为 Markdown。
![奏折归档](screenshots/08-memorials.png)
*▲ 奏折阁:完整的五阶段时间线,一键导出 Markdown*
**📜 旨库**9 个预设圣旨模板。选一个填参数预览一键下旨。覆盖周报生成、代码审查、API 设计、竞品分析等常见场景。
![圣旨模板库](screenshots/09-templates.png)
*▲ 旨库9 个预设模板,填参数一键下旨*
**⚙️ 模型配置**:每个 Agent 可以独立切换 LLM 模型。中书省用 Claude 做规划,兵部用 GPT-4o 写代码,户部用 DeepSeek 算数据——各取所长。
![模型配置](screenshots/04-model-config.png)
*▲ 模型配置:每个 Agent 独立切换 LLM各取所长*
还有官员总览Token 消耗排行榜)、技能管理、天下要闻(自动新闻聚合)、会话监控、上朝仪式(每天首次打开的彩蛋动画)。
**全部零依赖**,没有 React 也没有 Vue纯 HTML + CSS + JavaScript2200 行搞定。
![官员总览](screenshots/06-official-overview.png)
*▲ 官员总览Token 消耗排行榜 + 活跃度统计*
![天下要闻](screenshots/10-morning-briefing.png)
*▲ 天下要闻:每日自动聚合科技/财经资讯*
---
## 六、跑一个真实案例给你看
光说不练不行。来看一个真实的运行记录——让三省六部分析竞品。
**旨意**:分析 CrewAI、AutoGen 和 LangGraph 这三个框架的差异,输出对比报告。
![任务流转详情](screenshots/03-task-detail.png)
*▲ 点开任意任务卡片,可以看到完整的流转链和实时状态*
### 中书省规划45 秒)
中书省接旨后,拆成了 4 个子任务:
1. 兵部 → 架构与通信机制调研
2. 户部 → 数据采集与量化对比GitHub Stars、Contributors 等)
3. 兵部 → 开发者体验深度评测
4. 礼部 → 汇总写对比报告
### 门下省审议32 秒)—— 封驳了!
**门下省第一轮直接打回:**
> *"方案有三个问题1旨意明确要求评测'可观测性'但规划里没有对应子任务2子任务 1 和 3 都是兵部调研有重叠建议合并3缺少推荐场景的结论性子任务——分析没有结论等于没分析。驳回。"*
中书省修改方案后,门下省第二轮准奏。
**这就是门下省的价值。** 如果没有这一步,兵部会做两次调研,最终报告里也不会有推荐场景——因为原始规划里就没要求。
### 各部执行17 分钟)
- **兵部**:技术深度对比,覆盖架构、通信、可观测性三维度
- **户部**量化数据表——Stars、Contributors、Issue 响应时间、Hello World 搭建时长
- **礼部**:整合兵部 + 户部数据,撰写最终报告
### 回奏
22 分钟15800 Token一份结构化对比报告。结论很有意思
| 场景 | 推荐 | 理由 |
|------|------|------|
| 快速原型 | CrewAI | 上手最快 |
| 对话式协作 | AutoGen | 天然适合多轮讨论 |
| 复杂工作流 | LangGraph | 状态机最灵活 |
| **可靠性优先** | **三省六部** | 唯一内置强制审核 |
---
## 七、技术上的一些选择
做这个项目的时候,我做了几个刻意的技术决策:
**1. 零依赖**
看板前端是一个 HTML 文件2200 行,没有用任何框架。后端是 Python 标准库的 `http.server`,没有 Flask 也没有 FastAPI。
为什么?因为我不想让人跑之前先 `pip install` 一堆东西。这个项目的目标用户可能只是想快速体验一下三省六部的流转效果,不想搭环境。
**2. 每个 Agent 一个 SOUL.md**
每个 Agent 的人格、职责、工作流规则都写在一个 Markdown 文件里。想修改门下省的审核标准?编辑 `agents/menxia/SOUL.md`,下次启动自动生效。
这意味着你可以定制自己的三省六部——也许你的"兵部"不是负责工程,而是负责市场分析。改个 SOUL.md 就行。
**3. 权限矩阵是强制的**
不是"建议"Agent 之间不要越级通信是在架构层面强制限制。六部不能给中书省发消息中书省不能绕过门下省直接让尚书省执行。OpenClaw 的配置文件里白纸黑字写着谁能跟谁说话。
---
## 八、现在你可以试了
项目已经开源MIT 协议。
**GitHubhttps://github.com/cft0808/edict**
最快的体验方式:
```bash
# Docker 一行启动
docker run -p 7891:7891 cft0808/edict
# 打开浏览器
open http://localhost:7891
```
如果你装了 OpenClaw可以完整安装
```bash
git clone https://github.com/cft0808/edict.git
cd edict
chmod +x install.sh && ./install.sh
```
安装脚本自动创建 9 个 Agent Workspace、写入人格文件、注册权限矩阵、重启 Gateway。
![技能配置](screenshots/05-skills-config.png)
*▲ 技能管理:各省部已安装的 Skills 一览,可查看详情和添加新技能*
---
## 九、下一步
Phase 1核心架构已经完成了。接下来要做的几件事
- **御批模式**:让门下省的审议结果可以推送到你的飞书/Telegram你亲自决定准奏还是封驳
- **功过簿**:每个 Agent 的绩效评分——完成率、返工率、耗时统计
- **急递铺**:看板里加一个实时的 Agent 通信流向图——中书省发消息给门下省的时候,连线亮一下
- **国史馆**:把历史旨意和奏折沉淀成知识库,新旨意可以参考历史经验
完整 Roadmap 在 GitHub 上Phase 2 和 Phase 3 的每个子项都标了难度,欢迎认领。
---
## 最后
AI Agent 协作的核心问题不是"让 Agent 更聪明",而是"让 Agent 的协作有规矩"。
CrewAI 解决了"多个 Agent 一起干活"的问题。AutoGen 解决了"Agent 之间能对话"的问题。
但谁来解决"Agent 的产出质量有保障"的问题?
唐太宗在 1300 年前就给出了答案:**分权制衡**。规划的不审核,审核的不执行,执行的不规划。每一个环节都有人盯着,每一个决策都要经过审议。
这可能是我见过的、最优雅的"AI 治理"方案——因为它根本不是为 AI 设计的。
它是为**治理**本身设计的。
---
**GitHubhttps://github.com/cft0808/edict**
开源 · MIT · 欢迎 Star ⚔️