Output Styles
Switch Claude Code from software engineering mode to specialized styles for different tasks. For comprehensive coverage of all available styles, see the official output styles documentation.
What are Output Styles?
Output styles modify Claude's system prompt to adapt its behavior beyond software engineering tasks. Unlike other customization methods, output styles completely turn off Claude's default software engineering instructions, allowing specialized behavior for different contexts.
What You Get
Three built-in styles plus custom options:
- Default - Standard software engineering assistance with scripts, TODOs, and development workflows
- Explanatory - Adds educational "Insights" sections explaining implementation choices and decisions
- Learning - Collaborative mode with "Insights" plus
TODO(human)markers for user contributions - Custom - Create specialized styles with
/output-style:newfor unique use cases
How to Use Output Styles
Switch Styles
Change your current output style:
/output-style # Show current style and available options
/output-style explanatory # Switch to explanatory style
/output-style learning # Switch to learning style
/output-style default # Back to software engineering modeCreate Custom Styles
Build specialized styles for your needs:
/output-style:new
# Follow prompts to create custom behavior
# Define specific instructions and behavioral guidelinesStyle Examples
Default Style
Standard software engineering assistance:
Request: "Build a user authentication system"
Response:
// auth.service.ts
export class AuthService {
async authenticate(email: string, password: string) {
// Implementation with error handling
}
}Explanatory Style
Adds educational insights:
Request: "Build a user authentication system"
Response:
// auth.service.ts
export class AuthService {
async authenticate(email: string, password: string) {
// Implementation with error handling
}
}
**Insights:** This implementation uses bcrypt for password hashing because it's specifically designed to be slow and computationally expensive, making brute force attacks impractical. The salt is automatically generated and stored with the hash.Learning Style
Collaborative with human contributions:
Request: "Build a user authentication system"
Response:
// auth.service.ts
export class AuthService {
async authenticate(email: string, password: string) {
// Implementation with error handling
}
// TODO(human): Add rate limiting middleware
// TODO(human): Configure session management
}
**Insights:** Authentication systems require several security layers. The bcrypt library handles password security, but you'll need to implement rate limiting and session management for complete protection.Custom Style Creation
When creating custom styles, define:
- Purpose - What task or domain the style serves
- Behavior - How Claude should respond differently
- Guidelines - Specific instructions for the style
- Format - Any special formatting or structure requirements
Example custom style for code reviews:
- Focus on security and maintainability
- Provide severity levels for issues
- Include specific remediation steps
- Reference best practices and standards
Style Management
Output styles are saved as markdown files:
- User-level styles available across all projects
- Project-level styles specific to current project
- Easily shareable and version-controlled
Integration Notes
With Other Features
- Output styles work alongside plan mode and slash commands
- CLAUDE.md files still apply within chosen output style
- Custom instructions and project context remain active
Style Persistence
- Last used style is remembered per project
- Styles persist across Claude Code sessions
- Easy to switch between styles as tasks change
Common Use Cases
| Use Case | Recommended Style | Why |
|---|---|---|
| Standard development | Default | Full engineering capabilities |
| Code mentoring | Explanatory | Explains design decisions |
| Pair programming | Learning | Interactive with human TODOs |
| Technical writing | Custom | Specialized documentation format |
| Code reviews | Custom | Security-focused analysis |
Related
- Memory System - Combine output styles with persistent project context
- Context Management - Control information flow for better outputs
- Prompting Techniques - Craft better prompts within your chosen style
- Using Subagents - Apply output styles to specialized agents
- Official Documentation - Complete style reference