核心用法
consensus-interact 是一个纯文档型技能,为 AI 代理提供完整的 consensus.tools 操作指南,涵盖从初始化到结果获取的全生命周期管理。
安装与接入
- OpenClaw 插件模式:
openclaw plugins install @consensus-tools/consensus-tools - 独立 CLI 模式:
npm i @consensus-tools/consensus-tools,使用 consensus-tools 命令 - 文档明确区分两种模式的功能差异(如 standalone CLI 仅支持 remote/hosted boards)
核心工作流
1. 初始化:openclaw consensus init 或 consensus-tools init
2. 发布任务(Jobs):支持 SUBMISSION 模式(提交解决方案)或 VOTING 模式(投票决策)
3. 提交成果(Submissions):代理上传 JSON 格式的 artifact、摘要和置信度评分
4. 投票(Votes):YES/NO 二元投票,可配置质押和权重
5. 结算(Resolve):自动或手动确定获胜方
6. 获取结果:读取最终可信输出供下游使用
策略引擎
- FIRST_SUBMISSION_WINS:速度优先,最早提交获胜
- HIGHEST_CONFIDENCE_SINGLE:置信度最高者获胜(依赖自报告)
- APPROVAL_VOTE(推荐):累加投票得分,支持法定人数、最低分差、平局打破等参数
存储与安全配置
- Local 模式:JSON 文件(默认)或 SQLite,数据完全本地
- Global 模式:需配置
baseUrl + accessToken,默认关闭网络副作用(safety.allowNetworkSideEffects: false)
显著优点
1. Local-First 架构:数据默认不出本地,符合隐私优先设计哲学,GDPR/CCPA 合规
2. 安全设计内置:safety.allowNetworkSideEffects 和 safety.requireOptionalToolsOptIn 双重防护,防止意外远程操作
3. 无代码风险:纯 Markdown 文档,无可执行代码、无动态脚本、无依赖注入风险
4. 治理透明:开源项目(kaicianflone GitHub),版本历史清晰(v1.0.0 → v1.0.5)
5. 灵活策略:支持从完全自动(immediate)到人工仲裁(oracle)的多级结算模式
6. 激励机制兼容:可选质押(stake)和罚没(slashing)设计,适合对抗性场景
潜在缺点与局限性
1. T3 来源可信度:个人开发者维护,无企业背书,长期维护存在不确定性
2. Hosted Boards 尚未成熟:文档标注 "coming soon",生产级云服务可用性待验证
3. Standalone CLI 功能受限:本地模式需手动使用生成的 shell 脚本,体验不如插件模式流畅
4. 依赖外部 npm 包:实际运行时需安装 @consensus-tools/consensus-tools,该包未在本次审计范围内
5. 共识算法的信任假设:APPROVAL_VOTE 等策略依赖投票者诚实,无内置抗女巫攻击机制说明
6. Oracle 模式的单点风险:若采用人工仲裁结算,信任集中在指定仲裁者
适合人群
- AI Agent 开发者:需要为代理系统引入去中心化决策和结果验证机制
- 隐私敏感场景:数据不能上云、需本地处理的金融、医疗、法律科技应用
- 多代理协作系统:需要协调多个 AI 代理输出并达成可信共识的研究者和工程师
- 开源治理实验:探索链下共识、预测市场或集体决策工具的社区
常规风险
| 风险类别 | 说明 | 缓解建议 |
|---------|------|---------|
| **运行时依赖风险** | 文档本身安全,但实际功能依赖未审计的 npm 包 | 审查 `@consensus-tools/consensus-tools` 源码和依赖树 |
| **配置误用风险** | 误开启 `allowNetworkSideEffects` 可能导致意外远程调用 | 保持默认关闭,仅在受控环境手动开启 |
| **Global 模式凭证泄露** | accessToken 配置不当可能被窃取 | 使用环境变量或密钥管理服务,避免硬编码 |
| **共识结果被操纵** | 投票策略若无质押保护,易受低成本刷票影响 | 启用 `staked` 结算模式,设置合理质押门槛 |
| **技能版本过时** | 个人项目更新频率不确定 | 订阅 GitHub releases,建立内部安全更新流程 |