Output styles changedoutput-styles
Nearest release: v2.1.294, published under an hour after upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Upstream edited this page at 8 Oct 2026 03:42 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 20 Oct 2026 18:37 UTC.
Upstream edited
Recorded here
Lines+41added
Lines−47removed
From line
9
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits16to this page, all time
### Frontmatter reference
The whole hunk
from line 9, old and new numbered
/
from line 9
99* To use a built-in style, pick one from the [built-in output styles](#built-in-output-styles) and [switch to it](#change-your-output-style).
1010* To write your own instructions, [create a custom output style](#create-a-custom-output-style).
1111
12<Note>
13 An output style gives Claude instructions to follow. It doesn't guarantee that something always happens or never happens. Some needs fit a different feature:
12> [!NOTE]
13>
14> An output style gives Claude instructions to follow. It doesn't guarantee that something always happens or never happens. Some needs fit a different feature:
15>
16> * For what Claude should know about your project, use [CLAUDE.md](/docs/en/memory).
17> * For something that has to happen every time, such as formatting after each edit or blocking a command, use a [hook](/docs/en/hooks-guide).
18> * For skills, subagents, and the other options, see [Choose between an output style and other features](#choose-between-an-output-style-and-other-features).
1419
15 * For what Claude should know about your project, use [CLAUDE.md](/docs/en/memory).
16 * For something that has to happen every time, such as formatting after each edit or blocking a command, use a [hook](/docs/en/hooks-guide).
17 * For skills, subagents, and the other options, see [Choose between an output style and other features](#choose-between-an-output-style-and-other-features).
18</Note>
19
2020## Built-in output styles
2121
2222Claude Code starts in the [**Default**](#default) style, its standard instructions for completing software engineering tasks. Each of the four other built-in styles keeps those instructions and adds its own.
from line 115
115115
116116In the VS Code extension, you can also create the file from the [**Output styles** menu](/docs/en/vs-code#use-the-prompt-box) rather than writing it by hand. This requires Claude Code v2.1.261 or later.
117117
118<Steps>
119 <Step title="Create a Markdown file">
120 Save it at one of three levels. The file name becomes the style name unless you set `name` in the frontmatter.
118**1. Create a Markdown file**
121119
122 * User: `~/.claude/output-styles`
123 * Project: `.claude/output-styles`
124 * Managed policy: `.claude/output-styles` inside the [managed settings directory](/docs/en/managed-settings#delivery-mechanisms)
120Save it at one of three levels. The file name becomes the style name unless you set `name` in the frontmatter.
125121
126 Project output styles load from every `.claude/output-styles/` between the working directory and the repository root. When more than one of these nested directories defines a style with the same name, Claude Code uses the one closest to the working directory.
127 </Step>
122* User: `~/.claude/output-styles`
123* Project: `.claude/output-styles`
124* Managed policy: `.claude/output-styles` inside the [managed settings directory](/docs/en/managed-settings#delivery-mechanisms)
128125
129 <Step title="Add frontmatter and instructions">
130 Decide whether to keep Claude Code's software engineering instructions. Set `keep-coding-instructions: true` if you're changing how Claude communicates but still want it coding the same way. Leave it out if Claude won't be doing software engineering.
126Project output styles load from every `.claude/output-styles/` between the working directory and the repository root. When more than one of these nested directories defines a style with the same name, Claude Code uses the one closest to the working directory.
131127
132 This example leads every explanation with a diagram while keeping Claude's coding behavior:
128**2. Add frontmatter and instructions**
133129
134 ```markdown theme={null}
135 ---
136 name: Diagrams first
137 description: Lead every explanation with a diagram
138 keep-coding-instructions: true
139 ---
130Decide whether to keep Claude Code's software engineering instructions. Set `keep-coding-instructions: true` if you're changing how Claude communicates but still want it coding the same way. Leave it out if Claude won't be doing software engineering.
140131
141 When explaining code, architecture, or data flow, start with a Mermaid diagram showing the structure, then explain in prose.
132This example leads every explanation with a diagram while keeping Claude's coding behavior:
142133
143 ## Diagram conventions
134```markdown theme={null}
135---
136name: Diagrams first
137description: Lead every explanation with a diagram
138keep-coding-instructions: true
139---
144140
145 Use `flowchart TD` for control flow and `sequenceDiagram` for request paths. Keep diagrams under 15 nodes.
146 ```
147 </Step>
141When explaining code, architecture, or data flow, start with a Mermaid diagram showing the structure, then explain in prose.
148142
149 <Step title="Switch to your style">
150 Run `/output-style <style>` in the terminal, or run `/config` and select your style under **Output style**. Claude uses the new style starting with your next message. In the terminal, Claude Code reads style files when it starts, so if you create or edit one during a running session, restart Claude Code to pick up the change.
151 </Step>
152</Steps>
143## Diagram conventions
153144
145Use `flowchart TD` for control flow and `sequenceDiagram` for request paths. Keep diagrams under 15 nodes.
146```
147
148**3. Switch to your style**
149
150Run `/output-style <style>` in the terminal, or run `/config` and select your style under **Output style**. Claude uses the new style starting with your next message. In the terminal, Claude Code reads style files when it starts, so if you create or edit one during a running session, restart Claude Code to pick up the change.
151
154152[Plugins](/docs/en/plugins/manifest-reference) can also ship output styles in an `output-styles/` directory.
155153
156<h3 id="frontmatter">
157 Frontmatter reference
158</h3>
154### Frontmatter reference
159155
160156Configure an output style with YAML [frontmatter](/docs/en/glossary#frontmatter) between `---` markers at the top of the file. All fields are optional, and field names use lowercase words separated by hyphens. A misspelled field is ignored without an error. If the YAML doesn't parse, the style still loads under its file name with no fields set; run `claude --debug` to see the parse error.
161157
from line 161
165161| `description` | No | Description of the output style, shown in the `/config` picker |
166162| `keep-coding-instructions` | No | Set to `true` to keep Claude Code's section of built-in software engineering instructions, which only the full system prompt includes, alongside your style. See [How output styles work](#how-output-styles-work). Default: `false` |
167163| `force-for-plugin` | No | Plugin output styles only. Set to `true` to apply this style automatically whenever the plugin is enabled, without requiring users to select it. Overrides the user's `outputStyle` setting. If multiple enabled plugins set this, Claude Code uses the first one loaded. Default: `false` |
168
169<span id="comparisons-to-related-features" />
170164
171165## Choose between an output style and other features
172166
No line in this hunk matches that.