Claude Code

Claude Code 2.1.299: Idle Compaction verdichtet lange Sitzungen, bevor der Prompt-Cache abläuft

2 Min. Lesezeit KI-generiert

Nach 2.1.296 kommt direkt 2.1.299, zwei Nummern wurden übersprungen. Neu ist auch ein Schalter, der @-Dateinennungen nur noch als Pfad weitergibt statt als Inhalt.

Featured image for "Claude Code 2.1.299: Idle Compaction verdichtet lange Sitzungen, bevor der Prompt-Cache abläuft"

Claude Code 2.1.299 liegt seit dem 14. Oktober um 00:23 UTC im npm-Registry. Über 2.1.296 habe ich vor vier Tagen geschrieben, dazwischen sind zwei Nummern übersprungen worden. Das Release ist groß: über hundert Einträge im Changelog, und mindestens einer davon kann bestehende Konfigurationen stillegen.

Idle Compaction rechnet mit dem Cache, nicht mit dem Gespräch

Die interessanteste Neuerung passiert, während du nichts tust. Eine Unterhaltung über 200.000 Token, die rund 54 Minuten unangetastet liegen bleibt, wird im Terminal automatisch verdichtet, bevor ihr Prompt-Cache nach einer Stunde verfällt. Der Effekt: Deine nächste Nachricht muss das Gespräch nicht komplett neu durch das Modell schicken.

Die Schwelle lässt sich über CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS verschieben, abschalten geht mit "idleCompaction": false in der settings.json. Beides braucht mindestens Version 2.1.290.

Dazu kommt CLAUDE_CODE_DISABLE_FILE_MENTIONS. Ist die Variable gesetzt, bekommt Claude bei einer @-Nennung nur den Pfad und liest die Datei mit seinen eigenen Werkzeugen, statt den gesamten Inhalt in den Kontext gelegt zu bekommen. In der Agent-Ansicht setzen /effort und /fast jetzt, womit neue Sitzungen starten, und /usage warnt bei maximaler Effort-Stufe, bei Workflows, bei dauerhaft mitgeführtem Kontext und bei großen Werkzeugergebnissen.

Vier Lücken in der Sandbox sind zu

Sicherheitsseitig ist das Release ungemütlich zu lesen. Ein Befehl in der Sandbox konnte in einen --plugin-dir-Ordner schreiben, dessen Code Claude Code anschließend außerhalb der Sandbox neu lädt und ausführt. Unter macOS ließ sich ein gesperrter Pfad über seinen echten Ort erreichen, wenn der gesperrte Pfad durch einen Symlink führt. Der Planungsmodus hat Schreibvorgänge ausgeführt, die ein PreToolUse-Hook erlaubt hatte. Und mehrere Anfragen an Anthropic, darunter die für servergepflegte Einstellungen, trugen den API-Schlüssel eines fremden Gateways mit, wenn ANTHROPIC_BASE_URL gesetzt ist.

Wer MCP-Regeln mit Unterstrichen geschrieben hat, muss nachsehen

Der Eintrag, der Arbeit macht, steht weit unten. MCP-Erlaubnisregeln greifen ab jetzt nur noch auf den Server, den sie benennen: mcp__a erlaubt keinen Server mehr, der a__b oder a_ heißt. Richtig ist mcp__<server>__* mit dem vollständigen normalisierten Namen. Dasselbe gilt für die tools:-Listen von Agenten, und ein Server mit doppeltem Unterstrich im Namen muss dort ausgeschrieben stehen.

Das ist sauber, aber es ist eine Änderung an laufendem Betrieb. Wer in einem Team arbeitet, in dem jemand vor Monaten eine kurze Präfixregel gesetzt hat, merkt den Unterschied erst, wenn ein Werkzeug plötzlich nach Erlaubnis fragt. Die Deny- und Ask-Regeln hatten übrigens den umgekehrten Fehler: Sie griffen bei Servernamen mit doppeltem Unterstrich gar nicht.

Quellen

Claude CodeReleaseMCPSicherheitKontext