用于透明的智能体与应用控制的开放标准
App Use 是有意为之的可移植。它对另一端坐着哪个智能体、框架或厂商不作任何假设。任何讲 Model Context Protocol(MCP)的智能体都能描述、读取并驱动任何暴露出 App Use 界面的应用。我们公开发布该协议,以便整个行业都能采用。
四层,一条通信链路
每一层各司其职。它们共同让智能体描述并驱动任何参与的应用——无需为每个应用定制集成。
AppSpec
应用发布的一份声明式文档:它的屏幕、每个屏幕上可驱动的元素(文本框、按钮、列表)、命名的多步流程、事件以及操作目录。每个元素都携带用途、验证、支持的操作,以及它是否为机密。
MCP 传输
应用通过带有按实例 bearer 令牌的回环 SSE MCP 服务器托管标准的 app.* 工具。描述、读取一个屏幕、获取或设置一个值、调用一个操作、导航——全都通过一条通信链路完成。
Hub 代理
一个 Hub 将众多正在运行的应用聚合为单一的 MCP 界面:apps.list、apps.launch、apps.stop,以及用于将工具路由到正确实例的 app.call。一个智能体连接驱动每一个应用。
联邦(可选)
跨设备的众多 Hub 组成一个集群。连接到任意一个 Hub 的智能体都能透明地驱动其他每一个 Hub 上的应用——通过局域网上经过相互认证的 TLS,或通过跨互联网的端到端加密中继。
一套小而可预测的工具集
每一个 App Use 应用都响应同一套词汇,因此智能体学一次就能驱动任何应用。每个工具都携带一个风险等级;写入和执行工具会经过同意关卡。
| 工具 | 它做什么 | 风险 |
|---|---|---|
app.describe | 返回 AppSpec | 读取 |
app.read_screen | 对当前屏幕状态进行快照 | 读取 |
app.get_value | 读取一个元素的值 | 读取 |
app.set_value | 设置一个元素的值 | 写入 |
app.invoke | 触发一个按钮/操作 | 执行 |
app.navigate | 移动到另一个屏幕 | 写入 |
apps.list / app.call | Hub:枚举并路由到一个实例 | 代理 |
天生安全
能力作用域
每个令牌都携带三种作用域之一——ReadOnly、ReadWrite 或 Admin——每个工具都由它所需的最小作用域把关。一个只读智能体在物理上无法调用某个操作。
人在回路的同意
在任何写入或执行工具运行之前,一个进程内的同意关卡可以暂停以等待人工决定:一次性允许、在会话期间允许,或屏蔽。操作员能清楚看到哪个操作正在等待处理。
防篡改审计
每次调用都会被追加到一条持久化的 HMAC 哈希链日志中。编辑或删除过去的某个条目都会在下一次校验时使链断裂——因此关于智能体做了什么的记录是可信的。
机密信息脱敏
标记为机密的元素在任何地方都会被脱敏——读取、快照、实时信息流和审计日志——因此密码和密钥永远不会通过界面泄漏。
跨设备加密
局域网上 Hub 到 Hub 的流量通过固定到私有集群 CA 的相互认证 TLS 运行。跨互联网时,Noise-IK 握手对每一帧进行端到端加密——即便是中继也只能看到不透明的字节。
快速吊销
签名的、单调递增的吊销列表会在大约 60 秒内传播到整个集群,因此处理被攻破的凭据只需扳动一个开关。