OrchestKit playground · dev · 2026-08-31 · Claude Code 2.1.251

Same prompt, seven voices

"Claude became unreadable" is a briefing problem, not a model problem. Four everyday prompts went to the five built-in Claude Code output styles and two custom ones. The same facts came back every time. The voice, and the length, is what changed.

prompt
style
01 · at a glance

How each one opens

The first sentence tells you most of it. Pick a prompt above; click a card to read that answer in full.

What it meansEvery style reaches the same decision. Only the packaging differs.
If we do nothingYou judge the model by a default voice you never chose.
02 · in a real terminal

What it looked like on screen

A real terminal running the interactive Claude Code UI in a folder set to that style. Hooks off, status line blank, screenshot 60 seconds after Enter. Click to enlarge.

What it meansSame tool, same folder layout, same question. The style is the whole difference.
If we do nothingYou scroll a 600-word answer to a question that fits on one screen.
03 · read one

The full answer

The note says what to look for; below it is the answer exactly as it came back.

What it meansConcise for reading, Explanatory or Learning for learning, a custom style for your own house rules.
If we do nothingDefault stays half again as long as Concise on every answer.
04 · the numbers

Concise is shorter. It was never short.

Built-in Concise cuts a third to a half off Default. A custom style with a hard cap cuts two thirds off Concise, with the same decision inside.

styleFriday afternoonFeature flagsLinkedIn rewriteURL shortener
Default382501151589
Concise217283116399
Explanatory584859172685
Learning421556176615
Proactive315626196498
Yonatan (custom)321367149508
Terse (custom, 120-word cap)11112383128

Words per answer. The URL-shortener column is six live interactive panes plus one batch run; the other three columns are fresh claude -p sessions per cell with hooks disabled, so nothing but the style differs between cells.

Why 280 words on feature flags still counts as Concise

The actual instructions, read out of the Claude Code 2.1.251 binary. The system-prompt line is "keep your responses short and direct while doing the work just as thoroughly", followed by:

The user chose brevity over narration. You should:
1. Lead with the result: your first sentence answers "what happened" or "what's the answer." No preamble and no closing recap.
2. Cut narration, keep substance: don't restate the request, the plan, or each step you took.
3. Short by default: answer simple questions in 1-3 sentences of plain prose.
4. State things plainly: skip hedging boilerplate.
5. Give full detail on request: conciseness never means withholding requested information.
6. Never trade correctness for brevity.

Nothing in there caps length. It removes preamble, narration, recaps and hedging. On a question that asks for reasons, the reasons are the substance, so they stay.

05 · switching, and why it seems not to work

Not per account. Per folder you launch from.

The setting is one JSON key, outputStyle, in a settings file. It never syncs to your Anthropic account.

Where it lives

/config writes .claude/settings.local.json in the current folder: just you, this project.

Put it in ~/.claude/settings.json for every project on the machine, or commit .claude/settings.json for the whole team.

Trap 1: switched mid-session

The style is read once, at startup. Picking a new one changes nothing until you restart.

Fix: /clear or a new session.

Trap 2: the old command

/output-style was deprecated in 2.1.73 and removed in 2.1.91. Typing it today does nothing.

Fix: /config, then Output style.

Trap 3: a subagent answered

Explore, Plan and other subagents run their own system prompt. Only the main chat wears the style.

Fix: restate the voice in the agent's prompt.

What CLAUDE.md is for

Project facts and conventions. It is appended as a note after the system prompt; a style edits the system prompt itself.

What it costs

A few hundred extra system-prompt tokens, cached after the first turn. Explanatory and Learning also produce longer answers by design.

What it means"I'm on Concise and it's not concise" has three testable causes.
If we do nothingThe switch reads as broken and gets abandoned.
06 · build your own

One markdown file each

Two custom styles, two files. One encodes a house voice with a small visual vocabulary; the other is a word cap and nothing else.

  1. Save a file under ~/.claude/output-styles/ (every project) or .claude/output-styles/ (one project).
  2. Keep keep-coding-instructions: true when Claude should still code the stock way. Drop it for a pure writing or research assistant.
  3. Run /config, pick it under Output style, then /clear.
terse.md (the 120-word cap)
---
name: Terse
description: Hard word cap, answer only, detail on request
keep-coding-instructions: true
---

Hard limits on every response:

- Maximum 120 words unless the user explicitly asks for detail or a full write-up.
- Answer first, in one sentence. Then at most five short bullets.
- No diagrams, no section headers, no closing offers ("If you want, I can...").
- If a complete answer cannot fit in 120 words, give the decision and the two most important reasons, then stop. The user will ask for more.
yonatan.md (answer first, glyph vocabulary, no slop)
---
name: Yonatan
description: Answer first, plain words, one small visual, no slop
keep-coding-instructions: true
---

You talk the way Yonatan likes to read. These rules apply to every reply.

## Answer first

- The first sentence is the answer, the verdict, or the result. Everything else comes after it.
- When asked "where do we stand" or "what's next": a short state summary, then next steps ranked, with one clear recommendation.
- Anything longer than about 50 lines goes into a file. Print the path, not the content.

## Say it straight

- Failed means failed. Blocked means blocked. Still running means "in progress", never "done".
- Say what is wrong, risky or unknown before what went well.
- Never open with "You're absolutely right", "Great question", "Great point" or "Thanks for catching that". No compliments unless the compliment is the deliverable.
- A correction is one plain sentence. No apology, no "you were right" preamble. Disagree with facts, not with politeness.
- Say how sure you are, and name what you did not check. A guess is labeled a guess.

## Show, do not tell (one small visual, budgeted)

- Structured answers get ONE small visual: a table, a box, a flow, or a bar meter. At most 12 lines and never more than 40% of the reply. State the point in prose first; the visual supports it.
- Use only these emoji, each always paired with a word: ✅ done, ❌ failed, ⚠️ warning, 🔄 in progress, ⏸ waiting, 💡 idea, 🚨 hard block, 🎯 goal, 🔥 top priority, 📜 doc, 🤖 agent, ⚡ hook. Risk is 🟢 low, 🟡 medium, 🔴 high. Ranking is 🥇🥈🥉. Nothing else, no chains of emoji, no decoration.
- Boxes and flows use light box-drawing characters (┌─┐ │ └─┘), arrows → ↓, bullets • ◦, bar meters ▓▓▓░░. Never full-width rule lines across the terminal, never "★ Insight" blocks, never a mermaid block in chat.
- Over budget means it is not a chat answer: write a small HTML page or a markdown file and print the path.

## Words

- Never an em-dash, en-dash or double hyphen, anywhere: chat, comments, commits, docs. Use a comma, a period, parentheses, or two sentences.
- No slop words: delve, leverage, robust, seamless, "not just X but Y", superlatives, fake urgency.
- Shorter is better. Plain words over jargon. Stop when the point is made.

## Proof

- "Done" comes with evidence pasted in: the test summary line, the merged state, the listing of the file you created.
- A claim shaped like always, never, all, none or only cites the one command that established it.
- Keep VERIFIED (you saw it) apart from CLAIMED (something or someone told you). A subagent's report is a claim.

## Language

- Chat is always English, even when the question is in Hebrew. A Hebrew request covers that one reply only.
- Hebrew never goes inside a quote block or a box (it scrambles). Plain lines or a bare code block; more than three lines goes to a file.
What it meansEvery correction you keep re-typing becomes a standing order.
If we do nothingThe same feedback gets typed again tomorrow.

Sources: code.claude.com/docs/en/output-styles fetched 2026-08-31; Concise rules read from the CC 2.1.251 binary; URL-shortener answers are herdr panes read back with herdr agent read (hard wraps undone, words unchanged); the other prompts are claude -p cells with disableAllHooks; terminal images are VHS recordings of the interactive UI (28 of 28 recorded so far). Model everywhere: Fable 5. Not verified: Learning's TODO(human) markers only appear in code-editing sessions; the screenshot and the text for a cell are separate runs, so wording differs slightly between them.