https://docs.anthropic.com/en/docs/claude-code/output-styles Anthropic home pagelight logodark logo English Search... * Research * Login * Support * Discord * Sign up * Sign up Search... Navigation Build with Claude Code Output styles Welcome Developer Platform Claude Code Model Context Protocol (MCP) API Reference Resources Release Notes Getting started * Overview * Quickstart * Common workflows Build with Claude Code * Claude Code SDK * Subagents * Output styles * Claude Code hooks * GitHub Actions * Model Context Protocol (MCP) * Troubleshooting Deployment * Overview * Amazon Bedrock * Google Vertex AI * Corporate proxy * LLM gateway * Development containers Administration * Advanced installation * Identity and Access Management * Security * Data usage * Monitoring * Costs * Analytics Configuration * Settings * Add Claude Code to your IDE * Terminal configuration * Memory management * Status line configuration Reference * CLI reference * Interactive mode * Slash commands * Hooks reference Resources * Legal and compliance Build with Claude Code Output styles Copy page Adapt Claude Code for uses beyond software engineering 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. Create a custom output style To set up a new output style with Claude's help, run / output-style:new I want an output style that ... By default, output styles created through /output-style:new are saved as markdown files at the user level in ~/.claude/output-styles and can be used across projects. They have the following structure: --- name: My Custom Style description: A brief description of what this style does, to be displayed to the user --- # Custom Style Instructions You are an interactive CLI tool that helps users with software engineering tasks. [Your custom instructions here...] ## Specific Behaviors [Define how the assistant should behave in this style...] 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). Comparisons to related features Output Styles vs. CLAUDE.md vs. --append-system-prompt Output styles completely "turn off" the parts of Claude Code's default system prompt specific to software engineering. Neither CLAUDE.md nor --append-system-prompt edit Claude Code's default system prompt. CLAUDE.md adds the contents as a user message following Claude Code's default system prompt. --append-system-prompt appends the content to the system prompt. 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". Was this page helpful? YesNo SubagentsClaude Code hooks xlinkedin On this page * Built-in output styles * How output styles work * Change your output style * Create a custom output style * Comparisons to related features * Output Styles vs. CLAUDE.md vs. --append-system-prompt * Output Styles vs. Agents * Output Styles vs. Custom Slash Commands