Effort-Level in Claude Code, wann low reicht und wann Du max brauchst
Effort steuert wie tief Claude nachdenkt, unabhängig vom Modell. Die fünf Stufen plus ultracode, wie Du live umschaltest, persistent setzt und pro Aufgabe die richtige wählst.
Die meisten Operator lassen Claude Code auf einer Stufe laufen und merken nie dass es fünf gibt. Effort ist der Regler für die Denk-Tiefe, also wie viel das Modell nachdenkt bevor es antwortet. Das ist nicht dasselbe wie das Modell selbst. Opus auf low denkt flacher als Opus auf max, obwohl beide dasselbe Modell sind. Wer nur über das Modell nachdenkt und den Effort ignoriert, lässt entweder Geld liegen oder verbrennt Tokens für eine Aufgabe die gar keine tiefe Reasoning-Kette braucht. Dieses Playbook zeigt Dir wie Du die Stufe live umschaltest, beim Start festlegst, persistent speicherst und pro Aufgabe die richtige wählst. Getestet mit Claude Code v2.1.206.
Schritt 1: Verstehe was Effort ist und was nicht
Effort steuert wie tief Claude pro Antwort nachdenkt. Low heißt minimales Nachdenken und die schnellste Antwort. Max heißt tiefste Reasoning-Kette ganz ohne Token-Deckel. Wichtig sind zwei Abgrenzungen. Effort ist etwas anderes als das Feature das Anthropic "extended thinking" nennt, und es ist etwas anderes als die Wahl zwischen Opus, Sonnet und Haiku.
Du kombinierst beide Regler. Ein starkes Modell auf low kann bei einer simplen Datei-Suche schneller und günstiger sein als ein schwaches Modell auf high bei einer Aufgabe die echtes Reasoning braucht. Wenn Du das nicht auseinanderhaeltst, drehst Du am falschen Knopf und wunderst Dich warum die Antwort trotz teurem Modell flach bleibt.
Schritt 2: Kenne die fünf Stufen plus ultracode
Es gibt fünf Stufen. low für minimales Nachdenken und die schnellsten Antworten, gut für Datei-Lookups und triviale Edits. medium für moderates Nachdenken. high für tiefes Reasoning, das ist bei den meisten Modellen der Default. xhigh für erweitertes Reasoning. Bei den meisten Modellen ist high der Default; einzelne Modelle wie Opus 4.7 starten auf xhigh. Auf Modellen die xhigh nicht unterstützen fällt es automatisch auf high zurück. Und max für die tiefste Denk-Tiefe ganz ohne Token-Grenze.
Dazu kommt ultracode, verfügbar seit Claude Code v2.1.203. Ultracode kombiniert xhigh-Effort mit dynamischer Workflow-Orchestrierung für substanzielle Aufgaben. Wenn Workflows in Deinem Setup deaktiviert sind, fällt ultracode auf reines xhigh zurück. Merk Dir die Stufen als Leiter von schnell und flach nach langsam und tief, dann fällt Dir die Wahl im Alltag leicht.
Schritt 3: Prüfe Deinen aktuellen Stand
Bevor Du etwas änderst, schau nach wo Du gerade stehst. Der interaktive Slider in /model zeigt Dir die aktive Stufe. In der VS Code Extension steht sie zusätzlich in der Statusline, Du siehst also live ob Du auf high oder max fährst.
Der Punkt: viele Operator glauben sie laufen auf high, weil das der Default-Klang ist, sitzen aber auf medium weil eine alte Config oder eine gesetzte Env-Var das überschreibt. Erst prüfen, dann drehen. Das erspart Dir das Rätselraten warum eine Antwort schwächer war als erwartet.
Schritt 4: Schalte live um mit /effort
Der schnellste Weg mitten in der Session ist der Slash-Command. Tipp /effort und Du bekommst ein Menü, oder gib die Stufe direkt mit: /effort high. Die Änderung wirkt sofort für den nächsten Turn, Du musst nichts neu starten.
Das ist der Regler den Du im Alltag am häufigsten anfasst. Eine kniffligere Refactoring-Frage kommt, Du drehst hoch, danach wieder runter für den Kleinkram. Ein bewusster Griff an diesen Slash-Command pro Aufgabe spart über den Tag spürbar Tokens.
Schritt 5: Lege es beim Start fest mit --effort
Wenn Du weißt dass eine ganze Session eine bestimmte Tiefe braucht, gib die Stufe direkt beim Start mit: claude --effort high. Das Launch-Flag überschreibt die konfigurierte effortLevel-Einstellung, gilt aber nur für diese eine Session und persistiert nicht darüber hinaus.
Praktisch ist das für einen headless-Lauf in CI oder für eine dedizierte Debug-Session bei der Du nicht jedes Mal /effort tippen willst. Du startest einmal mit der richtigen Stufe und hast Ruhe.
Schritt 6: Setze es persistent mit effortLevel
Für eine Dauer-Einstellung nutzt Du den Config-Key effortLevel. Die Stufen low, medium, high und xhigh persistieren, wenn Du sie in einer interaktiven Session setzt, sie überleben also den Neustart und gelten als Dein neuer Default.
Zwei Stufen sind bewusst ausgenommen. max und ultracode lassen sich NICHT als Default speichern und gelten nur für die laufende Session. Für max gibt es eine Ausnahme: setzt Du es über die Umgebungsvariable CLAUDE_CODE_EFFORT_LEVEL, wirkt es auch über Sessions hinweg. ultracode akzeptiert diese Env-Var dagegen nicht. Das ist kein Bug sondern Absicht, damit Du nicht aus Versehen dauerhaft mit maximaler Token-Last durch jeden Kleinkram fährst.
Schritt 7: Env-Var und die Precedence-Reihenfolge
Es gibt einen dritten Weg, die Umgebungsvariable CLAUDE_CODE_EFFORT_LEVEL. Nützlich wenn Du Effort pro Projekt oder pro Shell setzen willst, zum Beispiel in einem Projekt-spezifischen Startskript.
Wichtig ist die Reihenfolge wer gewinnt wenn sich Werte widersprechen. Die Env-Var hat die höchste Priorität, danach kommen die konfigurierten Settings, ganz unten die Modell-Defaults. Wenn Dein /effort also scheinbar ignoriert wird, ist die häufigste Ursache eine gesetzte CLAUDE_CODE_EFFORT_LEVEL die alles andere überstimmt. Das war bei mir der Klassiker: eine alte Zeile in der .bashrc hat wochenlang jede Slider-Änderung stumm überschrieben.
Schritt 8: max und ultracode, die Session-Waffen
max holst Du raus wenn eine Aufgabe wirklich tiefes, mehrstufiges Denken braucht und Du die Token-Kosten in Kauf nimmst. Es gibt keine Token-Grenze auf dieser Stufe, das ist Feature und Warnung zugleich. Für eine harte Architektur-Frage oder ein Debugging über viele Dateien ist das genau richtig, für den Alltag ist es Verschwendung.
ultracode ist die Sonderstufe für substanzielle Aufgaben, xhigh-Effort plus automatische Workflow-Orchestrierung. Beide sind Session-only, sie verschwinden beim nächsten Start. Nimm sie gezielt für einen dicken Brocken und dreh danach bewusst wieder runter, sonst läuft Dir die Rechnung davon ohne dass Du besseren Output bekommst.
Schritt 9: Wähle die Stufe pro Aufgabe
Als Faustregel: low für Lookups, Umbenennungen und kurze Fragen wo die Antwort quasi feststeht. high oder xhigh für echtes Coden und agentische Arbeit mit mehreren Tool-Schritten, das ist der Sweet Spot für die meiste Entwicklungsarbeit. max oder ultracode für die seltenen komplexen Multi-Step-Probleme, Architektur-Entscheidungen, kniffliges Debugging.
Niedrigere Stufen sparen Tokens und Kosten, höhere kaufen Dir Denk-Tiefe. Der teure Fehler ist beides zu verwechseln und alles pauschal auf einer Stufe zu lassen. Wer den ganzen Tag auf max fährt zahlt für Denken das die Aufgabe nicht braucht, wer auf low festklebt bekommt bei harten Fragen flache Antworten und merkt nicht warum.
Schritt 10: Setze zurück mit /effort auto
Wenn Du den Überblick verloren hast welche Stufe gerade greift und woher, setz einfach zurück. /effort auto bringt Dich auf den Modell-Default. Der Default variiert je Modell, die meisten stehen auf high. Von dort aus entscheidest Du sauber neu.
Diese eine Zeile ist Dein Reset-Knopf wenn Config, Env-Var und Slash-Command sich gegenseitig überschrieben haben und Du nicht mehr weißt was wirklich aktiv ist. Im Zweifel /effort auto, dann bewusst hochdrehen wo Du es brauchst.
Was als nächstes
Effort und Kosten hängen direkt zusammen, höhere Stufen ziehen mehr Tokens. Wenn Du das im Griff behalten willst, lies das Playbook Cost Controls für Daily Driver. Wenn Deine Sessions lang werden und Du Effort mit Context-Management kombinieren willst, passt Context Window managen. Und wenn Du verstehen willst warum tiefes Reasoning bei manchen Aufgaben überhaupt hilft, geh zurück zur Lektion Reasoning und Extended Thinking. Für strukturierte große Aufgaben lohnt sich die Kombi mit Plan Mode richtig nutzen.
Quellen
- Claude Code Model Config, Effort-Level, Reset und Precedence: https://code.claude.com/docs/en/model-config
- Claude Code Commands,
/effort: https://code.claude.com/docs/en/commands - Claude Code CLI Reference,
--effortFlag und Werte inkl. ultracode: https://code.claude.com/docs/en/cli-reference