Blog
3 min read

Claude Code Output Styles: Concise, Explanatory, Learning and Your Own

Output styles change how Claude Code talks and works for a whole session: shorter answers, explanations of each change, or leaving pieces for you to write. The five built-in styles, how to switch with /output-style, and how to write a custom style file.

An output style is a set of instructions that changes how Claude Code responds for an entire session — its tone, its length, even its role. If you keep typing "shorter please" or "explain why you did that", an output style saves you the repetition.

Details as of October 2026, from Anthropic's output styles docs.

The built-in styles

Claude Code starts in Default. Four other built-in styles keep Default's engineering instructions and add their own:

Style What changes Use it when
Proactive Claude starts work straight away and makes reasonable assumptions instead of asking about routine decisions You'd rather correct course than answer questions
Concise Answers lead with the result; no preamble, narration or recap Default answers feel long
Explanatory Adds short ★ Insight blocks explaining the choices behind the code You're learning a codebase
Learning Explains choices and leaves small pieces marked TODO(human) for you to write You want hands-on practice

A few details worth knowing:

  • Concise still writes in full when you ask for detail, and never shortens error reports, failing tests, security warnings or confirmations for destructive actions.
  • Proactive doesn't change your permission mode. Permission prompts appear exactly as before; Claude just asks fewer questions.
  • Explanatory and Learning put explanations in the conversation, not in your files as comments.

How to switch

/output-style concise

With no argument, /output-style lists the styles and marks the current one. You can also run /config and choose Output style. Your choice is saved to .claude/settings.local.json for that project.

To set a default everywhere, add this to ~/.claude/settings.json:

{
  "outputStyle": "Concise"
}

In settings files the name is case-sensitive: Concise works, concise silently gives you Default. (The command ignores case.) A new style applies from your next message.

Write your own style

A custom style is a Markdown file with frontmatter. Save it in ~/.claude/output-styles/ (for you) or .claude/output-styles/ (for the project):

---
name: Plain English
description: Explain everything for a non-developer
keep-coding-instructions: true
---

Explain what you changed in plain English, without jargon.
After each change, say how I can check it worked in the browser.
Never assume I know git commands; give the exact command to run.

keep-coding-instructions: true keeps Claude Code's built-in software engineering instructions alongside yours. Leave it out if you're turning Claude into something else entirely, such as a writing assistant. Restart Claude Code after creating or editing a style file, then select it with /output-style.

Output style vs CLAUDE.md vs hooks

You want Use
Every reply in a certain voice, length or format An output style
Claude to know your project's conventions and commands CLAUDE.md
Instructions for one kind of task A skill
Something that must happen every time, no exceptions A hook

An output style is an instruction Claude follows, not a guarantee. If formatting must run after every edit, that's a hook's job.

The summary

  • Output styles change how Claude responds for a whole session.
  • Built-ins: Default, Proactive, Concise, Explanatory, Learning.
  • Switch with /output-style <name>; write your own as a Markdown file in output-styles/.

EasySpawn hosts Claude Code on a persistent server with your settings and styles saved alongside your projects, so every session — from laptop, phone or browser — behaves the same way. See how it works or join the waitlist.

Related: Claude Code Settings Explained · Claude Code for Non-Developers · Learn to Code With AI · Claude Code Slash Commands

Keep reading