Skip to content

Claude Code 输出样式

输出样式(Output Style)让你可以定制 Claude Code 的交互风格和响应方式,使其适配软件开发之外的更多使用场景,同时保留运行本地脚本、读写文件、跟踪待办事项等核心功能。

其本质是通过修改系统提示(System Prompt),改变 Claude Code 的交互逻辑和响应风格。


内置输出样式

Claude Code 提供 3 种开箱即用的输出样式:

样式名称适用场景核心特点
默认样式(default)日常软件工程任务专注高效完成编码、调试、重构等工作,回复简洁直接
解释性样式(explanatory)边做边学场景在完成任务的同时讲解实现思路、设计模式等知识点,适合想深入理解代码的开发者
学习样式(learning)主动实践式学习与你协作完成任务,会在关键位置添加 TODO(human) 标记,引导你亲手实现核心代码片段,而不是直接给出答案

工作原理

切换输出样式时,Claude Code 会按以下规则调整系统提示:

  1. 所有样式都会移除默认的"简洁回复、高效输出"等约束指令
  2. 自定义样式默认会剔除"用测试验证代码"等编码相关指令(如需保留,可在样式文件中开启 keep-coding-instructions: true
  3. 每种样式会在系统提示末尾追加自定义规则,覆盖默认行为
  4. 对话过程中会触发合规检查,确保 Claude 始终遵守当前样式的指令

切换输出样式

切换样式有两种方式,配置保存在项目目录的 .claude/settings.local.json 文件中,仅对当前项目生效

方式一:菜单选择——输入命令后,在交互菜单中选择目标样式:

bash
/output-style

方式二:直接指定——在命令后直接加上样式名称,一步到位:

bash
/output-style explanatory
bash
/output-style learning
bash
/output-style default

除了使用命令切换,也可以直接编辑 .claude/settings.local.json(项目级)或 ~/.claude/settings.json(全局级)文件,修改 outputStyle 字段的值来切换样式。


创建自定义输出样式

如果内置样式不满足需求,可以通过 Markdown 文件定义专属样式。

1、文件保存位置

级别保存路径作用范围
用户级别~/.claude/output-styles/当前用户的所有项目均可使用
项目级别.claude/output-styles/(项目根目录下)仅当前项目可用,可提交到 git 与团队共享

2、文件格式

自定义样式文件由两部分组成:顶部的 YAML frontmatter(元数据配置)和下方的 Markdown 正文(具体指令内容)。

实例

bash
---

name: data-analyst               # 样式名称,显示在 /output-style 菜单中(未填则使用文件名)

description: 专注将复杂数据转化为可视化报告和分析结论

                                 # 样式描述,显示在菜单的说明文字中(可选)

keep-coding-instructions: false  # 是否保留默认编码相关指令

                                 # false(默认):剔除编码指令,适合非开发场景

                                 # true:保留编码指令,同时叠加自定义规则

---

# 角色定位

你是一个专业的数据分析助手,擅长使用 Python 处理各类结构化数据,

并将复杂数据转化为简洁易懂的可视化报告。

## 响应规则

1. 所有分析必须包含「结论 + 数据支撑 + 优化建议」三部分

2. 生成代码时必须附带详细注释,优先使用 Pandas Matplotlib

3. 避免专业术语堆砌,用通俗语言解释复杂概念

## 格式要求

1. 结论部分加粗显示

2. 代码块使用 ```python 标签包裹

3. 建议部分使用有序列表呈现

## 特殊场景

1. 遇到缺失数据时,主动提示用户补充关键信息,而非直接报错

2. 生成可视化图表时,默认使用中文标签和浅色主题

3、frontmatter 参数说明

参数名是否必填说明默认值
name样式名称,显示在 /output-style 菜单中。未填则使用文件名(不含 .md 后缀)文件名
description样式功能的简要描述,显示在菜单的说明文字中,帮助区分多个自定义样式
keep-coding-instructions是否保留默认系统提示中的编码相关指令。设为 true 时,自定义指令会叠加在默认编码指令之上false

4、使用步骤

  1. 按上述格式创建 .md 文件(例如 data-analyst.md
  2. 将文件放到对应目录:
    • 所有项目可用:~/.claude/output-styles/data-analyst.md
    • 仅当前项目可用:.claude/output-styles/data-analyst.md
  3. 在 Claude Code 中执行 /output-style,即可在菜单中看到并选择新创建的样式

与相关功能的区别

输出样式与以下几个功能看起来相似,但作用层面不同:

对比对象核心差异
输出样式 vs CLAUDE.md输出样式会替换默认的软件工程系统提示,从根本上改变 Claude 的工作模式;CLAUDE.md 是以用户消息的形式追加项目背景和约定,不修改系统提示本身
输出样式 vs --append-system-prompt输出样式替换并关闭默认提示;--append-system-prompt 是在默认提示的末尾追加内容,两者均保留原有提示
输出样式 vs 子代理(Subagent)输出样式修改的是主代理的系统提示,影响全局交互风格;子代理是独立的任务处理模块,可以自定义模型、工具和触发条件,处理特定子任务后返回结果
输出样式 vs 自定义斜杠命令输出样式是"存储的系统提示",决定 Claude 整体的交互风格;自定义斜杠命令是"存储的用户提示",用于快速执行某个具体的指令或任务

自定义样式模板

以下是一个通用的自定义输出样式模板,将 [ ] 中的内容替换为你的实际需求,保存为 .md 文件即可使用:

实例

bash
---

name: [样式名称,例如:写作助手]

description: [一句话说明用途,例如:专注技术文档写作,输出结构清晰、表达准确的内容]

keep-coding-instructions: [true  false]

---

# 一、核心定位

[定义 Claude 的角色和专长,例如:

你是一个专业的技术文档写作助手,擅长将复杂的技术概念转化为清晰易懂的文字]

# 二、响应规则

[规定 Claude 的回复逻辑,例如:

1. 每次回复必须包含「核心观点 + 详细说明 + 示例」三部分

2. 使用主动语态,避免被动句式

3. 专业术语首次出现时附带简短解释]

# 三、格式要求

[指定输出的排版格式,例如:

1. 标题使用 ## 二级标题

2. 代码示例使用代码块,并标注语言类型

3. 关键信息用粗体标注]

# 四、特殊场景处理

[针对特定情况的处理规则,例如:

1. 需要举例时,优先使用真实场景而非抽象示例

2. 遇到表述不清的需求时,先确认意图再开始写作]

AI 思考中...

Claude Code 插件

Claude Code 钩子

基于 VitePress 构建,部署于 GitHub Pages