Agent 时代的提示工程核心原则 —— 从 Anthropic / OpenAI 的官方实践中找到的支撑
这份文档回应团队最近的讨论:为什么"回答要简洁清晰"不是一个好的提示,而"考虑人类的阅读疲劳,有节奏和结构化推进你的回复"才是。答案是 —— 这不是我们的发明,是 Anthropic、OpenAI 这些做 agent 的团队反复印证的设计原则。本文件用这些团队的官方文档、博客、工具说明做证据,证明这条原则在 Agent 时代是工业级共识。
Tim 在讨论里给出的对比:
差的提示给出的是结果态——一个形容词、一个状态描述;好提示给出的是目标 + 原理 + 路径提示——你想达成什么、为什么达成、如何达成。
Tim 的总结:「需要学会把结果翻译成目标的能力。」 这句话本身比原则更重要——它是这条原则的元能力。没有它,你只能照搬别人给的目标;有了它,你能持续地把"要 X"翻译成"为什么 X / 如何 X / 什么算 X 达成了"。
这条原则不是我们的偏好——是 Anthropic、OpenAI 在官方文档、agent 设计指南、提示工程规范里反复出现的共识。下面用他们自己的原话来证。
来自 Trustworthy Agents in Practice 的核心定义:
关键词:"what users want" vs "fixed script"。前者是描述目标,后者是描述结果/路径。Anthropic 把"目标驱动 / 路径固定"作为 Agent 与非 Agent 的根本分界线。
Claude Code 官方文档对 subagent 的 prompt 设计给出明确指南:
官方给的对比例子(这跟 Tim 的对比是完全同构的):
官方还强调 Subagent 的 description 字段必须写成 "when to use",不能写成 "what it is":
Claude 4 时代的官方 prompt 工程指南原话:
OpenAI 在 2024 年发布的官方 agent 构建指南,把 Instructions(指令)作为 Agent 的三大基石之一(Model / Tools / Instructions),并明确建议:
工具定义也是同一逻辑——name 是 action-oriented,description 解释何时调用:
OpenAI 官方 prompt engineering guide 的第一条建议:
这一条直接对应 Tim 的对比:「不要做 X」 →「要做 Y,因为 Z」。
把上面的证据放在一起看,所有模型团队都在用同一套底层设计语言:
| 维度 | 描述目标 | 描述结果 |
|---|---|---|
| Goal | "what users want" | 形容词、状态描述 |
| Subagent | Goal delegation | Step delegation |
| Tool description | when to use | what it is |
| Instructions | do / use when | don't / avoid |
| Reasoning | explain why | no rationale |
五家团队、五种语言,落到的是同一张表。这就是为什么这条原则值得团队同学内化——不是品味之争,是工程共识。
goal / why / when 三段,不只是 instruction。description 字段写"何时调用",不写"是什么"。