基本原则
- 外部 Skill / Adapter 默认不可信。
- Trust 不是单个字段,而是 source、level、signatures、policyRefs、sandbox、review 的组合。
- declared side effects(
sideEffects.declared)是声明,不等于验证。 observedSideEffects是审计材料,不等于预防机制。- Policy 声明 allow / deny / requireApproval;实现依据这些规则决定是否继续、拒绝或创建 Checkpoint。
- Checkpoint 是人工信任边界。
- Sandbox 是执行边界。
- 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 声明:observedSideEffects
由 Run 记录:标准副作用词表
第一版可包含:readFilewriteFiledeleteFileexecuteCommandmodifyGitIndexmodifyGitHistorynetworkAccesssendMessagepublishRemotespendMoneyaccessSecretinstallDependencychangePermission
Policy.spec.defaults.unknownSideEffect 保守处理。
Policy
Policy 是印坊规矩。 它不描述项目上下文,而是定义行为边界。Checkpoint
Checkpoint 是高风险动作前的人工或规则确认。 常见触发条件:- Policy 要求审批。
- Adapter 未被信任。
- 副作用无法判断或未声明。
- Eval 失败。
- Profile 合并冲突。
- Run 即将发布远程内容。
approverequestChangesreject
Sandbox
Sandbox 是执行隔离边界。 Huoban 标准不需要第一版规定某个具体沙箱实现,但必须让 runtime 声明自己是否提供:- 文件系统隔离。
- 网络隔离。
- 环境变量过滤。
- Secret 访问限制。
- Git 写入限制。
- 外部命令限制。
默认信任规则
推荐默认规则:- 本地用户手写对象:
reviewed,但仍受 Policy 约束。 - 外部
SKILL.md导入:unknownlevel,除非有 review。 - 外部 registry 来源:
unknownlevel,除非有签名和 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