2. Agent能力边界的核心要素

定义 Agent 能力边界,本质上是回答四个问题:Agent 接收什么?输出什么?什么情况下启动?只能在什么范围内运行? 这四要素——输入范围、输出范围、触发条件、约束条件——构成了能力边界的最小完备集。缺少任意一项,PRD 中的边界描述都会出现歧义,导致开发实现与业务预期偏离。

业务问题溯源:某客服 Agent 上线后频繁在非工作时间自动回复客户消息,引发投诉。根源是 PRD 仅写了“接收用户问题并回复”,未定义触发条件(仅限工作时间)和约束条件(非紧急问题次日处理)。四要素不完整,边界模糊。

2.1 用户场景与需求拆解

以智能客服 Agent 为例,通过用户访谈收集到三条典型问题:

  • 场景一:夜间用户发消息咨询订单状态,期望立即得到答案;但客服团队不希望 Agent 在非工作时间操作后台数据。
  • 场景二:用户发送包含表情包的消息,Agent 应忽略图片内容,只处理纯文本。
  • 场景三:用户要求转人工时,Agent 必须无条件停止对话并移交。

将这些模糊需求拆解到四要素中:

要素拆解内容常见边界模糊问题
输入范围仅支持纯文本(≤500字符);拒绝图片、语音、链接未明确输入格式,导致 Agent 解析错误
输出范围返回结构化 JSON(含 intent、confidence、reply);限 3 种动作:回答、转人工、挂起输出动作不枚举,开发自行新增“提醒”动作
触发条件仅在工作日 09:00–18:00 且消息来自已认证用户时触发;夜间消息进入队列未定义夜间消息处理策略,Agent 凌晨仍在响应
约束条件不允许修改订单状态;不允许发送外部链接;每次对话最长 10 轮约束条件缺失导致 Agent 执行高危操作
常见陷阱:约束条件往往被误归为“非功能性需求”而写在 PRD 末尾。实际约束条件是能力边界的刚性围墙,必须与输入/输出/触发并列在边界描述中。

2.2 方案表达:如何在 PRD 中描述四要素

推荐使用结构化表格 + 枚举清单组合,避免长篇文字描述。以下为 智能客服 Agent 能力边界 PRD 片段:

## 4. 能力边界定义

### 4.1 输入范围
- 消息类型:仅接受 text/plain,MIME 类型严格校验
- 最大长度:500 UTF-8 字符
- 排除项:图片(image/*)、语音(audio/*)、附件(application/*)、超链接(包含 http/https)
- 来源限制:仅来自通过 OAuth 2.0 认证的微信小程序用户

### 4.2 输出范围
- 响应格式:JSON,结构如下
  {
    "action": "answer" | "transfer" | "hold",
    "payload": {
      "reply": "string" (仅 action=answer 时有效),
      "reason": "string" (仅 action=transfer 时有效)
    }
  }
- 动作枚举:三种,不允许新增
- 响应超时:≤ 2s(从收到消息到返回 JSON)

### 4.3 触发条件
- 时间窗口:工作日 09:00–18:00(CST),节假日不触发
- 用户状态:已认证用户(user.status == 'verified')
- 消息队列:非工作时间消息推入 SQS 延迟队列,延迟至下一个工作日 09:00 消费

### 4.4 约束条件
- 操作禁令:不得调用 order/update、order/refund、user/block 等写接口
- 外链禁令:reply 字段不得包含任何可点击 URL
- 对话轮次限制:单次对话最多 10 轮(用户发送消息算 1 轮),超限后强制 action=transfer
- 速率限制:每个用户 QPS ≤ 1,全局 QPS ≤ 50
方案表达要点:每个要素下使用“明确列表 + 排除列表”双重定义,正面规定允许项,反面规定拒绝项,消除解释空间。

2.3 指标验证与验收标准

要素验证指标验收标准(通过/失败)
输入范围错误输入拒收率≥99.5% 的非法输入被拒绝并返回 400
输出范围输出动作一致性抽查 2000 条日志,非枚举动作出现次数 = 0
触发条件非工作时段响应率≤0.1% 的消息在工作时段外被处理
约束条件高危接口调用次数订单修改接口调用次数 = 0(生产环境)

验收方法:编写自动化测试用例覆盖每个要素的边界值(如输入长度 501 字符、非工作日请求、输出包含非法动作)。每个测试用例必须有独立的可观测性埋点,验收通过后写入回归测试套件。

Agent 能力边界四要素关系图 Agent 能力边界 输入范围 输出范围 触发条件 约束条件 完整边界 = 定义 Agent 能接收什么(输入) + 能输出什么(输出) + 什么时候激活(触发) + 绝对不能做什么(约束) 四者缺一不可,共同构成闭环的边界描述。

2.4 交付物模板

本章交付物为 能力边界附表,需嵌入 PRD 的“功能范围”章节。模板如下:

## 能力边界附表

| 要素       | 允许范围(正面清单)                                   | 拒绝范围(负面清单)                                   | 验收指标                     |
|------------|------------------------------------------------------|-------------------------------------------------------|------------------------------|
| 输入范围   | 文本消息,长度 ≤ 500 字符,UTF-8,纯文本              | 图片、语音、附件、超链接、控制字符、HTML 标签         | 非法输入拒收率 ≥ 99.5%       |
| 输出范围   | JSON 格式,action 字段仅限 answer/transfer/hold       | 其他字段、非 JSON、纯文本响应、包含 eval 表达式       | 动作一致性 100%              |
| 触发条件   | 工作日 09-18、已认证用户、消息队列正常                | 节假日、未认证用户、系统维护期、重试队列消息          | 非工作时段响应率 ≤ 0.1%     |
| 约束条件   | 只读访问用户信息、调用订单查询接口(order/get)       | 写操作(order/update、refund)、外链、超 10 轮对话    | 高危写接口调用次数 = 0       |

**使用说明**:此附表必须与 PRD 正文中的“业务流程图”一一对应。每个正面/拒绝项都应能追溯到某个用户场景或访谈记录中的具体问题。
课程实战提醒:在下一步(第三章)中,我们将用这个四要素框架去分析一个真实的 AI 简历筛选 Agent。建议你现在就拿一个自己正在做的 Agent 产品,尝试填写上表,你会发现边界瞬间变得清晰。