深度 · 小互解读

Claude Fable 5 官方提示指南:十几条可直接抄的调法,从治过度规划到治假进度汇报

Anthropic 官方文档,教你怎么调系统提示词和工程脚手架适配新模型,同套方法也对 Claude Mythos 5 有效
一分钟速览
  • Anthropic 发布了针对 Claude Fable 5 和 Claude Mythos 5 的官方提示工程指南,列出这一代模型相对 Claude Opus 4.8 的行为差异,以及对应该怎么改提示词和工程脚手架
  • 指南给出十几段可以原样粘进系统提示词的指令文本,分别用来治过度规划、拦住自作主张的重构、压缩啰嗦输出、划定该停下问用户的边界
  • 一段专门的审计式指令要求模型汇报进度前对照本轮会话里的工具调用结果核实,Anthropic 表示这在专门设计来诱导编造的测试任务中几乎消除了虚假状态汇报
  • 指南建议给长程异步 agent 加一个 send_to_user 工具,让必须原样展示给用户的内容跳过总结直接送达
  • 文档提醒:如果提示词要求模型把内部推理过程复述进回复文本,可能触发 Fable 5 的 reasoning_extraction 拒答类别,导致请求被自动降级到 Claude Opus 4.8
立场提示:这是 Anthropic 官方发布的产品文档,目的是教你用好自家新模型。文中的能力描述,以及「几乎消除」「单次做对」这类结论,来自厂商内部测试和早期测试者反馈,未经第三方验证。下文只如实转述文档内容和可原样复用的指令原文。
1背景 · 是什么

这篇文档要解决什么问题

Anthropic 近期发布了 Claude Fable 5 与 Claude Mythos 5 的官方提示工程指南,总结了这一代模型相对 Claude Opus 4.8 的行为变化,以及需要跟着调整的提示词和工程脚手架写法。

说白了这是一份调参说明书:新模型更能干,但几个默认行为变了,老提示词和老工程框架照搬会踩坑。文档把每个变化都配上一段可以原样粘进系统提示词的指令,让你照着改。

🎯为什么值得看:它不是泛泛谈技巧,而是给出十几段拿来即用的指令原文,其中一段审计式指令,在官方内部专门设计来诱导模型编造进度的测试任务里,把虚假状态汇报几乎清零。你不用自己反复试错调参。
lowmedhighxhigh
先把效力挡位选对
再伺候它跑长活:分钟级到数小时,每报一步先核对证据。这两件事,就是整份指南的主轴

先看它比上一代强在哪(一笔带过)

文档列了七项相对 Claude Opus 4.8 的提升,这里逐条一句话带过,不展开:

  • 长程自主:没人盯着也能连着干几小时到几天,长复杂任务里不断线、不忘原本要干什么
  • 首次即中:一些过去要反复迭代数天才跑通的系统,早期测试者反馈单次就实现正确(测试者口径)
  • 视觉理解:读密集技术图、网页应用、详细截图更准,输出还更省 token,会用 bash 和裁剪工具处理翻转、模糊、噪点图
  • 企业工作流:财报分析、表格、幻灯片、文档上更守指令、不跑题、产出更专业
  • 代码审查调试:找 bug 的召回率明显高于 Opus 4.8(网络安全领域除外),能跨代码库和历史记录搜索
  • 歧义处理:给一堆多线程的复杂请求、让它自己定下一步,也能接住
  • 子代理协作:更敢并行派发子代理,也更稳地维持和长跑子代理、同级 agent 的异步通信

另外它跑安全分类器,会拦三类请求:攻击性网络安全(做 exploit、恶意软件、攻击工具)、生物与生命科学(实验方法、分子机制),以及提取模型内部的总结思考。良性的相关工作也可能被误触。可以配置服务端或客户端 fallback,让被拒的请求自动回退到 Claude Opus 4.8。

2治过度规划

治过度规划:一句话让它够了就干

任务一模糊、effort 一调高,Fable 5 就容易想太多:把对话里已经确定的事实再推一遍,把它压根不会采纳的方案也罗列一遍,铺垫拖得老长。下面这段指令就是让它有信息就直接动手。

不加指令
  • 反复复述已知事实、把讨论过的决定再拿出来掰
  • 罗列一堆它根本不会走的方案
  • 长篇解释根因,铺垫远多于结论
加了「够了就干」
  • 有足够信息就直接动手
  • 要权衡时给一个推荐,而不是穷举清单
  • 先给结论,思考过程留在 thinking 块里
拦它别过度规划、别复述已知事实、别啰嗦不会采纳的方案
When you have enough information to act, act. Do not re-derive facts already established in the conversation, re-litigate a decision the user has already made, or narrate options you will not pursue in user-facing messages. If you are weighing a choice, give a recommendation, not an exhaustive survey. This does not apply to thinking blocks.

顺带一个工程侧的提醒,和这节配套:长任务能力(long-horizon autonomy)指模型能在没人盯着的情况下连续工作很久,几小时甚至几天不断线。代价是单次请求会变长,在较高 effort 下、任务需要收集上下文加自我验证时,一次请求可能跑几十分钟,自主运行可能延续数小时。迁移前先把客户端超时时间、流式展示、用户侧进度指示都调好,最好把工程框架改成定时异步轮询任务状态,别用阻塞等待硬等它返回。

3效力挡位

效力挡位怎么调,怎么防止它自作主张重构代码

effort(效力挡位)是 Fable 5 上平衡「聪明、慢、贵」的主控开关,分 low、medium、high、xhigh 四档。默认用 high,最吃能力的任务用 xhigh,常规活调 medium 或 low。关键是:这代的低档也常常超过上一代的 xhigh。任务做完了但比需要的慢,就降档。点下面四个挡位看各自定位。

low
最快最省,用来跑常规轻活。想要更快、更接近对话式的互动手感时降到这里,表现依旧不弱,还常常超过上代的 xhigh。
智能
延迟
成本
medium
常规工作的另一档选择。任务能完成但比需要的慢时,从 high 降到这里换速度。
智能
延迟
成本
high(默认)
大多数任务的默认挡。已经能拿出很好的验证行为、复杂推理和最严谨的产出。副作用是常规活上会收集上下文、思考得比任务需要的更多。
智能
延迟
成本
xhigh
留给最吃能力的任务。最聪明也最慢最贵,同时最容易在常规活上过度深思。
智能
延迟
成本
三条相对位置示意,非官方数值,仅表达「越高档越聪明也越慢越贵」的单调关系
打个比方

effort 像相机的对焦模式:平时用 auto 挡就够用,最难拍的那一张才切到手动精细挡。挡位不是越高越好,是越难的活才往上推。

挡位调高有个副作用:Fable 5 会在高 effort 下顺手多干活,主动加功能、做重构、加没必要的校验。想拦住这种「自作主张收拾一遍」,加下面这段:

拦它在高 effort 挡位下自作主张加功能、重构、加没必要的校验
Don't add features, refactor, or introduce abstractions beyond what the task requires. A bug fix doesn't need surrounding cleanup and a one-shot operation usually doesn't need a helper. Don't design for hypothetical future requirements: do the simplest thing that works well. Avoid premature abstraction and half-finished implementations. Don't add error handling, fallbacks, or validation for scenarios that cannot happen. Trust internal code and framework guarantees. Only validate at system boundaries (user input, external APIs). Don't use feature flags or backwards-compatibility shims when you can just change the code.
4 档
effort 分 low / medium / high / xhigh,官方建议大多数任务默认用 high,最吃能力的任务用 xhigh,常规工作可调低
低档 > 上代高档
Fable 5 的低 effort 设置依然表现良好,常常超过上代模型的 xhigh 表现
4输出与暂停

让总结说人话,什么时候才该真正停下问你

这代模型的指令遵循强到,一句话就能带住一大类行为,不用把每种情况都逐条列出来。这节给两段:一段治啰嗦,一段划定什么时候才真的该停下问用户。

不加约束时,Fable 5 容易铺开写:把不会采纳的方案也过一遍、长篇讲根因、写高度结构化的 PR 描述、给每一行代码都配一句「下一行在干嘛」的注释。一段简短的求精指令,效果和逐条列出每种毛病一样好:

让回复先说结论、别用箭头黑话压缩
Lead with the outcome. Your first sentence after finishing should answer "what happened" or "what did you find": the thing the user would ask for if they said "just give me the TLDR." Supporting detail and reasoning come after. Being readable and being concise are different things, and readability matters more.

The way to keep output short is to be selective about what you include (drop details that don't change what the reader would do next), not to compress the writing into fragments, abbreviations, arrow chains like A → B → fails, or jargon.

长流程里的「暂停问用户」也一样,不用穷举每种情况。只有三种情形才真该停:不可逆或有破坏性的操作、真正的范围变化、只有用户才能提供的信息。碰到这三种就问一句然后结束回合,而不是抛下一句承诺就停。

划定什么时候才该真正停下问用户
Pause for the user only when the work genuinely requires them: a destructive or irreversible action, a real scope change, or input that only they can provide. If you hit one of these, ask and end the turn, rather than ending on a promise.
5治假进度 · 核心

治假进度汇报:让它拿证据说话

长程自主跑的时候,模型可能编造进度汇报,比如说某一步已经做完了,其实并没有。官方的解法是让它汇报前先自查:每一条声称,都对照本轮会话里真实的工具调用结果核实,没验证过的必须明说。

少见的带效果验证段落

这是整份文档里为数不多、给出效果数据的地方。Anthropic 表示,在专门设计来诱导模型编造进度的测试任务上,加了这段审计式指令后,编造的状态汇报几乎绝迹。

① 声称:某一步已经完成
② 回到本轮会话,翻出对应的工具调用结果
逐条比对
有证据
写进汇报,直接说清结论,不含糊
没证据
汇报里明确标注:尚未验证
↺ 下一条声称,重复核对
治假进度汇报的审计式指令
Before reporting progress, audit each claim against a tool result from this session. Only report work you can point to evidence for; if something is not yet verified, say so explicitly. Report outcomes faithfully: if tests fail, say so with the output; if a step was skipped, say that; when something is done and verified, state it plainly without hedging.
几乎消除
加入审计式核对指令后,在专门设计来诱导模型编造进度的测试任务中,虚假状态汇报几乎绝迹(Anthropic 内部测试结果)
数天 → 一次做对
早期测试者反馈,部分过去需要数天反复迭代才能跑通的系统,Fable 5 单次就实现正确(测试者报告,非官方基准)
6行动边界

划清边界:分析的时候别自己动手

Fable 5 偶尔会自作主张:主动起草一封没人要的邮件,或者为了保险建一个 git 分支做备份。下面这段指令就是拦这个的,把「该报告」和「该动手」分开。

核心是两条边界。一,用户只是在描述问题、提问、或者在思考,而不是要你改东西时,交付物就是你的评估报告,报告完就停,别没等人开口就先去修。二,要跑一条会改变系统状态的命令(重启、删除、改配置)前,先确认证据真的支持这个具体动作,一个看起来像某个已知故障的信号,可能是别的原因造成的。

划清行动边界,别在只是分析问题时就自己动手
When the user is describing a problem, asking a question, or thinking out loud rather than requesting a change, the deliverable is your assessment. Report your findings and stop. Don't apply a fix until they ask for one. Before running a command that changes system state (restarts, deletes, config edits), check that the evidence actually supports that specific action. A signal that pattern-matches to a known failure may have a different cause.
7子代理 · 记忆

用好并行子代理,搭一个能自己攒经验的记忆系统

Fable 5 比上代更敢并行派发子代理,也更稳地维持和长跑子代理的异步通信。用法就三条:多派、给它讲清楚什么时候该委派、异步收消息别阻塞等每个子代理挨个返回。点下面切换看新旧两种编排方式的区别。

编排者子代理 A⏳ 等它返回子代理 B⏳ 再等子代理 C
串行:每一步都卡在上一个子代理返回上,总耗时是所有子代理相加,最慢的那个拖累全局。
编排者⇉ 同时派子代理 A子代理 B子代理 C↩ 异步收编排者继续干活
并行:一次性把独立子任务全派出去,编排者不阻塞、继续推进,谁完成谁异步汇报。长命子代理跨子任务保留上下文,靠缓存读省时省钱,也不会卡在最慢的那个身上。发现某个子代理跑偏或缺上下文,再介入。
鼓励它多用并行子代理、别阻塞等待
Delegate independent subtasks to subagents and keep working while they run. Intervene if a subagent goes off track or is missing relevant context.

再给它一个能攒经验的记忆系统

Fable 5 在「能记下过往教训、之后能回头引用」时表现尤其好。给它一个能写笔记的地方,一个 Markdown 文件就够。书写规则如下:

搭建记忆系统的书写规则
Store one lesson per file with a one-line summary at the top. Record corrections and confirmed approaches alike, including why they mattered. Don't save what the repo or chat history already records; update an existing note rather than creating a duplicate; delete notes that turn out to be wrong.

如果你想从已有的历史会话冷启动这份记忆,让它回顾过往会话、用子代理提炼主题和教训、存进指定文件:

从历史会话冷启动记忆系统
Reflect on the previous sessions we've had together. Use subagents to identify core themes and lessons, and store them in [X]. Make sure you know to reference [X] for future use.
8防掉线

别让它中途掉线:自主跑的时候不许卡壳求许可

有两个只在很长的会话里才偶尔冒出来的小毛病,文档给了对应兜底。

第一个:聊到后面,它可能打完一句「我这就去跑 X」的表态却不真的发出对应的工具调用,或者明明信息已经够了还停下来问「要不要我……」。给一句「continue」或者「go ahead and do it end to end」就能续上。给自主管线加下面这段系统提醒,从根上防住:

自主管线里防止它中途卡壳求许可的系统提醒
You are operating autonomously. The user is not watching in real time and cannot answer questions mid-task, so asking "Want me to…?" or "Shall I…?" will block the work. For reversible actions that follow from the original request, proceed without asking. Offering follow-ups after the task is done is fine; asking permission after already discussing with the user before doing the work is not. Before ending your turn, check your last paragraph. If it is a plan, an analysis, a question, a list of next steps, or a promise about work you have not done ("I'll…", "let me know when…"), do that work now with tool calls. End your turn only when the task is complete or you are blocked on input only the user can provide.

第二个:在很长的会话里,它偶尔会主动提议开新会话、提出总结后交接、或者自己砍掉一部分工作量。这多半是工程框架把「剩余 token 倒计时」展示给了模型触发的。尽量别把上下文余量的具体数字暴露给它;如果框架非展示不可,加一句安慰话术:

防止它因为看到上下文倒计时就主动喊停的安慰话术
You have ample context remaining. Do not stop, summarize, or suggest a new session on account of context limits. Continue the work.
9通道与落地

讲清原因,加一个必须给用户看的专属通道,最后落地清单

最后两个提升加一个专属通道,再收一份落地改法清单。

请求里带上「为什么」

Fable 5 明白请求背后的意图时表现更好:有了上下文,它能把任务接到相关信息上,而不是自己瞎猜意图。尤其是要拉多条工作流的长跑 agent,把「你为什么问」讲给它听:

给请求加上为什么问的模板
I'm working on [the larger task] for [who it's for]. They need [what the output enables]. With that in mind: [request].

长会话收尾时讲人话

在大量工具调用、上下文很重的 agent 对话里,Fable 5 容易写出难读的文字:密集的箭头黑话、堆到深处的实现细节、引用用户根本没看到的内部思考、过于技术化的措辞。加一段沟通风格补充,让它在最终总结时切回人话,别延续工作时的简写:

让长会话收尾时讲人话,别延续工作时的黑话
Terse shorthand is fine between tool calls (that's you thinking out loud, and brevity there is good). Your final summary is different: it's for a reader who didn't see any of that.

If you've been working for a while without the user watching (overnight, across many tool calls, since they last spoke), your final message is their first look at any of it. Write it as a re-grounding, not a continuation of your working thread: the outcome first, then the one or two things you need from them, each explained as if new. The vocabulary you built up while working is yours, not theirs; leave it behind unless you re-introduce it.

When you write the summary at the end, drop the working shorthand. Write complete sentences. Spell out terms. Don't use arrow chains, hyphen-stacked compounds, or labels you made up earlier. When you mention files, commits, flags, or other identifiers, give each one its own plain-language clause. Open with the outcome: one sentence on what happened or what you found. Then the supporting detail. If you have to choose between short and clear, choose clear.

加一个必须给用户看的专属通道:send-to-user 工具

跑长程异步 agent 时,给它一个办法:把用户必须原样看到的内容,在回合还没结束时就推出去。可以是一份交付物(生成的代码片段、起草的消息)、一条带具体数字的进度更新,或者对用户中途提问的直接回答。工具的输入就是要显示的消息,模型一调用,你就把输入直接渲染到界面上,工具结果回一个简单确认即可。关键是:工具输入永远不会被总结,内容原样到达。

打个比方

send-to-user 工具,像开会时直接递一张纸条给老板,而不是等散会了再转述纸条上写了什么。内容原封不动、当场就到,不经过任何压缩。

普通文本回复
写在回合里内容混在模型的叙述文本里
回合收尾可能被系统总结、压缩
用户看到的是摘要
send_to_user 工具
作为工具输入内容装进工具调用
中途送达工具输入不被总结,回合不结束
用户看到原文,一字不差
send_to_user 工具的 JSON 定义
{
  "name": "send_to_user",
  "description": "Display a message directly to the user. Use this for progress updates, partial results, or content the user must see exactly as written before the task finishes.",
  "input_schema": {
    "type": "object",
    "properties": {
      "message": {
        "type": "string",
        "description": "The content to display to the user."
      }
    },
    "required": ["message"]
  }
}

光定义工具不够:不在系统提示里加一段调用指令,Fable 5 很少主动调它。配一段引导语,并且只让它走用户可见内容,别把叙述和内部推理也塞进这个通道:

配合 send_to_user 工具的调用指令
Between tool calls, when you have content the user must read verbatim (a partial deliverable, a direct answer to their question), call the send_to_user tool with that content. Use send_to_user only for user-facing content, not for narration or reasoning.

落地清单

文档最后给了一份推荐的脚手架改法,照着做即可:

  1. 定难度上限更高的任务。挑一个比你会派给上代模型还难的任务,让 Fable 5 自己 scope、提澄清问题、执行。只拿简单活测它,会低估它的能力上限。
  2. 长跑里显式安排自我核查。独立、fresh-context 的验证子代理,往往比自我批评更靠谱。给长跑任务加下面这段:
    长跑任务里让它定期自我核查的指令模板
    Establish a method for checking your own work at an interval of [X] as you build. Run this every [X interval], verifying your work with subagents against the specification.
  3. 重审旧 skill 和 prompt。为上代模型写的 skill 往往对 Fable 5 太事无巨细,反而会拉低产出质量。那些逐条列规则的老写法,很多可以直接删掉再看默认效果,Fable 5 也能边干边根据任务更新 skill。
  4. 别让它复述内心思考。把内部推理原样讲进回复文本,是这代模型的一条红线。 ⚠ 告诉模型回显、转录、把内部推理当回复文本讲出来的提示词、skill 或 harness 指令,可能触发 Fable 5 的 reasoning_extraction 拒答类别,导致请求被自动降级回 Claude Opus 4.8。迁移时把旧 skill 和系统提示里「反思一下」「展示你的思考」这类指令排查掉。要看推理可见性,改读 adaptive thinking 的结构化 thinking 块,长跑时用 send-to-user 工具露出进度。
  5. 装 send-to-user 工具。给长程异步 agent 配一个客户端工具,把消息原样送达用户、又不结束回合。
In Anthropic's testing, this nearly eliminated fabricated status reports even on tasks designed to elicit them.Prompting Claude Fable 5,Anthropic 官方文档
来源:Anthropic 官方文档《Prompting Claude Fable 5》(platform.claude.com)。本文为该厂商官方文档的中文可视化解读;文中的能力表述、内部测试结果与早期测试者反馈均为 Anthropic 自述口径,未经第三方独立验证。所有代码框内的英文指令均为文档原文,一字未改,可原样复用。同套方法对 Claude Mythos 5 同样适用。