SSD Nodes Learn 🎉 VPS ab $5.50/Monat
Anleitungen Matt ConnorVon Matt Connor

Claude Code: Ausgabestile erklärt und anpassen

Ausgabestile ändern den System-Prompt von Claude Code. Erfahren Sie, was die fünf integrierten Stile im Transkript bewirken und wie Sie eigene Stile schreiben.

Was ein Ausgabestil in Claude Code ist

Ein Ausgabestil in Claude Code ist ein Anweisungsblock, den Claude Code an seinen System-Prompt anhängt. Er verändert, wie Claude Ihnen antwortet: welche Rolle Claude einnimmt und in welcher Form die Ausgabe erfolgt. Der Ausgabestil vermittelt Claude kein Wissen über Ihre Codebasis. Er kann Claude auch keine Berechtigung geben, etwas auszuführen.

Claude Code wird mit fünf integrierten Stilen ausgeliefert. Ihre Auswahl wird in einem Einstellungsschlüssel gespeichert: outputStyle. Dieser Schlüssel wird einmal beim Start der Sitzung gelesen. Das erklärt den größten Teil der Verwirrung bei dieser Funktion. Wenn Sie einen Stil während einer laufenden Sitzung wechseln, wird die Änderung gespeichert, aber erst berücksichtigt, nachdem Sie die Sitzung beendet haben.

Auf einem VPS ist dies mehr als eine rein kosmetische Einstellung. Das Transkript lesen Sie über eine SSH-Verbindung (Secure Shell), normalerweise in einem tmux-Fenster. Jede Zeile, die Claude ausgibt, ist daher eine Zeile, auf die Sie warten, und eine Zeile in einem Scrollback-Puffer mit begrenzter Größe.

Wo sich die Einstellung outputStyle befindet

Wählen Sie im Menü /config unter Output style einen Stil aus. Claude Code schreibt Ihre Auswahl im aktuell verwendeten Projekt nach .claude/settings.local.json.

Der eigenständige Befehl /output-style existiert nicht mehr. Er wurde in v2.1.73 als veraltet markiert und in v2.1.91 entfernt. In einer aktuellen Version bewirkt er daher nichts. Prüfen Sie vor dem Befolgen älterer Anleitungen, welche Version Sie verwenden. Die Versionen auf dieser Seite wurden im August 2026 geprüft.

claude --version

Sie können den Schlüssel auch manuell setzen. Vier Einstellungsdateien können ihn enthalten. Die spezifischere Datei hat Vorrang vor der allgemeineren.

  • ~/.claude/settings.json ist Ihre Benutzerdatei. Sie gilt für jedes Projekt auf diesem Computer.
  • .claude/settings.json ist die Projektdatei. Sie wird in git versioniert und gilt daher für alle, die das Repository klonen.
  • .claude/settings.local.json ist die lokale Projektdatei. Sie wird nicht versioniert und überschreibt die beiden vorgenannten Dateien. In diese Datei schreibt das Menü /config.
  • Verwaltete Einstellungen, die ein IT-Team über einen Systempfad wie /etc/claude-code/ unter Linux bereitstellt, haben Vorrang vor allen anderen Einstellungen.

Der Wert des Schlüssels ist der Stilname:

{
  "outputStyle": "Concise"
}

Für eine einzelne Sitzung können Sie denselben Schlüssel über die Befehlszeile übergeben. Das Flag --settings akzeptiert einen Pfad oder eine Inline-JSON-Zeichenfolge. Die darin enthaltenen Werte überschreiben bei diesem Aufruf dieselben Schlüssel aus den Einstellungsdateien:

claude --settings '{"outputStyle": "Concise"}'

Menübezeichnungen und Slash-Befehle wurden im Laufe der Entwicklung dieser Funktion mindestens einmal geändert. Der Schlüssel outputStyle wurde dagegen nicht geändert. Wenn ein Screenshot in einer Anleitung nicht mehr mit Ihrer Ansicht übereinstimmt, setzen Sie den Schlüssel direkt und prüfen Sie ihn mit /status. Dieser Befehl listet die wirksamen Einstellungsquellen auf.

Warum Ihr neuer Ausgabestil erst nach dem Leeren wirksam wird

Claude Code erstellt die Systemaufforderung einmal beim Start der Sitzung. Der Ausgabestil ist Teil dieser Systemaufforderung. Wenn Sie die Einstellung während einer laufenden Sitzung ändern, wird der Wert gespeichert, aber Sie sehen keine Änderung, weil die laufende Sitzung weiterhin die beim Start erstellte Aufforderung sendet. Der neue Stil wird beim nächsten /clear oder beim nächsten Start geladen.

/clear
/context

/context zeigt an, welche Inhalte das Kontextfenster derzeit belegen, aufgeschlüsselt nach Kategorien einschließlich der Systemaufforderung. Führen Sie den Befehl in einer neuen Sitzung für jeden Stil aus. Die Zeile zur Systemaufforderung ist die Eingangsseite Ihres Vergleichs. Damit lässt sich außerdem am schnellsten nachweisen, dass ein benutzerdefinierter Stil überhaupt geladen wurde. Eine umfassendere Erklärung dazu, welche Inhalte dieses Fenster füllen, finden Sie unter wie sich der Kontext in einer langen Claude-Code-Sitzung füllt.

Die Einstellung wartet aus einem bestimmten Grund, statt live angewendet zu werden. Die API bedient wiederholte Anfragen aus einem Prompt-Cache, der anhand des Anfangs jeder Anfrage abgeglichen wird. Die Systemaufforderung steht ganz am Anfang. Wenn sie während des Gesprächs neu geschrieben würde, wäre alles dahinter ungültig. Der nächste Turn müsste dann den gesamten bisherigen Verlauf als neue Eingabe erneut verarbeiten. Wenn der Stil zu Beginn der Sitzung festgelegt wird, entfallen diese Kosten. Zwischen Stilen zu wechseln ist günstig. Die Sitzung muss nur geleert werden.

Welche Änderungen die integrierten Ausgabestile am Transkript vornehmen

  • Default ist der normale System-Prompt von Claude Code, der für Softwareentwicklungsaufgaben geschrieben wurde.
  • Concise nennt zuerst das Ergebnis. Der Vorspann und die schrittweise Beschreibung entfallen. Die Antworten bleiben kurz, bis Sie nach Details fragen. Die zugrunde liegende Entwicklungsarbeit bleibt unverändert. Fehlerberichte und Sicherheitswarnungen werden nie gekürzt. Vor einer destruktiven Aktion wird weiterhin vollständig nach Ihrer Bestätigung gefragt. Für diesen Stil benötigen Sie Claude Code v2.1.237 oder höher.
  • Explanatory fügt zwischen den Arbeitsschritten eines Vorgangs erläuternde „Insights“ ein. Diese erklären, warum eine Implementierungsentscheidung getroffen wurde und welches Muster Ihre Codebasis bereits verwendet. Das Transkript wird dadurch absichtlich länger.
  • Learning geht noch weiter. Claude teilt diese Erkenntnisse und fordert Sie anschließend auf, kleine Teile des Codes selbst zu schreiben. Jede solche Stelle wird in der Datei mit einem TODO(human)-Kommentar markiert.
  • Proactive veranlasst Claude zum Handeln, statt nachzufragen. Bei routinemäßigen Entscheidungen trifft Claude sinnvolle Annahmen, statt auf eine Bestätigung zu warten.

Lesen Sie den letzten Punkt genau, denn er wird häufig missverstanden. Proactive ist eine Vorgabe im System-Prompt. Sie verändert, welche Aktionen Claude versucht. Der Berechtigungsmodus legt weiterhin fest, was ohne Rückfrage tatsächlich ausgeführt wird. Das ist die relevante Einstellung auf einem Server, den Sie unbeaufsichtigt laufen lassen. Dies wird unter dem automatischen Modus und den Berechtigungsmodi von Claude Code behandelt.

Wie sich ein Ausgabestil von CLAUDE.md, einem Hook und einem Subagenten unterscheidet

Diese Mechanismen wirken alle wie Anweisungen an Claude, wie es sich verhalten soll. Sie greifen jedoch auf unterschiedlichen Ebenen.

  • Ein Ausgabestil wird dem System-Prompt hinzugefügt. Er gilt für jede Antwort in der Hauptkonversation.
  • CLAUDE.md wird nach dem System-Prompt als User-Nachricht hinzugefügt. Dort gehören Projektrichtlinien und Fakten zur Codebasis hinein.
  • --append-system-prompt hängt bei einer einzelnen Ausführung Text an den System-Prompt an, ohne etwas zu entfernen. Es ist die einmalige Variante eines Ausgabestils.
  • Ein Hook ist ein Shell-Befehl, den Claude Code selbst ausführt, wenn ein Ereignis eintritt. Er wird vom Harness erzwungen und läuft daher unabhängig davon, ob Claude ihn ausgewählt hätte. Siehe was ein Claude-Code-Hook kann und was nicht.
  • Ein Subagent läuft mit einem eigenen System-Prompt und einem eigenen Werkzeugsatz.

Ein kurzer Test hilft bei der Entscheidung zwischen den ersten beiden Mechanismen. Fakten zu Ihrem Projekt gehören in CLAUDE.md, weil Claude sie kennen muss. Formulierungen gehören in einen Ausgabestil, weil es dabei darum geht, wie die Antwort formuliert ist. Alles, was unabhängig von der Entscheidung des Modells jedes Mal geschehen muss, gehört in einen Hook.

Ausgabestile gelten nur für die Hauptkonversation. Ein Subagent übernimmt Ihren Stil nicht, weil er eine eigene Konversation mit einem eigenen System-Prompt startet. Eine Abspaltung der aktuellen Konversation ist die Ausnahme, weil sie den System-Prompt des übergeordneten Prozesses exakt übernimmt. Wenn ein Subagent auf eine Weise schreibt, die Ihnen nicht gefällt, bearbeiten Sie die Datei dieses Agents und nicht Ihren Ausgabestil.

So schreiben Sie Ihren eigenen Ausgabestil

Ein benutzerdefinierter Ausgabestil ist eine Markdown-Datei mit Frontmatter. Speichern Sie sie in Ihrem Home-Verzeichnis, um sie in jedem Projekt zu verwenden, oder innerhalb des Repositorys, damit sie zusammen mit dem Code verwaltet wird. Das Benutzerverzeichnis ist ~/.claude/output-styles/ und das Projektverzeichnis ist .claude/output-styles/.

mkdir -p ~/.claude/output-styles
cat > ~/.claude/output-styles/terse-ops.md <<'EOF'
---
name: Terse ops
description: Command first, explanation after, for SSH sessions
keep-coding-instructions: true
---

Lead with the command or the file change. Put the explanation after it, in two sentences or fewer.

Do not narrate what you are about to do. Report what you did.

When a command can fail, print the one check that proves it worked and say what a healthy result looks like.
EOF

Starten Sie eine Sitzung und öffnen Sie /config. Ihr Stil erscheint mit der von Ihnen angegebenen Beschreibung in der Liste Output style. Wenn er fehlt, wird die Datei nicht gelesen: Prüfen Sie den Pfad und stellen Sie sicher, dass der ----Frontmatter-Block am Anfang der Datei steht. Der Dateiname wird zum Namen des Stils, sofern im Frontmatter nicht name gesetzt ist. Dieser Stil heißt daher Terse ops und nicht terse-ops.

Wählen Sie ihn aus oder setzen Sie den Schlüssel auf genau diesen Namen und löschen Sie:

{
  "outputStyle": "Terse ops"
}

Ein Feld legt fest, ob Ihre Datei eine Anpassung oder einen Ersatz darstellt. keep-coding-instructions ist standardmäßig auf false gesetzt. Das bedeutet, dass ein benutzerdefinierter Stil die integrierten Anweisungen für die Softwareentwicklung von Claude Code entfernt und ausschließlich Ihren Text verwendet. Diese integrierten Anweisungen legen fest, wie Claude den Umfang einer Änderung bestimmt und seine Arbeit überprüft. Lassen Sie das Feld bei einem Schreibassistenten oder Datenanalysten weg, wenn diese Funktionen nicht benötigt werden. Setzen Sie es bei allem, was weiterhin Code betrifft, auf true. Andernfalls fragen Sie sich möglicherweise, warum ein sorgfältig arbeitender Entwickler plötzlich seine eigene Arbeit nicht mehr überprüft.

description ist die Zeile, die der /config-Auswahldialog neben dem Namen anzeigt. Formulieren Sie sie für den Moment, in dem Sie sechs Monate später zwischen zwei Ihrer eigenen Stile wählen.

Warum ein knapper Stil über SSH anders ist

Auf einem VPS lesen Sie den Sitzungsverlauf über mehrere Ebenen, die ein lokales Terminal nicht hat. Jede dieser Ebenen macht ausführliche Ausgaben kostspieliger.

Scrollback ist der erste Faktor. In tmux speichert jedes Pane eine feste Anzahl von Zeilen. Diese Anzahl wird durch history-limit festgelegt und beträgt standardmäßig 2000. Ein ausführlicher Sitzungsverlauf füllt diesen Puffer schneller. Dadurch werden die früheren Teile Ihrer Sitzung schneller entfernt, und die Ausgabe, zu der Sie zurückscrollen wollten, ist nicht mehr verfügbar. Erhöhen Sie den Wert, wenn Sie mehr Platz benötigen:

echo 'set -g history-limit 20000' >> ~/.tmux.conf
tmux source-file ~/.tmux.conf

Danach erstellte Panes speichern jeweils 20000 Zeilen. Dafür benötigen sie pro Pane mehr Arbeitsspeicher. Bereits geöffnete Panes behalten das alte Limit, weil die Puffergröße beim Erstellen des Panes festgelegt wird. Wenn Sie das Sitzungs-Layout noch erstellen, beschreibt Claude Code in tmux auf einem VPS ausführen das Vorgehen.

Latenz ist der zweite Faktor. Die Antwort wird während ihrer Erstellung in Ihr Terminal übertragen. Bei einer Verbindung mit hoher Round-Trip-Zeit verbringen Sie Zeit damit, den einlaufenden Text zu beobachten, bevor die Antwort erscheint.

Output-Tokens sind der dritte Faktor. Jede beschreibende Zeile wird als Output abgerechnet. Explanatory und Learning sind absichtlich ausführlicher. Concise ist absichtlich kürzer, weil Claude dadurch standardmäßig kurze Antworten liefern soll.

Verlassen Sie sich auf keine Prozentangabe, auch nicht auf die Angaben auf dieser Seite. Wie groß der Unterschied ist, hängt von Ihren Prompts, Ihrem Modell und der angeforderten Arbeit ab. Messen Sie deshalb selbst, bevor und nachdem Sie die Einstellung ändern. Führen Sie dieselbe reale Aufgabe in zwei neuen Sitzungen aus: eine mit Default und eine mit Concise. Vergleichen Sie anschließend die Ergebnisse. Eine Statuszeile ist dafür die einfachste Messmethode, weil Claude Code Ihrem Skript ein JSON-Objekt über stdin übergibt, das bereits den Namen des Stils und die Tokenanzahl enthält:

cat > ~/.claude/statusline.sh <<'EOF'
#!/bin/bash
input=$(cat)
style=$(echo "$input" | jq -r '.output_style.name // "default"')
out=$(echo "$input" | jq -r '.context_window.total_output_tokens // 0')
cost=$(echo "$input" | jq -r '.cost.total_cost_usd // 0')
echo "style=$style out=$out cost=$cost"
EOF
chmod +x ~/.claude/statusline.sh

Verweisen Sie mit der Einstellung statusLine darauf:

{
  "statusLine": {
    "type": "command",
    "command": "~/.claude/statusline.sh"
  }
}

Am unteren Rand der Sitzung zeigt die Leiste jetzt den aktiven Stil neben der Anzahl der erzeugten Tokens an. Genau diese Werte benötigen Sie für den Vergleich. Das Skript benötigt jq, den JSON-Parser für die Kommandozeile. Installieren Sie ihn daher zuerst mit sudo apt install -y jq. Wenn die Leiste leer bleibt, führen Sie das Skript manuell aus und übergeben Sie ihm per Pipe etwas JSON. Eine Statuszeile, die mit einem Fehlercode ungleich null beendet wird, gibt nichts aus und meldet nichts. Eine benutzerdefinierte Statuszeile für Claude Code listet die übrigen Felder dieses Objekts auf. Informationen zur Abrechnung statt zur Sitzung finden Sie unter wohin die Tokens von Claude Code tatsächlich gehen und die Tools zur Erfassung der Claude-Code-Ausgaben.

So prüfen Sie, welcher Ausgabestil tatsächlich geladen ist

Verwenden Sie diese Prüfungen, statt zu raten.

  • /status listet die für diese Sitzung wirksamen Einstellungsquellen auf. Dazu gehört auch die Information, ob verwaltete Einstellungen einer Organisation aktiv sind.
  • /context zeigt den geladenen System-Prompt als Kategorie in der Aufschlüsselung des Kontextfensters an.
  • claude doctor wird in der Shell ausgeführt, ohne eine Sitzung zu starten. Der Befehl gibt Diagnoseinformationen zur Installation und zu den Einstellungen aus und meldet ungültige Einstellungsdateien.

Wenn ein Stil nicht angewendet wird, liegt die Ursache fast immer in einem von zwei Bereichen. Erstens wurde der Stil während der Sitzung geändert. Führen Sie dann /clear aus. Zweitens kann die Rangfolge der Einstellungen die Ursache sein: .claude/settings.local.json hat Vorrang vor .claude/settings.json, und beide haben Vorrang vor ~/.claude/settings.json. Der /config-Auswahldialog schreibt in die lokale Datei. Daher wird ein Stil, den Ihr Team in .claude/settings.json versioniert hat, auf jedem Rechner stillschweigend überschrieben, auf dem jemand zuvor das Menü verwendet hat. /status zeigt an, welche Quelle Vorrang hat.

Ein JSON-Syntaxfehler hat dasselbe Symptom, erfordert aber eine andere Lösung. claude doctor nennt die Datei, die nicht analysiert werden konnte. Führen Sie den Befehl aus, bevor Sie nach einer komplizierteren Ursache suchen.

FAQ

Warum funktioniert der Befehl /output-style nicht mehr?

Er wurde in v2.1.73 als veraltet markiert und in v2.1.91 entfernt. In einem Build von Mitte 2026 ist der Befehl daher nicht mehr vorhanden. Führen Sie claude --version aus, um Ihre Version zu prüfen. Wählen Sie den Stil unter Output style in /config aus, oder setzen Sie den Schlüssel outputStyle in einer Einstellungsdatei. Der Schlüssel ist weiterhin verfügbar, obwohl der Befehl entfernt wurde. Daher sollten Sie in Ihren eigenen Notizen festhalten, wie Sie ihn direkt setzen.

Ich habe meinen Ausgabestil geändert, aber es ist nichts passiert. Warum?

Der Ausgabestil ist Bestandteil des System-Prompts. Claude Code erstellt den System-Prompt einmal beim Start der Sitzung. Eine Änderung während der Sitzung wird zwar gespeichert, aber nicht angewendet, weil die laufende Sitzung weiterhin den beim Start erstellten Prompt sendet. Führen Sie /clear aus oder starten Sie eine neue Sitzung. Wenn die Änderung weiterhin nicht angewendet wird, führen Sie /status aus, um zu prüfen, welche Einstellungsquelle Vorrang hat. .claude/settings.local.json überschreibt .claude/settings.json, und beide überschreiben ~/.claude/settings.json.

Spart der Ausgabestil Concise Kosten?

Er reduziert die Anzahl der Ausgabetokens erwartungsgemäß, weil Claude angewiesen wird, Antworten standardmäßig kurz zu halten. Wie groß die Einsparung ist, hängt von Ihren Prompts und Ihrem Modell ab. Betrachten Sie veröffentlichte Prozentwerte daher als Messwerte aus einer anderen Nutzungssituation. Messen Sie Ihre eigenen Werte: Führen Sie in einer neuen Sitzung unter jedem Stil /context für die Eingabeseite aus. Führen Sie anschließend dieselbe Aufgabe unter jedem Stil aus und vergleichen Sie die Anzahl der Ausgabetokens. Concise kürzt weder Fehlerberichte noch Sicherheitswarnungen. Die für Sie wichtigsten Teile bleiben daher vollständig erhalten.

Ändert ein Ausgabestil die Antworten meiner Subagents?

Nein. Ausgabestile gelten nur für die Hauptunterhaltung. Ein Subagent startet eine eigene Unterhaltung mit einem eigenen System-Prompt und einem eigenen Werkzeugsatz. Eine Abzweigung der aktuellen Unterhaltung ist die Ausnahme, weil sie den System-Prompt der übergeordneten Unterhaltung exakt übernimmt. Um die Antworten eines Subagents zu ändern, bearbeiten Sie die eigene Datei dieses Agents.

Kann ein Ausgabestil Claude erlauben, Befehle ohne Nachfrage auszuführen?

Nein. Ein Ausgabestil ist Text im System-Prompt und kann daher nur beeinflussen, was Claude auszuführen versucht. Der Stil Proactive veranlasst Claude, bei Routineentscheidungen eher Annahmen zu treffen und zu handeln, statt zu warten. Er kann einen Befehl dennoch nicht genehmigen. Der Berechtigungsmodus legt fest, welche Befehle ohne Nachfrage ausgeführt werden. Diese Einstellung sollten Sie prüfen, bevor Sie eine Sitzung auf einem Server weiterlaufen lassen.