Wondering how to change output style in Claude Code? The quick version is just below — and if you’ve been re-prompting Claude for the same tone or format every single turn, this one setting is going to save you a lot of typing. I’ve been living inside Claude Code daily for my SEO agency work, and output styles are one of those features most people don’t even know exist until they see someone else’s setup. Even better: as of v2.1.269 (released 11 September 2026, per the official Claude Code changelog), the /output-style slash command is back after being removed for months — and it now works in cloud and headless sessions too.
Short answer:
- Fastest way: run
/configin the terminal and pick a style under Output style — Claude Code saves it to.claude/settings.local.json. - New in v2.1.269 (11 September 2026):
/output-style [name]is back as a slash command to list and switch styles, including over Remote Control and in cloud and other headless sessions. - You can also set it directly in a settings file:
{"outputStyle": "Explanatory"}. - Built-in styles: Default, Proactive, Concise, Explanatory and Learning — plus you can write your own as a Markdown file.
- Style switches apply from your next message — no restart needed (since v2.1.251).
How to Change Output Style in Claude Code: The Three Official Ways
Per the official Claude Code docs (fetched September 2026), there are three supported ways to switch styles, depending on where you run Claude Code:
- Terminal: run
/configand select Output style to pick a style from a menu. Claude Code saves your selection to.claude/settings.local.jsonat the local project level. - VS Code extension: open the command menu with
/and select Output styles — including your custom styles. This writes to the same.claude/settings.local.jsonfile and requires Claude Code v2.1.257 or later. - Desktop app: set the
outputStylefield in a settings file yourself, for example.claude/settings.local.json, because/configin the desktop app opens Settings rather than the terminal menu.
And if you’d rather skip menus entirely, edit the settings file directly:
{
"outputStyle": "Explanatory"
}
One detail that trips people up: when you switch styles mid-session, Claude uses the new style starting with your next message. Before v2.1.251 you had to run /clear or start a new session for it to take effect, which is why a lot of older tutorials tell you to restart. You don’t any more.
What Output Styles Actually Do (And What They Don’t)
The docs put it well: output styles change how Claude responds, not what Claude knows. They set Claude’s role, tone and output format for every response. Use one when you keep re-prompting for the same voice or format every turn, or when you want Claude to act as something other than a software engineer entirely — a writing assistant, a data analyst, an SEO content reviewer.
Under the bonnet, an output style changes the instructions Claude Code sends with every request. When you select a style other than Default, Claude Code also reminds Claude of the style during the conversation. Crucially, custom output styles leave out Claude Code’s built-in software engineering instructions unless you explicitly keep them — more on that below.
Output styles apply to the main conversation and to a fork of it. Subagents run their own system prompt, so styles don’t change how they respond. Worth knowing before you wonder why your subagent ignores your carefully crafted persona.
🔥 Want this set up without the guesswork? Inside the AI Profit Boardroom we share the exact Claude Code output styles, settings files and workflows we use to run AI SEO campaigns — 3,700+ members, four live calls per week, daily tutorials and done-for-you templates with a 30-day roadmap. And if you’d rather talk it through one-on-one, book a free SEO strategy session and I’ll walk you through how we use Claude Code for content operations.
The /output-style Command Is Back in v2.1.269
Here’s the fresh news that made me write this guide now. The standalone /output-style command was deprecated in v2.1.73 and removed entirely in v2.1.91 — the docs told everyone to use /config or edit the outputStyle setting instead. Then, per the official changelog entry for v2.1.269 (11 September 2026), Anthropic brought it back:
“Added
/output-style [name]to list and switch output styles, including over Remote Control and in cloud and other headless sessions”
That last clause is the interesting bit. If you run Claude Code on the web, over Remote Control from your phone, or in headless automation, you previously had no quick way to flip styles mid-session — the /config menu is a terminal UI. Now /output-style concise just works wherever you’re driving Claude Code from. Run it with no argument to list what’s available.
Built-In Output Styles Compared
Claude Code ships with a Default style — its standard software engineering instructions — plus four alternatives, per the official docs:
| Style | What it changes | Best for |
|---|---|---|
| Default | Standard software engineering instructions | Everyday coding |
| Proactive | Executes immediately, makes reasonable assumptions instead of pausing, prefers action over planning — without changing your permission mode | Autonomous grinding through well-defined work |
| Concise | Leads with the result, skips preamble, keeps responses short (keeps full error reports and warnings); needs v2.1.237+ | Experienced devs who hate narration |
| Explanatory | Adds educational “Insights” about implementation choices and codebase patterns | Learning an unfamiliar codebase |
| Learning | Collaborative learn-by-doing: shares Insights and asks you to write small pieces yourself via TODO(human) markers |
Levelling up your own coding |
Token usage depends on the style: Explanatory and Learning produce longer responses by design, Concise does the opposite, and a style’s instructions add input tokens (prompt caching reduces that after the first request in a session).
Creating a Custom Output Style
A custom output style is just a Markdown file: frontmatter for metadata, then the instructions. Save it at one of three levels — user (~/.claude/output-styles), project (.claude/output-styles), or managed policy. The file name becomes the style name unless you set name in the frontmatter. In the VS Code extension (v2.1.261+) you can even create the file from the Output styles menu instead of writing it by hand.
The one decision that matters is the keep-coding-instructions frontmatter flag, which defaults to false:
- Set
keep-coding-instructions: truewhen you’re changing how Claude communicates but still want it coding the same way — for example, always leading explanations with a diagram. - Leave it out when Claude isn’t doing software engineering at all — a writing assistant, a research analyst, an SEO brief builder.
A minimal example from the docs:
---
name: Diagrams first
description: Lead every explanation with a diagram
keep-coding-instructions: true
---
When explaining code, architecture, or data flow, start with a
Mermaid diagram showing the structure, then explain in prose.
Two more useful details: plugins can ship output styles in an output-styles/ directory (with a force-for-plugin flag to apply automatically), and in the terminal Claude Code reads style files at startup — so if you create or edit one mid-session, restart Claude Code to pick up the change.
Output Styles vs CLAUDE.md vs Skills
People constantly stuff persona instructions into CLAUDE.md and wonder why it feels off. The docs draw the line clearly — output styles change Claude Code’s default instructions, the others add to them or scope them to a task:
| Feature | How it works | Use it when |
|---|---|---|
| Output styles | Changes Claude Code’s default instructions | You want a different role, tone or default format every turn |
| CLAUDE.md | Adds a user message after the system prompt | Claude should always know your project conventions |
--append-system-prompt |
Appends to the system prompt without removing anything | One-off addition at launch |
| Agents | Subagent with its own system prompt, model and tools | Separately scoped helper for a focused task |
| Skills | Loads task-specific instructions when invoked or relevant | You have a reusable workflow |
My rule of thumb from running this across an agency: project conventions go in CLAUDE.md (see my guide to the Claude Code Skill Doctor for keeping that lean), repeatable workflows become skills, and voice/format lives in an output style. If you’re also tuning how hard Claude thinks, that’s a separate dial — I covered it in my Claude Code effort level guide.
The Bottom Line on How to Change Output Style in Claude Code
Run /config and pick a style, or — since v2.1.269 on 11 September 2026 — just type /output-style [name], which now works over Remote Control and in cloud and headless sessions too. Your choice lands in .claude/settings.local.json as the outputStyle field, takes effect from your next message, and can be a completely custom Markdown persona if the built-ins don’t fit. If you’re pairing this with the new live diff view, my Claude Code diff panel guide covers that side of the September updates.
Small feature, outsized quality-of-life gain — especially for non-coding uses of Claude Code, which is exactly how we run a chunk of our SEO operation.
FAQ: how to change output style in claude code
What is the /output-style command in Claude Code?
It’s a slash command that lists your available output styles and switches between them: /output-style to list, /output-style concise to switch. Per the official changelog, it was added (back) in v2.1.269 on 11 September 2026 and works over Remote Control and in cloud and other headless sessions.
Why did /output-style disappear from Claude Code?
The standalone command was deprecated in v2.1.73 and removed in v2.1.91, with /config and the outputStyle setting as the replacements. Anthropic reinstated it in v2.1.269, largely because headless and remote sessions had no menu-based way to switch.
Where does Claude Code save my output style choice?
In a settings file — the terminal and VS Code pickers both write to .claude/settings.local.json at the local project level, as an outputStyle field you can also edit by hand.
Do output styles work in cloud and headless sessions?
Yes. As of v2.1.269 you can list and switch styles with /output-style [name] in cloud and other headless sessions and over Remote Control, and settings-file configuration has always applied wherever the settings file is read.
What’s the difference between an output style and CLAUDE.md?
An output style changes Claude Code’s default instructions — its role, tone and format — while CLAUDE.md adds project knowledge as a user message after the system prompt. Conventions and codebase context belong in CLAUDE.md; voice and format belong in a style.
Do custom output styles cost more tokens?
A style’s instructions add input tokens, though prompt caching reduces the cost after the first request in a session. Output token usage depends on the style: Explanatory and Learning are longer by design, Concise is shorter, and for custom styles it depends on what your instructions ask for.
Want to go deeper than one setting? The AI Profit Boardroom is where I share the full Claude Code + AI SEO stack — 3,700+ members, four live calls a week, daily tutorials and done-for-you templates. Or book a free SEO strategy session and we’ll map out how output styles, skills and agents fit into your content pipeline.
About the author: Julian Goldie is an SEO agency owner with 10+ years in SEO, 394K+ YouTube subscribers, a 100% Upwork job-success score, 75K+ community members across his groups, and a best-selling SEO book. He shares daily AI SEO tutorials on YouTube and inside the AI Profit Boardroom — or you can book a free SEO strategy session with his team.
Related reading
- Claude Code Effort Level: Full Guide to /effort
- Claude Code Diff Panel: See Every Edit Live
- Claude Code Skill Doctor: Cut Wasted Context Fast
Last updated September 2026. This is the living guide to how to change output style in claude code — it gets updated as the tools change.

