SpyBara
Go Premium

output-styles.md 2026-05-02 18:14 UTC to 2026-05-04 22:58 UTC

This page contains 90 additions and 0 deletions.

2026
Mon 4 22:58 Thu 7 22:59 Tue 12 22:57 Wed 13 23:01

输出样式

将 Claude Code 适配用于软件工程之外的用途

输出样式允许你将 Claude Code 用作任何类型的代理,同时保留其核心功能,例如运行本地脚本、读取/写入文件和跟踪 TODO。

内置输出样式

Claude Code 的默认输出样式是现有的系统提示,旨在帮助你高效地完成软件工程任务。

还有两种额外的内置输出样式,专注于教你了解代码库和 Claude 的运作方式:

  • Explanatory:在帮助你完成软件工程任务的同时提供教育性的"Insights"。帮助你理解实现选择和代码库模式。

  • Learning:协作式的边学边做模式,Claude 不仅会在编码时分享"Insights",还会要求你自己贡献小的、战略性的代码片段。Claude Code 将在你的代码中添加 TODO(human) 标记供你实现。

输出样式如何工作

输出样式直接修改 Claude Code 的系统提示。

  • 自定义输出样式排除了编码说明(例如用测试验证代码),除非 keep-coding-instructions 为 true。
  • 所有输出样式都在系统提示的末尾添加了自己的自定义说明。
  • 所有输出样式都会在对话期间触发提醒,让 Claude 遵守输出样式说明。

令牌使用情况取决于样式。向系统提示添加说明会增加输入令牌,尽管 prompt caching 在会话中的第一个请求之后会降低这个成本。内置的 Explanatory 和 Learning 样式在设计上比 Default 产生更长的响应,这会增加输出令牌。对于自定义样式,输出令牌使用情况取决于你的说明告诉 Claude 生成什么。

更改你的输出样式

运行 /config 并选择输出样式从菜单中选择一种样式。你的选择会保存到本地项目级别的 .claude/settings.local.json。

要在不使用菜单的情况下设置样式,直接编辑设置文件中的 outputStyle 字段:

{
  "outputStyle": "Explanatory"
}

由于输出样式是在会话开始时在系统提示中设置的,更改将在你下次启动新会话时生效。这使系统提示在整个对话中保持稳定,以便 prompt caching 可以降低延迟和成本。

创建自定义输出样式

自定义输出样式是包含 frontmatter 和将添加到系统提示的文本的 Markdown 文件:

---
name: My Custom Style
description:
  A brief description of what this style does, to be displayed to the user
---

# Custom Style Instructions

You are an interactive CLI tool that helps users with software engineering
tasks. [Your custom instructions here...]

## Specific Behaviors

[Define how the assistant should behave in this style...]

你可以在用户级别(~/.claude/output-styles)或项目级别(.claude/output-styles)保存这些文件。

Frontmatter

输出样式文件支持 frontmatter 来指定元数据:

Frontmatter 目的 默认值
name 输出样式的名称,如果不是文件名 从文件名继承
description 输出样式的描述,在 /config 选择器中显示 无
keep-coding-instructions 是否保留 Claude Code 系统提示中与编码相关的部分。 false

与相关功能的比较

输出样式 vs. CLAUDE.md vs. --append-system-prompt

输出样式完全"关闭"了 Claude Code 默认系统提示中特定于软件工程的部分。CLAUDE.md 和 --append-system-prompt 都不会编辑 Claude Code 的默认系统提示。CLAUDE.md 将内容作为用户消息添加到 Claude Code 默认系统提示_之后_。--append-system-prompt 将内容附加到系统提示。

输出样式 vs. Agents

输出样式直接影响主代理循环,仅影响系统提示。Agents 被调用来处理特定任务,可以包括额外的设置,如要使用的模型、可用的工具以及有关何时使用代理的一些上下文。

输出样式 vs. Skills

输出样式修改 Claude 的响应方式(格式、语气、结构),一旦选择就始终处于活动状态。Skills 是特定于任务的提示,你可以使用 /skill-name 调用或 Claude 在相关时自动加载。使用输出样式来实现一致的格式化偏好;使用 skills 来实现可重用的工作流和任务。