一份有效的编程智能体任务说明,本质上是一份小型执行契约:它明确最终结果,把智能体锚定在真实系统中,保护不能越过的边界,并规定什么证据才算完成。提示词写得很长并不等于任务清楚;只有结果、边界和验收都能被复述,产出才可能真正留下来。

先写结果,不要先写实现

先用一句话描述任务结束后,用户能做成什么。例如,“用户重新打开项目后,能从原步骤继续,并看到上次的完成证据”,就比“新增一个恢复服务”更有效。前者保护用户结果,后者过早替智能体选定技术方案。

再补一句为什么这件事重要。智能体遇到小分歧时,才有依据判断什么该保留、什么不该扩张。

用当前事实锚定任务

只给最小而可靠的事实入口:

  • 当前行为由哪个文件、页面或命令承载;
  • 哪条测试、日志或错误能稳定暴露问题;
  • 哪项产品约束不能改变;
  • 工作区是否存在与本任务无关的改动。

不要把整个仓库塞进提示词。Anthropic 的上下文工程指南强调高信号上下文,OpenAI 的 harness engineering 实践也说明:当意图、规则和反馈在仓库里清晰可见时,智能体更容易持续推进。

明确不能改变的边界

把产品边界、允许修改的范围、必须保留的数据和需要额外批准的动作写清楚。如果删除、部署、发消息或写入外部系统不在授权范围内,就直接说明。

边界不是让智能体畏手畏脚,而是让它能在已授权空间内果断行动。

把验收写成可重复的证据

不要只写“做稳一点”。一份可验收的任务至少应包含:

  • 用户最终能看到或完成的行为;
  • 最窄的自动化回归测试;
  • 涉及模板时,对最终生成物或渲染结果的检查;
  • 不允许出现的回归;
  • 交付时必须报告的命令与结果。

GitHub 的仓库自定义指令文档适合承载长期规则。只属于本次任务的成功标准应留在任务里,避免全局规则越来越含糊。

给出清晰的权限范围

说明智能体是只能调查,还是可以修改、提交、部署或写入外部系统。技术目标相同的“修复”和“发布”,权限完全不同。

高不确定性任务可以要求先取证再修改;目标明确且动作可恢复的任务,则应一次授予完成闭环所需的权限,避免在常规步骤上反复停顿。

要求可继续的交接

任务结束时至少回答三件事:改了什么、验证了什么、还剩什么风险。若工作会跨会话继续,还要写明下一步动作和证据位置。可结合编程智能体交接清单使用。

SoloMap 可以把任务说明留在项目里,而不是让它消失在一次聊天中。路线图步骤或 Solo 任务可以同时保存目标、约束与完成证据,并与本地项目记忆相连。智能体仍然需要清晰指令,但下一次运行不必从散落的对话里重建任务。更多方法见 SoloMap 方法论与编程智能体上下文工程指南。

可直接复用的任务说明结构

  • 最终结果: 完成后,用户必须能做成什么?
  • 当前证据: 哪些文件、日志、页面或测试反映真实现状?
  • 边界: 哪些内容不能改,哪些动作未获授权?
  • 验收: 哪些可重复检查能证明结果成立?
  • 权限: 可以调查、修改、提交、部署,还是写入外部系统?
  • 交接: 必须留下哪些事实、产物和剩余风险?

某一项暂时答不出来并不可怕。先解决这个歧义,通常比继续堆提示词更有价值。

常见问题

编程智能体任务说明应该写多长?

写到足以消除会影响结果的歧义即可。多数单一任务一页就够;稳定的仓库规则应通过链接引用,不必反复粘贴。

一定要提供详细技术方案吗?

不一定。应先写结果、约束和证据。只有当技术路径本身就是已经确认的要求时,才把它作为硬约束。

最常见的错误是什么?

只描述动作,不描述完成。“重构模块”只是活动;“用户能恢复状态,并通过这些检查证明”才是可验收结果。