Create Output Style
Instruction Claude
Slash command to generate custom output styles that modify Claude Code's system prompt for different agent behaviors
- 💡 Use Case:
- Use when you need Claude to behave differently for specific contexts like teaching, code review, debugging, or concise responses
Prompt Content
description: Generate custom output styles that modify Claude Code’s system prompt for different agent behaviors argument-hint: [style-name] [—user|—project] [—description ”…”]
/create-output-style
Purpose
Generate custom output style files for Claude Code with proper structure and YAML frontmatter.
Contract
Inputs:
$1— STYLE_NAME (optional: name for the output style)--user— Save to user-level directory (~/.claude/output-styles)--project— Save to project-level directory (.claude/output-styles)--description "..."— Brief description of the output style
Outputs: STATUS=<OK|FAIL> PATH=<path> SCOPE=<user|project>
Instructions
-
Determine scope:
- If
--useris provided: save to~/.claude/output-styles/ - If
--projectis provided: save to.claude/output-styles/ - Default:
--user(user-level)
- If
-
Gather information:
- If STYLE_NAME not provided, ask user for the style name
- If description not provided via
--description, ask user what behavior they want - Style name should be title-cased (e.g., “My Custom Style”)
-
Generate output style file using this template:
---
name: { { STYLE_NAME } }
description: { { DESCRIPTION } }
---
# {{STYLE_NAME}} Instructions
You are an interactive CLI tool that helps users with software engineering tasks.
{{CUSTOM_INSTRUCTIONS}}
## Specific Behaviors
{{SPECIFIC_BEHAVIORS}}
## Key Principles
- {{PRINCIPLE_1}}
- {{PRINCIPLE_2}}
- {{PRINCIPLE_3}}
-
Create the file:
- Convert style name to kebab-case for filename (e.g., “My Custom Style” → “my-custom-style.md”)
- Create target directory if it doesn’t exist
- Write the file
- Print:
STATUS=OK PATH=<full-path> SCOPE=<user|project>
-
Inform user:
- Let them know the file was created
- Remind them they can activate it with
/output-style [style-name] - Mention they can edit the file directly to refine the instructions
Examples
Example 1: Basic usage
/create-output-style
# Claude will ask for style name and description interactively
Example 2: Full specification
/create-output-style "Teaching Assistant" --project --description "Explains concepts step by step with examples"
# STATUS=OK PATH=.claude/output-styles/teaching-assistant.md SCOPE=project
Example 3: User-level style
/create-output-style "Code Reviewer" --user --description "Focuses on thorough code review with best practices"
# STATUS=OK PATH=~/.claude/output-styles/code-reviewer.md SCOPE=user
Notes
- Output styles modify Claude Code’s system prompt completely
- Non-default styles exclude standard code generation instructions
- User-level styles are available across all projects
- Project-level styles are specific to the current project
- You can manually edit the generated files to refine instructions