Skip to main content
Huoban 编排的是会影响代码、文件、网络、凭据、发布动作和成本的 AI 能力。 因此信任模型必须从第一版写入标准。即使签名、provenance、trust graph 等机制后续实现,方向也不能后补。

基本原则

  1. 外部 Skill / Adapter 默认不可信。
  2. Trust 不是单个字段,而是 source、level、signatures、policyRefs、sandbox、review 的组合。
  3. declared side effects(sideEffects.declared)是声明,不等于验证。
  4. observedSideEffects 是审计材料,不等于预防机制。
  5. Policy 声明 allow / deny / requireApproval;实现依据这些规则决定是否继续、拒绝或创建 Checkpoint。
  6. Checkpoint 是人工信任边界。
  7. Sandbox 是执行边界。
  8. Preflight 的可用性检查不等于来源可信,也不等于获得行为授权。

Trust 的组成

level 不应单独决定安全。它只是综合状态的摘要。

与 Requirement 和 Preflight 的边界

三者回答不同问题: live Preflight 能发现某个 MCP tool,只记录该次检查时端点可达且公开该名称;它不证明 tool 来源可信、响应安全或副作用获准。当前 reference Preflight 只解析 Trust 与 Policy 引用,不评估 Trust level、签名、sandbox 或 Policy 规则。 同样,PreflightReady=True 不能替代 Policy、Trust evaluator 或 Checkpoint。实现必须把机械就绪与治理授权分开。

Side Effects

Huoban 区分可能副作用和实际副作用。

declared side effects

由 Skill 或 Adapter 声明:
用于计划、审批和 policy 判断。

observedSideEffects

由 Run 记录:
用于审计、复盘和异常检测。 如果 observed 超出 declared,应生成:

标准副作用词表

第一版可包含:
  • readFile
  • writeFile
  • deleteFile
  • executeCommand
  • modifyGitIndex
  • modifyGitHistory
  • networkAccess
  • sendMessage
  • publishRemote
  • spendMoney
  • accessSecret
  • installDependency
  • changePermission
无法判断或未声明的副作用不属于 side effect enum,应由 Policy.spec.defaults.unknownSideEffect 保守处理。

Policy

Policy 是印坊规矩。 它不描述项目上下文,而是定义行为边界。
Policy 应以 side effect 和 capability 为中心,而不是以具体命令为中心。

Checkpoint

Checkpoint 是高风险动作前的人工或规则确认。 常见触发条件:
  • Policy 要求审批。
  • Adapter 未被信任。
  • 副作用无法判断或未声明。
  • Eval 失败。
  • Profile 合并冲突。
  • Run 即将发布远程内容。
Checkpoint 允许的动作:
  • approve
  • requestChanges
  • reject

Sandbox

Sandbox 是执行隔离边界。 Huoban 标准不需要第一版规定某个具体沙箱实现,但必须让 runtime 声明自己是否提供:
  • 文件系统隔离。
  • 网络隔离。
  • 环境变量过滤。
  • Secret 访问限制。
  • Git 写入限制。
  • 外部命令限制。

默认信任规则

推荐默认规则:
  • 本地用户手写对象:reviewed,但仍受 Policy 约束。
  • 外部 SKILL.md 导入:unknown level,除非有 review。
  • 外部 registry 来源:unknown level,除非有签名和 review。
  • 副作用无法判断或未声明:由 Policy.spec.defaults.unknownSideEffect 处理,推荐 require approval。
  • 涉及 secret、remote publish、money、git history:默认 require approval 或 deny。

不做什么

v1alpha1 不实现完整:
  • hosted trust graph
  • package signing
  • provenance verification
  • SBOM-like metadata
  • public registry trust scoring
但文档必须先定义这些方向,避免生态先扩散、后补安全。