SpyBara
Go Premium

output-styles.md 2025-10-31 00:04 UTC to 2025-11-01 21:01 UTC

23 added, 47 removed.

2025
Thu 27 06:02 Wed 26 00:04 Tue 25 03:22 Mon 24 21:01 Fri 21 00:04 Thu 20 18:02 Wed 19 03:21 Tue 18 18:02 Mon 17 03:24 Sun 16 00:04 Fri 14 21:26 Thu 6 18:02 Tue 4 18:02 Mon 3 21:01 Sun 2 18:01 Sat 1 21:01

Output styles

[DEPRECATED] Adapt Claude Code for uses beyond software engineering

Deprecation timeline

As of November 5, 2025, Claude Code will:

  • Stop supporting the output styles feature
  • Remove the /output-style command and related functionality

Alternative for Custom Output Styles

Use --system-prompt-file to start a Claude Code session with your own system prompt. You can also use --system-prompt to pass in a string to use as the system prompt, or --append-system-prompt to add to the default Claude Code system prompt.

Alternative for Explanatory Output Style: explanatory-output-style Plugin

Plugins provide more powerful and flexible ways to customize Claude Code's behavior. The explanatory-output-style plugin recreates the deprecated Explanatory output style functionality.

Example: Explanatory Output Style Plugin

The explanatory-output-style plugin uses a SessionStart hook to inject additional context that encourages Claude to provide educational insights. Here's what it does:

  • Provides educational insights about implementation choices
  • Explains codebase patterns and decisions
  • Balances task completion with learning opportunities

Installing a plugin

To install a plugin like explanatory-output-style:

/plugin marketplace add anthropics/claude-code
/plugin install explanatory-output-style@claude-code-plugins
/exit
/plugin manage explanatory-output-style@claude-code-plugins

1. Press enter when you see claude-code-marketplace
2. Press space when you see explanatory-output-style to toggle enabled
3. Press down to "Apply changes", then press enter
    You should see "Disabled 1 plugin. Restart Claude Code to apply changes."

/exit

For more details on plugins, see the Plugins documentation.


Reference: Original output styles documentation

Output styles allow you to use Claude Code as any type of agent while keeping its core capabilities, such as running local scripts, reading/writing files, and tracking TODOs.

Built-in output styles

Claude Code's Default output style is the existing system prompt, designed to help you complete software engineering tasks efficiently.

There are two additional built-in output styles focused on teaching you the codebase and how Claude operates:

  • Explanatory: Provides educational "Insights" in between helping you complete software engineering tasks. Helps you understand implementation choices and codebase patterns.

  • Learning: Collaborative, learn-by-doing mode where Claude will not only share "Insights" while coding, but also ask you to contribute small, strategic pieces of code yourself. Claude Code will add TODO(human) markers in your code for you to implement.

How output styles work

Output styles directly modify Claude Code's system prompt.

  • Non-default output styles exclude instructions specific to code generation and efficient output normally built into Claude Code (such as responding concisely and verifying code with tests).
  • Instead, these output styles have their own custom instructions added to the system prompt.

Change your output style

You can either:

  • Run /output-style to access the menu and select your output style (this can also be accessed from the /config menu)

  • Run /output-style [style], such as /output-style explanatory, to directly switch to a style

These changes apply to the local project level and are saved in .claude/settings.local.json.

You can also create your own output style Markdown files and save them either at the user level (~/.claude/output-styles) or the project level (.claude/output-styles).

Output Styles vs. CLAUDE.md vs. System Prompt Flags

Output styles completely "turn off" the parts of Claude Code's default system prompt specific to software engineering.

CLAUDE.md adds the contents as a user message following Claude Code's default system prompt, rather than modifying the system prompt itself.

System prompt CLI flags provide different levels of control:

  • --append-system-prompt: Appends text to the end of the default system prompt
  • --system-prompt: Replaces the entire default system prompt with custom text
  • --system-prompt-file: Loads a custom system prompt from a file

See the CLI reference for detailed guidance on when to use each flag.

Output Styles vs. Agents

Output styles directly affect the main agent loop and only affect the system prompt. Agents are invoked to handle specific tasks and can include additional settings like the model to use, the tools they have available, and some context about when to use the agent.

Output Styles vs. Custom Slash Commands

You can think of output styles as “stored system prompts” and custom slash commands as “stored prompts”.