---
title: 信任边界
summary: Holon 如何对来源、信任和优先级分类，让长期 Agent 保持安全。
order: 20
---

# 信任边界

Holon 把信任边界显式保留下来，因为长期 Agent 会从多个面收到输入。操作者
指令、外部 webhook 载荷、文件内容、网页和子 Agent 输出**并不等价**。

## 信任为什么重要

在无头运行时里，一个 Agent 可能同时在：

- 执行来自可信渠道的操作者指令
- 为取证读取不可信的 webhook 载荷
- 解析包含项目约定的 Markdown 文件
- 接收需要验证的子 Agent 输出
- 抓取外部网页做调研

没有显式的信任分类，藏在这些来源里的恶意或意外的“指令”就可能提升权限。

## 来源分类

每个入站事件都带一个 `origin`，记录它的来源：

| 来源 | 说明 | 示例 |
|--------|-------------|---------|
| `operator` | 直接的人类指令 | CLI 提示、操作者入站 API |
| `system` | 运行时生成的事件 | 系统心跳、压缩触发 |
| `task` | 子任务完成 | 命令任务结束、子 Agent 结果 |
| `channel` | 外部集成 | Slack 消息、CI 通知 |
| `webhook` | 第三方回调 | GitHub webhook、部署钩子 |
| `callback` | 由能力密钥放行的外部触发回调 | 外部触发唤醒提示 |
| `timer` | 定时触发 | 类 cron 定时器触发 |

运行时能够区分“操作者让我做 X”和“某个网页提到了 X”。

## 信任级别

| 级别 | 含义 | 谁能设置 |
|-------|---------|---------------|
| `trusted-operator` | 最高权威——具有约束力的指令 | 操作者、运行时配置 |
| `trusted-system` | 运行时内部事件 | Holon 运行时自身 |
| `trusted-integration` | 经过审查的外部服务 | 已配置的传输绑定 |
| `untrusted-external` | 未知或未验证的来源 | webhook、外部内容的默认值 |

信任分类能防止意外的权限提升：

- Markdown 文件不会因为里面有一句话长得像命令，就能覆盖操作者指令
- 为调研抓取的网页不能改变 Agent 的活动工作项
- GitHub issue 评论不能修改运行时配置

## 优先级与信任的区别

优先级和信任是**两回事**：

- **优先级** 控制调度：`interject` > `next` > `normal` > `background`
- **信任** 控制权威：这个事件被允许做什么

低信任的外部事件也可以很紧急（CI 构建失败——立刻唤醒 Agent）。高信任的
操作者备注也可以是例行公事（有空时看一下这个）。

## 委派

子 Agent 和后台任务返回的是**证据**，不是权威：

- 子 Agent 的输出通过受监督的任务句柄到达
- 父 Agent 仍然负责审查和验证
- 子 Agent 的结论不会自动变成父 Agent 的回答

## 实际应用

### 读文件时

文件内容是**不可信上下文**，即使它在工作区里。它可以描述约定、提供事实，
但不能发出运行时指令。

### 抓取网页内容时

`WebFetch` 的结果会被标记为不可信外部内容。Agent 可以把它当作调研证据，
但不能当作命令。

### 收到外部事件时

入站 webhook 载荷带着 `origin: webhook` 和具体来源。Agent 检查载荷里的
证据，但把操作者指令或自身 `AGENTS.md` 指引视为有约束力的。

### 操作者指令

通过可信渠道（`holon run`、操作者入站 API、TUI）进入的操作者输入拥有最高
信任级别。这些指令定义任务范围和验收标准。

## 对文档的启示

本站点是 Markdown 原生的，因此 Agent 可以直接抓取源内容，但这些内容仍然是
文档。它可以解释项目约定，但不能取代已加载的运行时指引、工作区 `AGENTS.md`
文件和操作者指令。

## 另见

- [运行时模型](/zh-CN/concepts/runtime-model.md) — Agent、任务和工作项生命周期
- [通过 HTTP 自动化 Holon](/zh-CN/guides/automate-over-http.md) — 来源和信任在 HTTP API 中如何呈现
- [CLI 参考](/zh-CN/reference/cli.md) — `holon run` 的 `--trust` 标志
