Claude Code commands

Change how Claude Code responds with output styles

3 min read

An output style is a set of instructions that sets Claude’s role, tone, and response format for a whole session, so you don’t repeat the request in every prompt. Claude Code ships four built-in styles besides the default and lets you write your own.

1. List the styles you have

/output-style

Run it with no argument to list every style and mark the current one. The built-ins are Proactive, Concise, Explanatory, and Learning, plus the Default.

2. Switch with /output-style

/output-style concise

Pass a style name to switch; the choice saves to .claude/settings.local.json and applies from your next message. The command ignores case.

3. Create a custom style

A custom style is a Markdown file: frontmatter, then the instructions for Claude.

---
name: Diagrams first
description: Lead every explanation with a diagram
keep-coding-instructions: true
---

Start each explanation with a Mermaid diagram, then explain in prose.

Set keep-coding-instructions: true to keep Claude Code’s engineering instructions alongside yours.

4. Know where styles live

~/.claude/output-styles/    # user level, all projects
.claude/output-styles/      # project level, this repo

Save the file at the user or project level. Claude Code reads style files at startup, so restart the session after you add or edit one.

5. Output style vs CLAUDE.md or system prompt

A style shapes how Claude responds; it is an instruction, not a guarantee. For what Claude should know about your project, use CLAUDE.md. To persist your style choice across projects, set outputStyle in settings.json.

Verify it worked

Run /output-style, confirm your style is marked current, send a message, and check the reply matches the style.

If it fails:

Open the full interactive version (with copy buttons) ↗

← All guides