范围与术语
本规范定义 Pling Agent Surface 版本 pling.surface/0.1 的可观察行为。它面向需要实现页面能力面、外部 Agent 客户端或传输适配器的开发者。当前版本是公开草案,不是经认证的行业标准。
规范语言
本文使用“必须”“不得”“应该”“可以”描述不同强度的要求:
- 必须:不符合即不满足本版本的一致性。
- 不得:实现不得产生该行为。
- 应该:除非有明确且可审计的理由,否则应遵循。
- 可以:允许的可选行为。
线协议中的字段名、方法名和错误码区分大小写。示例中的业务名称仅是示意,不构成命名要求。
范围
本规范覆盖:
- 页面如何描述对外部调用方可见的业务能力;
- 调用方如何取得有界上下文并请求执行一项能力;
- 会话、暴露范围、确认、限流、防重放与审计在协议边界上的含义;
- 成功、业务失败与协议失败的区分;
- 传输无关的包络,以及实现一致性的最低要求。
0.1 只定义 describe 与 invoke。连接建立、用户登录、凭证签发、传输发现和页面卸载不属于线协议。
非目标
本规范不定义通用浏览器自动化。它不提供点击任意选择器、执行脚本、读取原始 DOM、发起任意 HTTP 请求或绕过页面权限的接口。
它也不取代业务后端授权。能力被列出,或协议调用成功,都不证明用户有权完成该业务;最终授权必须由应用后端和现有业务规则决定。
术语
| 术语 | 含义 |
|---|---|
| 应用(application) | 提供能力面的 Web 应用或站点 |
| 页面(page) | 当前被投影的业务界面 |
| 主机(host) | 持有页面会话、验证调用方并承载传输的受信任代码 |
| 能力(capability) | 有稳定 id、说明、效果与可选输入 schema 的业务操作 |
| 能力面(surface) | 一个应用在当前会话中对外暴露的能力与上下文集合 |
| 描述(description) | describe 返回的能力清单与有界上下文 |
| 执行器(executor) | 应用现有的动作执行路径,负责参数校验、可用性、确认和结果验证 |
| 会话(session) | 经传输层或后端验证的调用方、用户、作用域与有效期绑定 |
| 委托(delegation) | 用户把有限能力授权给特定 Agent 与会话的过程 |
| 记录(record) | 可被稳定引用的一条业务对象视图,不是 DOM 节点 |
| 区域(region) | 页面中有业务含义的界面分区 |
| 证据(evidence) | 动作执行后的变化、结果或结构化失败,不含原始凭证 |
| 一致性(conformance) | 实现满足本版本可观察要求的程度 |
与 MCP 的关系
MCP 规定工具如何出现在 Agent runtime 中,可以作为本规范的传输与工具呈现方式。它不定义页面能力的业务语义、上下文边界或审批事实。一个 MCP facade 可以转发 describe 与 invoke,但仍必须遵守本规范。
实现者必须能回答的问题
- 当前协议版本是什么;
- 哪些能力对本次会话可见;
- 每项能力的输入、风险、确认与人工接力要求;
- 当前上下文的记录窗口是否被截断;
- 一次调用是协议失败、业务失败还是已经完成;
- 调用使用了哪个用户、Agent 与会话绑定;
- 哪些信息绝不能进入 Agent 上下文或日志。

