惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

云风的 BLOG
云风的 BLOG
IT之家
IT之家
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog
博客园 - 司徒正美
美团技术团队
Last Week in AI
Last Week in AI
月光博客
月光博客
博客园 - 叶小钗
MongoDB | Blog
MongoDB | Blog
U
Unit 42
T
Tailwind CSS Blog
GbyAI
GbyAI
T
The Blog of Author Tim Ferriss
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
H
Hackread – Cybersecurity News, Data Breaches, AI and More
酷 壳 – CoolShell
酷 壳 – CoolShell
Google DeepMind News
Google DeepMind News
H
Help Net Security
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
N
Netflix TechBlog - Medium
B
Blog RSS Feed
大猫的无限游戏
大猫的无限游戏
aimingoo的专栏
aimingoo的专栏
A
About on SuperTechFans
Y
Y Combinator Blog
罗磊的独立博客
D
DataBreaches.Net
有赞技术团队
有赞技术团队
MyScale Blog
MyScale Blog
博客园_首页
博客园 - 三生石上(FineUI控件)
G
Google Developers Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
雷峰网
雷峰网
博客园 - 【当耐特】
Engineering at Meta
Engineering at Meta
博客园 - Franky
M
MIT News - Artificial intelligence
B
Blog
The Cloudflare Blog
Apple Machine Learning Research
Apple Machine Learning Research
I
InfoQ
S
SegmentFault 最新的问题
F
Fortinet All Blogs
阮一峰的网络日志
阮一峰的网络日志
Stack Overflow Blog
Stack Overflow Blog
Microsoft Security Blog
Microsoft Security Blog

V2EX

我用 AI 写代码,但终端管理反而成了累赘——于是我做了 codux - V2EX [调研] 各位在公司都用什么 ide 和 agent 写代码? 老运维 share 一个运维平台 新电脑 brew install node 之后,一个小设置可以提升对供应链投毒的防御 - V2EX GLM-Coding 调用持续报错: z.ai 的 Lite 套餐几乎无法使用,官方 Pro/Max 是否稳定? - V2EX 上海漕河泾内推,本组有 2 个 hc,一个后端,一个前端,预算都是 20k 左右,不打卡,氛围好 如果 V2EX 上有一组不永久保存聊天记录(比如只保存 7 天或者 24 小时)的聊天室,那么会开启哪些有用或者有趣的可能? - V2EX gemini cli 貌似挂了,一直返回 403 - V2EX 第一次在自媒体上赚到钱 收集了最近在使用的低价 GPT, Gemini,邮箱等 AI 会员的小店合集 讨论个大实话:现在企业还在说 AI 编程提效 20%, 30%的,真的太落后,没用懂 AI。因为包括很多前沿公司,已经狂奔到提效 200%-500%的情况 [招聘][远程][币安] 前端/后端/QA/iOS/Android 至少 3 年以上经验 目前有大量 HC 欢迎投递 Chatgpt Pro 用量用不完的可以开这些设置 面试的时候好像遇到钓鱼了,给各位避个坑 cursor 年续费 22 号到期, 自动续费是否还是老的计次套餐呢 - V2EX 被两件破事毁掉的一下午,琐碎的内耗消磨人的精力 使用 Planet 存储 Codex 的会话或者重要信息 - V2EX 如果业务部门领导不要你开发功能,而是要求你教会它用 claude code 开发功能,你会怎么做? 分享一个 MacOS 接绿联 CM818 USB 转 DP 转接器使用感受 - V2EX 我的 HR 朋友 10 年老 Java ,非全大专,大家帮忙看看简历 开源了一个 AI 口语练习工具,音素级发音评分,完全免费可自部署 V2EX 上有哪些你觉得很有趣、印象深刻的妹纸? 字节为啥不出个国内版 Vercel? 有在大马的朋友吗? 问个运营商问题 你们在有领导的公司大群发过的最大胆的消息是什么 公司裁员,目前没有工作。想试试摆摊,做一个移动鲜啤打酒车 我的硬盘 Memblaze Pblaze 5 Linux 下不识别,给 Linux 内核提交了补丁, AI 说有望被合并 - V2EX 只有我一个人觉得 codex 不好用? 做了个 AI + 真人专家监督的广告投放平台 Auxora, 7 个品牌跑出 6x ROAS 如何走出至亲的离世 Claude Web 端貌似 claude-opus-4-7 偷偷上了? 现在 Apple 开发者帳號應該是用哪个地区会更好? - V2EX 用回测筛选因子的一点经验分享 给女儿 vibe 了一个故事类的 app,做完发现,这类应用似乎上线难度极大? - V2EX 手机格式化 bitget 钱包没了,里面开通的银行卡还有机会拿到吗 - V2EX [送码] TransVoice - 我的第一款 App 上架啦!实时转写+翻译+字幕,会议听课好助手! PictureHub 高清摄影作品的画廊 Planet 的第一个使用 macOS 26 SDK 构建的 Insider 版本 20260416-1 - V2EX 成都二手房是不是在涨价,有点坐不住了 - V2EX claude 生态(skill mcp plugin)等 Studio Display XDR VESA 适配器脱落 有在用印度区 applestore 的大哥嘛,请教一下礼品卡去哪里买呢 - V2EX 我好像知道京东家政爆火的原因了 - V2EX 薅了公司的 a 家 api key,用机场 ip 做代理容易被封吗 如何在初期就识别 HR 在刷 KPI,没打算招你? [分享]精心打造一个 AI 编程知识库(算法/设计模式/提示词/Skills),助力程序员转型 港版 iPhone 在国内支持联通 5GA 吗?在广东用 想办港卡 AI 对 it 行业影响太大了 我做了个把照片变成 iOS 小组件贴纸的 App ChatGPT Pro 5x 套餐 量真的很足! I have found a method to directly generate advertising video materials using scripts 在小城市开个店,给人写软件,有前途吗 chrome 最新的 147 版直接卡爆炸了 - V2EX 为什么厂家不在 skill/mcp 这类的工具中塞广告呢?这样不是可以大赚嘛? minimax 真是脸都不要了,工作日下午 14:00 定时开启 529,脸都不要了。训练模型居然占用用户使用时间 外资非核心部门 vs 另一家外资的核心部门,该跳吗? iTad 标签 扩展 加小动作 ? - V2EX 去年 H200 能买,不让买是代替快出来了? - V2EX AI 赛事通 - 2026 年 4 月中国区新增 AI 竞赛和黑客松汇总 - V2EX V2EX › 登录 现在安卓开发都在做啥 - V2EX 浏览器插件 沉浸式翻译 是不支持自定义模型了吗? - V2EX Codex 里的 GPT5.4 也能降智?上午让它改两个问题,改了一个小时了, plus 额度用了一半了还是没改好,和前几天用的体感完全不一样。要它改的问题也不复杂。服了。 目前有使用 claude code 的收到人脸认证的吗 - V2EX 分享一个自己做的 Nginx 管理工具,实时请求动态预览!(无奈市面上实在找不到好用的,自己撸了个) - V2EX claude code 崩了么? 今天在反重力上用 claude 一点都不丝滑,有同样的感受吗? opencode 消息周知插件 今天 claude opus 和前两天比,质的飞跃 - V2EX 999 包月价? - V2EX 一个版本, 50 项更新:我们几乎重做了整个播放页 本地大模型多大显存够用? GOGDNS 一款简易的私人 DNS 服务器 - V2EX API key (GLM) 怎么使用 claude code desktop ? Claude 这样订阅有问题吗 - V2EX 帮我爸找回了一篇赛博兰亭集序 求推荐稳定、高性价比使用 Claude Opus 4.6 的渠道/平台 搞个云端 claude code 防止 封号 - V2EX 用 Claude 要实名了,内地用户怎么办? OpenAI Plus 和 Team 都缩水了吗 海外 Android 手机有什么好用的国内第三方应用市场推荐吗 - V2EX 把电脑伪装成电视,用 DLNA 投屏拿到视频号直播流地址 - V2EX claude 认证莫慌 北京互联网法院有什么攻略么?起诉北京智谱华章科技股份有限公司退款可行么? - V2EX Claude 开始引入身份验证 求 vscode 做笔记软件的插件推荐 - V2EX 讯飞星辰的 Coding Plan 如何? Anthropic 宣布在 Claude 平台推行身份验证机制 科普一下低价 gpt 是怎么来的 有没有长期关注 Claude 的朋友,我建了一个 Channel 自动抓取 Claude Team 的推文 啃了那篇 54 页的 Agent Harness 综述, 给大伙讲个省流版 现在那家的 coding plan 还能买到 是不是最近会有什么更聪明的大模型要发布了呀? 用多了 AI 后,有没有觉得 AI 生成的文章有很强的既视感? 如何 实践 Harness 工程? 今日份 GPT 5.4 笑话 如何建一个自己的号池,让 cursor 真正实现 token 自由 写了三个月 Agent Harness,我终于敢让 Claude Code 全自动写代码了
探讨 Agent 应用的矩阵形式,如何让多个 openclaw 甚至 agent 能够组织起来做事情。欢迎大家来讨论
tftNExtLife · 2026-03-27 · via V2EX

Claw Fact Bus 协议规范 v1.0

一种面向自治 AI Agent 集群的事实驱动协调协议。

Carter.Yang 创建并提出


本文档中的"MUST"、"MUST NOT"、"SHOULD"、"SHOULD NOT"、"MAY"和"OPTIONAL"等关键词按照 RFC 2119 的定义解释。


1. 哲学基础

1.1 核心公理

事实,而非命令。

总线承载的是关于现实的陈述。一个 Claw 永远不会告诉另一个 Claw 该做什么;它只陈述发生了什么、存在什么、或者需要什么。接收方 Claw 根据自己的判断行动。

✅  "文件 auth.py 已修改,diff: +23 -5 ,领域: 身份认证"
✅  "用户请求对 PR #42 进行代码审查"
✅  "claw-B 已认领 fact-0x3A1"
❌  "claw-B ,去审查 auth.py"       ← 命令,禁止

为什么不使用命令? 在 AI Agent 集群中,没有任何单个 Agent 拥有全局知识或保证可靠性。基于命令的协调要求发送方了解接收方的状态、能力和可用性——这些假设在动态、易出错的环境中会失效。基于事实的协调将"发生了什么"与"谁应该响应"解耦,使系统能够在 Agent 加入、离开或故障时自组织。

1.2 AI 矩阵论

人类组织通过 OKR 层级对齐,因为人类通信是有损的、缓慢的、带宽受限的。AI Agent 可以直接处理原始事实并无损地维护因果链。

因此:在 AI 矩阵组织中,事实既是协调介质,也是组织结构。 事实的因果链是人类组织架构的 AI 等价物——它们不是自上而下设计的,而是从 Agent 对现实的反应中涌现出来的。

1.3 公理

以下是定义系统身份的不可协商属性。移除其中任何一个都会产生根本不同的系统。

  1. 事实,而非命令 — 总线承载关于现实的陈述,永远不是指令。
  2. 事实是不可变的 — 已发布事实的内容不可修改。只有总线对它的评估会演化。新事实可以取代旧事实。
  3. 广播介质,本地过滤 — 所有事实存在于共享的全局事实空间中,全局可寻址。总线将事实推送到声明了匹配过滤器的 Claw 。每个 Claw 声明自己关心什么。没有中央协调器。
  4. 事实是可质疑的 — 任何 Claw 都可以证实或反驳其他 Claw 的事实。总线记录这些行为但不裁决真相。消费者自行决定信任。
  5. 因果链即组织结构 — 事实引用其父事实,形成无需预先设计编排的涌现工作流。
  6. 故障安全降级 — 行为异常的 Claw 被逐步隔离。没有任何单个 Claw 故障能导致总线崩溃。

1.4 非目标

以下内容明确不在本协议范围内:

  • 共识 — 总线不判定真相。它提供证据(证实、反驳、置信度)供消费者判断。
  • 分布式总线部署 — 总线本身的复制、分区和容错是实现层面的关注点。
  • 跨总线联邦 — 独立总线实例之间的通信留待未来扩展。
  • 传输绑定 — 本规范与传输无关。HTTP 、WebSocket 、Unix socket 等绑定是独立文档。

1.5 架构渊源

来源 借鉴内容
CAN 总线 (ISO 11898) 内容寻址消息、广播 + 本地过滤、优先级仲裁、错误状态机、无中央主节点
EDA (事件驱动架构) 事件溯源(不可变仅追加日志)、幂等消费、编排模式
科学方法 同行评审(证实/反驳)、置信度报告、知识取代

1.6 设计原理

决策 原理
事实,而非命令 AI Agent 缺乏全局知识;将"发生了什么"与"谁响应"解耦可实现自组织
不可变事实 支持审计、回放、去重和因果推理;可变事实会破坏这四者
广播 + 过滤 无协调器瓶颈;每个 Agent 的过滤器就是它的"感知器官"
独占/广播模式 基本语义差异:"单一处理器" vs "共享感知"——不是优化
核心中的证实/反驳 AI 输出本质上不可靠;没有协议级的可质疑性,信任只能私下处理,破坏互操作性
内容哈希 不可变记录的篡改检测; SHA-256 为了安全性而非速度
JSON 线格式 人类可读、可调试、通用支持;性能敏感部署可使用二进制编码

2. 协议实体

2.1 事实( Fact )

通信的原子单元。类比于 CAN 帧。

一个事实有两个结构区域:

  • 不可变记录 — 由发布者设置,发布后冻结。受 content_hash 覆盖。
  • 可变总线状态 — 由总线独占管理。随事实在其生命周期中流转而变化。

不可变记录字段

字段 类型 要求 描述
fact_id string MUST 全局唯一标识符
fact_type string MUST 点号分隔的分类法(如 code.review.needed
payload object MUST 事实数据。Schema 由 fact_type 决定
source_claw_id string MUST 发布者的 Claw ID
created_at float MUST 创建时的 Unix 时间戳
mode enum MUST exclusive(单一处理器)或 broadcast(所有匹配者)
priority int 0-7 MUST 值越小优先级越高( CAN 惯例)。见 §4
ttl_seconds int MUST 生存时间。过期后 → dead
parent_fact_id string OPTIONAL 直接因果父事实。根事实为空
causation_depth int MUST 在因果链中的深度。根事实为 0 。总线必须强制执行最大值
confidence float 0-1 OPTIONAL 发布者的自我评估确定度。缺省 = 未指定(不是"确定")
content_hash string MUST 规范化 JSON payload 的 SHA-256
domain_tags string[] OPTIONAL 内容领域标签(如 ["python", "auth"]
need_capabilities string[] OPTIONAL 处理此事实所需的能力

可变总线状态字段

字段 类型 描述
state enum 协议生命周期状态(见 §5 )
claimed_by string? 认领的 Claw ID (仅限 exclusive 模式)
resolved_at float? 解决时的时间戳
corroborations string[] 已证实此事实的 Claw ID 列表
contradictions string[] 已反驳此事实的 Claw ID 列表

实现可以维护额外的总线内部状态(如 effective_prioritymatched 标志),但这些不属于协议可见状态。

2.2 Claw

Agent 在总线上的存在。类比于 CAN ECU 。Claw 可以是 AI Agent 或人类操作员——协议不做区分。

字段 类型 要求 描述
claw_id string MUST 唯一标识符
name string MUST 人类可读名称
description string OPTIONAL 此 Claw 的功能描述
acceptance_filter Filter MUST 声明此 Claw 想要接收的事实
max_concurrent_claims int SHOULD 可同时处理的独占事实最大数量
state enum MUST activedegradedisolatedoffline

实现可以维护额外的每 Claw 元数据(如可靠性评分、错误计数器),如故障隔离扩展所述。

2.3 接受过滤器

Claw 对想要接收的事实的声明。基于内容,而非基于目的地。

总线必须支持基于事实属性的内容过滤。推荐以下过滤维度:

维度 类型 描述
capability_offer string[] 此 Claw 能做什么(如 ["review", "python"]
domain_interests string[] 订阅的领域
fact_type_patterns string[] Glob 模式(如 code.*deploy.*.completed
priority_range (int, int) 接受的优先级范围(低,高)
modes enum[] 接受的事实模式

实现可以支持额外的过滤维度(如语义类型、认识论状态、置信度阈值),如协议扩展所述。

2.4 总线

共享的通信介质。总线不是被动管道——它有义务:

义务 要求
发布后不得修改事实的不可变记录字段 MUST
必须将事实投递给所有匹配的 Claw MUST
必须强制执行 exclusive 语义(最多一个认领者) MUST
必须记录证实和反驳 MUST
必须强制执行因果深度限制 MUST
必须拒绝 content_hash 无效的事实 MAY
可以进行速率限制、去重和过载时丢弃负载 MAY
可以维护 Claw 可靠性状态并隔离故障 Claw MAY
可以支持优先级老化以防止饥饿 MAY

3. 匹配协议

3.1 过滤器评估

事实到达 Claw 当且仅当以下全部通过:

门控 0: claw.state ∈ {active, degraded}               (MUST: 非 isolated/offline)
门控 1: fact.priority ∈ claw.filter.priority_range     (MUST: 优先级掩码)
门控 2: fact.mode ∈ claw.filter.modes                  (MUST: 模式兼容性)
门控 3: 至少一个内容维度匹配                            (MUST)

门控 3 的内容匹配至少应包括:

  • fact.need_capabilities ∩ claw.capability_offer ≠ ∅,或
  • fact.domain_tags ∩ claw.domain_interests ≠ ∅,或
  • fact.fact_type 匹配任意 claw.fact_type_patterns( glob )

过滤器为空(无能力、无领域、无模式)的 Claw 应接收所有事实(监控模式)。

3.2 仲裁

模式 行为
broadcast 所有匹配的 Claw 接收事实。无仲裁。
exclusive 总线至多选择一个符合条件的 Claw 。选择在同一可见输入下必须是确定性的。

独占仲裁的具体评分或排名算法是实现选择。推荐算法参见实现说明。


4. 优先级

4.1 优先级级别

优先级使用 3 位字段( 0-7 ),遵循 CAN 惯例(值越小优先级越高):

名称 描述
0 CRITICAL 系统故障、数据丢失预防
1 HIGH 用户面对的阻塞问题
2 ELEVATED 重要但非阻塞
3 NORMAL 大多数事实的默认值
4 LOW 后台任务
5 BACKGROUND 内务处理、优化
6 IDLE 尽力而为的工作
7 BULK 批处理

4.2 反饥饿

总线应实现老化机制以防止低优先级事实被永久饥饿。事实不得老化进入 CRITICAL (优先级 0 )——该级别保留给真正的紧急情况。

推荐老化参数参见实现说明。


5. 事实生命周期

5.1 协议可见状态

              PUBLISH
  ─────────────────────▶ PUBLISHED
                              │
                    ┌─────────┼─────────┐
                    │exclusive│         │broadcast
                    ▼         │         ▼
                 CLAIMED      │     (所有匹配的
                    │         │      Claw 看到它)
                    ▼         │         │
                 RESOLVED ◀───┘    RESOLVED
                    │
                    └──▶ 可以发出子事实(因果链延伸)

  任何非终止状态 ──▶ DEAD ( TTL 过期或故障时)
状态 描述
published 事实被总线接受,对匹配的 Claw 可见
claimed 一个 Claw 已承担独占责任(仅限 exclusive 模式)
resolved 处理完成。可能已产生子事实
dead 事实无法处理( TTL 过期、所有 Claw 释放、显式失败)

实现可以跟踪额外的内部状态(如 matchedprocessing),但这些不得出现在协议级响应或事件中。

5.2 状态转换

触发
published PUBLISH 被总线接受
published claimed CLAIM 由 Claw 发起(仅限 exclusive 模式)
published resolved 直接解决( broadcast 模式)
published dead TTL 过期,无匹配
claimed resolved RESOLVE 由认领 Claw 发起
claimed published RELEASE 由认领 Claw 发起(返回池中)
claimed dead 认领超时,Claw 故障
dead published 管理性重新分派( OPTIONAL )

6. 总线操作

6.1 操作目录

操作码 方向 描述
CONNECT Claw → 总线 以 Claw 身份加入总线
DISCONNECT Claw → 总线 优雅离开总线
HEARTBEAT Claw → 总线 证明存活
PUBLISH Claw → 总线 向总线发出事实
CLAIM Claw → 总线 认领一个独占事实进行处理
RELEASE Claw → 总线 释放已认领的事实回池中
RESOLVE Claw → 总线 完成处理,可选发出子事实
QUERY Claw → 总线 按过滤器读取事实(只读)
SUBSCRIBE Claw → 总线 注册实时推送匹配事实
CORROBORATE Claw → 总线 确认其他 Claw 的事实。总线必须将 claw_id 追加到 corroborations
CONTRADICT Claw → 总线 质疑其他 Claw 的事实。总线必须将 claw_id 追加到 contradictions

6.2 PUBLISH 序列

Claw                                总线
  │                                  │
  │──── PUBLISH(fact) ──────────────▶│
  │                                  │── 验证 content_hash
  │                                  │── 执行准入检查
  │                                  │── 全部通过则:
  │                                  │     设置 state = PUBLISHED
  │                                  │     持久化事实
  │                                  │     为所有 Claw 评估过滤器
  │                                  │     向匹配的 Claw 推送 FACT_AVAILABLE
  │◀─── ACK(fact_id) ───────────────│
  │                                  │

准入检查必须包括内容哈希验证和因果深度强制执行。实现可以添加速率限制、去重、schema 验证和可靠性门控。

6.3 CLAIM 序列

Claw                                总线
  │                                  │
  │──── CLAIM(fact_id) ─────────────▶│
  │                                  │── 验证 fact.mode == EXCLUSIVE
  │                                  │── 验证 fact.state == PUBLISHED
  │                                  │── 验证 claw 并发认领数 < 最大值
  │                                  │── 原子操作:设置 claimed_by = claw_id
  │                                  │             设置 state = CLAIMED
  │                                  │── 向其他匹配的 Claw 推送 FACT_CLAIMED
  │◀─── ACK(success) ───────────────│
  │                                  │

CLAIM 是原子操作。当多个 Claw 尝试认领同一事实时,总线必须使用与 §3.2 一致的确定性标准至多选择一个。无仲裁扩展时,默认选择顺序为先到先得。有仲裁扩展(如高级仲裁)时,总线应使用扩展的评分算法。如果已选择其他 Claw ,总线必须向其他认领者返回失败。认领被拒绝的 Claw 不应重试同一事实。

6.4 RESOLVE 序列

Claw                                总线
  │                                  │
  │──── RESOLVE(fact_id,             │
  │       result_facts=[...]) ──────▶│
  │                                  │── 验证 claw == fact.claimed_by
  │                                  │── 设置 state = RESOLVED
  │                                  │── 设置 resolved_at = 当前时间
  │                                  │── 对每个子事实:
  │                                  │     设置 parent_fact_id = fact_id
  │                                  │     设置 causation_depth = 父 + 1
  │                                  │     执行 PUBLISH 序列
  │◀─── ACK ────────────────────────│
  │                                  │

6.5 CORROBORATE / CONTRADICT

Claw 不得证实或反驳自己的事实。总线必须拒绝此类尝试。

总线必须记录这些行为(将 claw_id 追加到相应列表),但不得基于证实/反驳计数自主更改事实的生命周期状态。信任推导是消费者端或扩展层面的关注点。


7. 安全护栏

总线必须强制执行某些安全不变量以防止级联故障和资源耗尽。

7.1 强制性护栏

护栏 要求
内容完整性 — 拒绝 content_hash 与 payload 不匹配的事实 MUST
因果深度限制 — 拒绝超过配置最大深度的事实 MUST
不可变性 — 发布后永远不修改事实的不可变记录字段 MUST
认领排他性 — 至多一个 Claw 可认领独占事实 MUST
TTL 强制执行 — 使超过生存时间的事实过期 MUST
跨域传播通过派生 — 事实的不可变字段(包括 fact_type)不得被修改以改变其域;跨域传播必须使用带有 parent_fact_id 链接的新派生事实 MUST

7.2 推荐护栏

护栏 要求
因果链环检测 — 拒绝父链包含环的事实 SHOULD
去重 — 在时间窗口内抑制重复发布 SHOULD
每 Claw 速率限制 — 防止单个 Claw 洪泛总线 SHOULD
全局负载丢弃 — 在极端负载下保护总线 MAY
Claw 可靠性跟踪 — 隔离持续故障的 Claw MAY
优先级老化 — 提升未认领事实的优先级以防止饥饿 MAY
Schema 验证 — 根据注册 schema 验证 payload MAY
事实归档 — 压缩或归档处于终止状态( resolved 、dead )超过可配置保留窗口的事实,以限制存储增长 MAY

所有推荐护栏的具体参数在实现说明中定义。


8. 事件

总线向已订阅的 Claw 推送以下事件:

事件 触发条件 Payload
fact_available 新事实匹配 Claw 的过滤器 该事实
fact_claimed 有人认领了独占事实 fact_id, 认领者 claw_id
fact_resolved 事实被解决 fact_id
fact_dead 事实进入 dead 状态 fact_id, 原因

扩展可以定义额外的事件(如 fact_trust_changedfact_supersededclaw_state_changed)。


9. 线格式

所有总线通信使用统一的 JSON 信封:

{
  "message_id": "a1b2c3d4e5f6g7h8",
  "op": "publish",
  "claw_id": "abc123def456",
  "timestamp": 1709712000.0,
  "fact": { "...事实字段..." },
  "success": true,
  "error": null
}

序列化:JSON 。实现可以支持额外的编码( MessagePack 、Protobuf )作为传输级优化,但必须支持 JSON 作为基线。


10. 扩展

本核心规范设计为可扩展的。扩展独立版本化且为 OPTIONAL 。

扩展 范围
认识论状态 信任生命周期( asserted → corroborated → consensus → contested → refuted )、法定人数规则、信任推导
语义分类 semantic_kind 字段( observation 、assertion 、request 、resolution 、correction 、signal )
知识演化 subject_key 字段、自动和显式取代、SUPERSEDED 状态
Schema 治理 Schema 注册表、payload 验证、schema 版本控制和演化
故障隔离 TEC/REC 错误计数器、基于阈值的降级、恢复协议
高级仲裁 评分公式、可靠性加权选择
风暴防护 速率限制、去重、负载丢弃的具体参数

完整定义参见 EXTENSIONS.md。 推荐默认值参见 IMPLEMENTATION-NOTES.md


附录 A:与 CAN 总线的对比

方面 CAN 总线 Claw Fact Bus
帧/消息单元 CAN 帧( 8-64 字节) 事实( JSON 对象)
寻址 消息 ID (基于内容) fact_type + 标签(基于内容)
过滤 硬件掩码 + 过滤寄存器 AcceptanceFilter (基于内容)
仲裁 按消息 ID 逐位比较 实现定义的评分
错误处理 TEC/REC 计数器,3 态状态机 3 态状态机( active/degraded/isolated ),细节在扩展中
流控 过载帧 速率限制器 + 负载丢弃(实现定义)
拓扑 单总线,无主节点 单总线,无协调器
投递 广播 广播(全部)或独占(单一)
信任模型 N/A (物理传感器) 证实/反驳( AI Agent 不可靠)

附录 B:术语表

术语 定义
Claw 连接到事实总线的自治 Agent ( AI 或人类)
事实( Fact ) 关于现实的不可变陈述,原子协调单元
总线( Bus ) 连接所有 Claw 的共享通信介质
接受过滤器 Claw 对想要接收的事实的声明
因果深度 导致此事实的祖先事实数量
父事实 事实的直接因果前辈
证实( Corroboration ) 其他 Claw 确认事实的有效性
反驳( Contradiction ) 其他 Claw 质疑事实的有效性
Dead 无法处理的事实(过期、失败、未认领)
Exclusive 至多一个 Claw 处理事实的投递模式
Broadcast 所有匹配 Claw 看到事实的投递模式

协议由 Carter.Yang 设计。架构主权声明适用。