Output Styles, Voice & UI Customization
Quality-of-life features that change how Claude communicates and how the terminal feels.
Output Styles
Section titled “Output Styles”Output styles modify the system prompt to change role, tone, and format — not what Claude knows. Use when you keep re-prompting for the same voice, or when Claude isn’t doing software engineering at all.
Built-in styles (pick via /config → Output style, or "outputStyle" setting):
| Style | Behavior |
|---|---|
| Default | Standard software engineering |
| Proactive | Executes immediately, assumes instead of asking (permission prompts still apply) |
| Explanatory | Adds educational “Insights” about implementation choices |
| Learning | Collaborative learn-by-doing — leaves TODO(human) markers for you to implement |
Learning style is gold for this curriculum — Claude teaches while you build.
Custom style = markdown file in ~/.claude/output-styles/ (user) or .claude/output-styles/ (project):
---name: Diagrams firstdescription: Lead every explanation with a diagramkeep-coding-instructions: true---When explaining code or architecture, start with a Mermaid diagram, then prose.keep-coding-instructions: true keeps Claude’s engineering behavior; omit it for non-coding roles (writing assistant, data analyst). Style changes apply after /clear or restart (system prompt loads once per session).
vs related features: CLAUDE.md = project knowledge · --append-system-prompt = one-off addition · skills = on-demand workflows · output style = every response, different persona.
Voice Dictation
Section titled “Voice Dictation”Speak prompts instead of typing (v2.1.69+; claude.ai account required — audio is transcribed on Anthropic servers; local microphone needed).
/voice # toggle (hold mode default)/voice tap # tap once to record, tap again to send/voice off- Hold mode: hold
Space, speak, release — transcript lands at your cursor; mix voice + typing freely - Tap mode: no warmup; auto-submits transcripts ≥3 words
- Tuned for coding vocabulary (
regex,OAuth,localhost); your project + branch names are recognition hints - 20 languages via the
languagesetting; rebind the key viavoice:pushToTalkin keybindings.json - Works in agent view’s dispatch/reply inputs too
Status Line
Section titled “Status Line”A custom status line shows model, git branch, context usage, cost — always visible.
/statusline show the model name, current branch, and context percentage…and Claude writes the script for you. Under the hood: "statusLine": {"type": "command", "command": "~/.claude/statusline.sh"} — your script receives JSON (model, cwd, current_usage cache/token counts) on stdin every update. Great for watching cache hit health (54-prompt-caching-deep-dive.md).
Fullscreen Rendering & Other Toggles
Section titled “Fullscreen Rendering & Other Toggles”| Feature | How |
|---|---|
| Fullscreen TUI rendering (alt-screen, smoother redraw) | /fullscreen or "fullscreen": true |
| Themes | /theme (dark/light/ansi/daltonized variants) |
| Vim keybindings | /vim |
| Session name colors (for agent view) | /color |
| Custom keybindings | ~/.claude/keybindings.json (05-interactive-mode-shortcuts.md) |
Real Case: Teaching Mode for This Curriculum
Section titled “Real Case: Teaching Mode for This Curriculum”1. /config → Output style → Learning2. "implement capstone 4's /new-endpoint skill with me"3. Claude scaffolds, explains each decision as an Insight, and leaves TODO(human) for the validation logic — you write the crux, it reviews🧠 Quick Recall
Section titled “🧠 Quick Recall”- Trick: “Style = persona, CLAUDE.md = knowledge, skills = recipes.”
👨🏫 Teach It
Section titled “👨🏫 Teach It”- Do: put trainees on the Learning style for their first week — Claude co-teaches.
- They’ll trip on: style changes apply only after
/clearor restart.
Learning path: ⬅ 51-artifacts-and-deep-links.md · Index · ➡ 53-devcontainers-sandbox-environments.md
Written by Fenil Patel