- 文档
- 提示工程
- 人工智能
【免费下载链接】claude-code-system-prompts
All parts of Claude Code's system prompt, 27 builtin tool descriptions, sub agent prompts (Plan/Explore/Task), utility prompts (CLAUDE.md, compact, statusline, magic docs, WebFetch, Bash cmd, security review, agent creation). Updated for each Claude Code version.
导读:Focus Mode(聚焦模式)是 Claude Code 中一类特殊的系统提示注入场景,它改变的是 Agent 与用户之间的可见性边界——在该模式下,用户每轮只能看到 Agent 的最终文本消息,工具调用、工具结果与中途输出全部不可见。本文基于仓库中 短形式聚焦模式提示 的完整原文展开,并结合 长形式版本 及相邻通信类提示(outcome-first、writing-for-the-user、concise)做源码级对照,帮助读者理解聚焦模式的规则设计、对 Agent 行为的具体约束,以及如何在最终消息中构建"自足、面向结果"的交付内容。
一、什么是 Focus Mode:文档定位与一句话定义
在 Claude Code 的多段式系统提示体系中,Focus mode提示属于按环境条件注入的一类"通知型"提示(仓库 README 中说明,Claude Code 的系统提示并非单一字符串,而是"根据环境与各种配置条件性注入的大段内容")。聚焦模式提示正是其中一个典型例子:当用户在 UI 层开启了聚焦模式后,该提示会被注入到会话上下文中,用以改写 Agent 的输出策略。
仓库中以两个文件承载该提示,分别是:
- 短形式:system-prompt-focus-mode-short-form.md
- 长形式:system-prompt-focus-mode-long-form.md
其中短形式文件的 front matter 声明为:
| 字段 | 值 |
|---|---|
| name | System Prompt: Focus mode (short form) |
| description | Focus-mode notice (short form): only each response's final text reaches the user |
| ccVersion | 2.1.173 |
ccVersion字段是仓库对各提示版本做的追踪标记,可与 CHANGELOG.md 对照查看不同 Claude Code 版本间该提示的演进(仓库 README 说明所有提示均直接从 Claude Code 编译产物中提取,与真实运行时完全一致)。
用文档原文一句话概括其核心定义:
The user has focus mode enabled. In focus mode, the user only sees your final text message in each response.
即:聚焦模式下,用户只看到每一轮回复中的最终文本消息。
二、核心规则逐条拆解:聚焦模式到底改了什么
短形式文档虽短,但给出了五条互相咬合的行为约束。逐条展开如下。
规则 1:最终文本消息是唯一可见通道
They do not see tool calls, tool results, or any text you emit between tool calls.
在聚焦模式下,三类内容对用户不可见:
- 工具调用本身(如
Bash、Read、Write、TodoWrite等工具调用的请求与参数); - 工具调用结果(命令输出、文件内容、错误信息等原始结果);
- 工具调用之间输出的中间文本(Agent 在逐步执行时插入的说明、进度叙述)。
这意味着 Agent 的"过程"被完全屏蔽,用户视角下只剩一个"结果窗口"。值得注意的是,这并非简单的 UI 隐藏,而是通过注入系统提示、主动改变 Agent 的写作策略来实现的——Agent 被明确告知这些内容不可见,从而不再为它们投入叙述成本。
规则 2:覆盖此前"工具调用间简短更新"的指导
This overrides earlier guidance about giving short updates between tool calls — skip those updates.
Claude Code 的通用通信指导通常鼓励 Agent 在工具调用之间给出简短的状态更新(例如"先读取配置,然后执行构建"),以便用户在长任务中感知进度。聚焦模式显式覆盖了这条通用规则:既然中间文本根本不会到达用户,继续输出简短更新就是纯粹的浪费,应当直接跳过。
这条"覆盖"关系也体现了 Claude Code 系统提示的优先级设计——条件性注入的提示可以推翻更泛化的基础指导,与仓库中其他提示(如 concise output style 提示 中"本规则与更通用指导冲突时以本规则为准")采用的机制一致。
规则 3:一切用户所需内容都放进最终消息
put everything the user needs to know in your final message.
这是聚焦模式对行为最重要的正向要求。由于中间内容不可见,Agent 必须把"用户需要知道的全部内容"集中到最终消息中。长形式版本把这一要求进一步具体化为最终消息应包含的五类要素:
- what you investigated:你调查了什么;
- what you found:你发现了什么;
- what you changed:你改动了什么;
- decisions you made:你做了哪些决策;
- what's next:下一步是什么。
也就是说,最终消息不是对过程的简单总结,而是一份"完整的回合交付物",需要覆盖调查、结论、变更、决策与后续动作五个维度。
规则 4:不要假设用户看到过此前的进度更新
Do not assume they saw earlier progress updates.
与规则 2、3 一脉相承:因为中途的一切都不可见,Agent 绝不能假设用户"已经知道"前面发生了什么。任何重要的发现、中途冒出的关键信息或方向变化,都必须在最终消息中重新陈述(restate)。这一约束与 outcome-first 通信风格提示 中的要求完全一致:
If something important appeared only mid-turn or in your thinking, restate it in that final message.
即:如果某件重要事情只出现在中途输出或思考过程中,必须在最终消息里复述。
三、短形式与长形式:两个版本的异同
仓库同时保留了短、长两个版本,二者核心事实完全一致(用户只看到最终文本消息),差异在于细节颗粒度:
| 维度 | 短形式(本文主体) | 长形式 |
|---|---|---|
| 仓库路径 | system-prompt-focus-mode-short-form.md | system-prompt-focus-mode-long-form.md |
| 核心声明 | 用户只看到最终文本消息 | 用户只看到最终文本消息 |
| 不可见内容 | 工具调用、工具结果、中间文本 | 工具调用、工具结果、中间文本(表述为 "not tool calls, tool results, or any text you write between tool calls") |
| 覆盖关系 | 明确点名覆盖"工具调用间简短更新"指导 | 同样声明 "don't narrate progress between tool calls" |
| 最终消息要素 | 泛化为"一切用户需要知道的内容" | 明确列出五要素:investigated / found / changed / decisions / next |
| 长度与适用推断 | 更精简,适合上下文预算紧张的注入场景 | 更详尽,强调交付内容的完整性 |
从文件命名与描述看,可以推断:Claude Code 会根据会话/界面上下文在两种形式中选择注入——短形式更贴合"仅需一句通知即可改变行为"的轻量场景,长形式则适用于需要额外明确最终消息构成清单的场景。两种形式都锚定同一个事实:中途输出对用户不可见。
四、聚焦模式与相邻系统提示的协同:最终消息优先的完整体系
聚焦模式提示并非孤立存在,它与仓库中多个"最终消息优先"类提示共同构成 Claude Code 的输出规范体系。理解这一点,才能明白聚焦模式下的最终消息应当如何写作。
4.1 outcome-first:最终消息的"时机与完整性"约束
outcome-first 通信风格提示 用条件变量IS_TEXT_OUTPUT_VISIBLE_TO_USER区分两种场景,其中"中间文本不可见"分支给出了两条关键约束:
- 一切用户所需内容必须在回合的最终文本消息中,且该消息之后不得再有工具调用("with no tool calls after it");
- 工具调用之间的文本只保留为简短状态备注(brief status notes)。
这解释了聚焦模式下"最终消息 = 回合终点"的时序要求:最终消息是回合的收束点,所有答案、总结、发现、结论与交付物都必须在其中,且其后不再挂载任何工具调用。
4.2 writing-for-the-user:最终消息的写作规范
writing-for-the-user 提示 开篇即复述了与聚焦模式相同的前提:"用户可能看不到你的工具调用、工具结果以及它们之间的文本,只有最终消息可靠地到达他们,因此它必须为一个没有旁观你工作的读者而自足。"随后给出具体的写作规则,可视为聚焦模式下最终消息的"排版规范":
- 以答案或结果开头;无法验证的事情要首先说明;
- 一句话一个意思,约 20 词,含动词;
- 不使用破折号、括号插入语与箭头(避免读者需要回溯上下文);
- 不引用会话中自创的代号/标签;
- 代码放入围栏代码块,数字放入表格或单独成行,平行内容用列表;
- 500 词以下的消息不设标题;
- 内容讲完即止,不做收尾寒暄。
4.3 concise output style:与聚焦模式互补的"省略策略"
concise output style 提示 定义了用户主动选择"简洁优先"时的输出风格:直接以结果开头、剪掉叙述保留实质、默认从短写起、用户要求细节时完整作答、绝不为简洁牺牲正确性(错误报告、失败测试输出、安全警告等必须保留完整内容)。聚焦模式解决的是"可见性"问题,concise 解决的是"长度"问题,二者可同时生效——在聚焦模式下,最终消息既要自足完整,又要在用户选择简洁风格时做到"删叙述、不删实质"。
五、聚焦模式对 Agent 行为的实际影响:一份可执行的最终消息检查清单
综合上述文档与源码级对照,可以整理出一份聚焦模式下 Agent 构建最终消息的可执行清单(适用于任何希望在 Claude Code 生态中复刻此规范的实现或 prompt 工程实践):
- 确认可见性前提:回合内工具调用、工具结果、中间文本均不可见——不为它们投入叙述。
- 跳过过程旁白:不再在工具调用之间输出"正在执行 X…"之类的进度更新。
- 收束全部交付物:调查内容、发现、变更、决策、下一步动作全部写入最终消息。
- 复述中途关键信息:中途或思考中出现的重大发现,必须在最终消息中重新陈述,不假设用户已知。
- 最终消息即回合终点:最终文本消息之后不再跟任何工具调用。
- 结果先行:首句直接回答"发生了什么 / 找到了什么",支撑细节随后。
- 自足可读:不依赖用户对过程的旁观,不引用自创代号,代码进代码块,数字进表格。
- 按需详略:简单问题直接散文回答,复杂任务才使用标题与列表;用户明确要求完整细节时不得因简洁而省略。
六、在仓库中的位置:如何继续深挖
聚焦模式提示位于仓库system-prompts/目录,属于 Claude Code 数百条系统提示中的条件注入类提示(README 明确说明系统提示"按环境与配置条件性加入")。若想继续研究,可依次查阅:
- 短形式原文与长形式原文(本主题的第一手依据);
- outcome-first 通信风格(最终消息的时机与完整性约束);
- writing-for-the-user(最终消息的写作规范);
- concise output style(简洁输出风格与聚焦模式的组合使用);
- README.md 与 CHANGELOG.md(提示提取机制说明与跨版本演进记录)。
需要说明的是,本文所述规则均以当前仓库实际文件内容为准;仓库中各提示文件标注的ccVersion与 README 中的版本说明一致,均来自对 Claude Code 编译产物的直接提取,可在本地安装的 Claude Code 中对照观察对应行为。
结语:Focus Mode 看似只有寥寥数行,却精准地改变了 Agent 与用户之间最根本的信息通道。它把"过程叙述"的成本清零,把"结果交付"的责任压实到最终消息上——配合 outcome-first 的时机约束、writing-for-the-user 的写作规范与 concise 的省略策略,构成了一套完整的"最终消息优先"通信体系。理解这套规则,既能解释 Claude Code 在聚焦模式下为何"少说话、一次说全",也能为自建 Agent 的输出设计提供直接参考。
- 文档
- 提示工程
- 人工智能
【免费下载链接】claude-code-system-prompts
All parts of Claude Code's system prompt, 27 builtin tool descriptions, sub agent prompts (Plan/Explore/Task), utility prompts (CLAUDE.md, compact, statusline, magic docs, WebFetch, Bash cmd, security review, agent creation). Updated for each Claude Code version.
相关推荐
Claude Code Focus Mode 深度解析:让 Agent 把全部关键信息写进最终消息的输出可见性机制
Claude Code Focus Mode 深度解析:让 Agent 把全部关键信息写进最终消息的输出可见性机制 Focus Mode 是 Claude Co
文档提示工程人工智能Claude Code 最终消息写作规范:让用户只看一条消息也能完整接住你的工作
Claude Code 最终消息写作规范:让用户只看一条消息也能完整接住你的工作 导读 :Claude Code 的会话中,用户通常看不到你的工具调用、中间过程
文档提示工程人工智能Claude Code Router AgentClaw:把 Agent 消息接入 Slack 频道的双 Token 与 Socket Mode 实战
Claude Code Router AgentClaw:把 Agent 消息接入 Slack 频道的双 Token 与 Socket Mode 实战 Agen
后端API网关LLM 网关大模型
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考