共享知识维护
多智能体共享知识冲突?避免覆盖与过期结论
避免多个 AI Agent 覆盖共享知识、采用缺乏证据的主张,或在来源变化后继续使用过期结论。
文章封包
Workflows
让多个 coding、研究或运营 Agent 读写同一份项目知识的团队
8 分钟阅读
01
不要让每个 Agent 直接把输出写成已接受的共享知识。
02
把原始证据、候选主张与已接受结论分成三种状态。
03
在接受前发现过期写入、审核矛盾,并保留被取代结论的历史。
01
先说结论:Agent 写入只是候选主张
多智能体共享知识时,不要采用最后写入者自动胜出的规则。每次写入先保留来源、写入者、适用范围、采集时间与预期版本;只有重新检查当前来源并完成审核后,候选主张才能成为已接受的共享知识。
如果目标版本已经变化,就在调用 `write_page` 前停止流程并重新读取;如果两个结论互相矛盾,就保留冲突,不要用新文字静默覆盖旧历史。
02
先分清五种失败
共享文件、向量库或记忆服务只能让 Agent 看到同一批数据,不能自动判断哪一条是当前正确的知识。先把失败分类,才能选择版本检查、来源重读或人工审核。
- 覆盖:Agent B 的最后写入把 Agent A 有证据的内容直接盖掉。
- 过期:Agent 按旧版来源生成结论,写入前来源已经改变。
- 矛盾:两个主张都看似合理,但内容、范围或时间互不相容。
- 范围污染:一个 Agent 的项目、角色或个人数据流入不该共享的空间。
- 假完成:Agent 记录工作已完成,却没有测试、文件或可复现结果。
03
使用候选、验证、接受三阶段流程
先指定事实或 Page 的权威来源与写入范围。Agent 身份本身不是权威;代码、测试、规格与维护中的第一方文档仍然优先。
审核时回到原始证据,把主张标记为 supported、contradicted、stale、replaced 或 unresolved。信息更新不代表一定正确;证据不足时,保留未解决状态。
下面的斜线命令只适用于已经通过 `/setup` 安装 Wenlan Codex plugin 的 Codex。其他 Agent 可以使用本地 MCP 的 `recall`、`capture`、`distill`、`lint`、`list_pending_revisions`,或本地 CLI 的 `wenlan pages`、`wenlan capture`、`wenlan lint`、`wenlan curate revisions`。
Wenlan Codex plugin:检查、保存、整理与审核
/pages <共享主题>
/capture <候选主张 + 来源 + 为什么重要>
/distill <共享主题>
/lint
/curate04
Wenlan 能做什么,以及不能做什么
Wenlan 把 Sources、原子 Memories 与维护型 Pages 分开。明确取代会保留 supersedes 链;stale Page 可以按当前证据重建;机器要改写人工拥有的内容时,会先成为可审核修订。可选的 Reconcile 流程能把受保护冲突排入审核,但默认关闭。
Wenlan 不是 Agent 调度器、分布式锁服务或自动共识引擎。目前公开的 MCP `write_page` 不接受 `expected_version`,所以这个流程必须在写入前自行重读并比较来源与版本,不能宣称 Wenlan 会原子化拒绝过期的机器 Page 更新。人工拥有的 Page 更新会进入可审核修订;本地 Page refresh 只支持本地 stdio MCP,语义冲突仍要靠来源与判断处理。
05
用两个 Agent 做最小验收
准备一份来源与两个互相矛盾的候选结论。让第一个 Agent 保存有来源的主张,再修改来源或 Page;第二个 Agent 使用旧版本时,写入前检查应该发现版本已经变化并停止,或把人工拥有的 Page 更新送进审核,而不是静默盖掉新内容。
最后从另一个 Agent 重新查询,确认它看到已接受状态、当前来源与未解决冲突,并能追查被取代的结论及原因。即使不用 Wenlan,这组验收也适用于其他共享知识系统。
先测试一个互相矛盾的结论
让两个 Agent 连接 Wenlan,保存一条有来源的冲突主张,确认审核与历史在复用前都能看见。
FAQ