Claude Code 2.1.317 liegt seit dem 2. November um 23:57 UTC auf npm. Der Changelog ist ungewöhnlich lang, und zwei Einträge darin handeln von derselben Sache: Daten, die eine Sitzung verlassen, ohne dass jemand gefragt wurde. Über 2.1.316 habe ich am Samstag geschrieben.
Die Mailadresse verlässt die Sitzung nicht mehr unbemerkt
Neu ist eine Prüfung, die nachfragt, bevor ein Web- oder Shell-Tool-Aufruf die Mailadresse deines Kontos ins Netz schickt. Das klingt klein, trifft aber einen Fall, der im Alltag dauernd vorkommt: Ein Skript baut einen User-Agent, ein curl trägt eine Kontaktadresse ein, ein API-Aufruf hängt die Adresse als Parameter an. Bisher passierte das stillschweigend.
/schedule warnt vor ungefragten Connectors
Der zweite Eintrag derselben Art: /schedule meldet jetzt, wenn eine neue geplante
Cloud-Aufgabe Connectors mitbekommt, die du nicht angefordert hast, und sagt dazu, wie du
sie wieder loswirst. Eine geplante Aufgabe läuft ohne Zuschauer. Welche Connectors sie
dabei anfassen darf, ist genau die Angabe, die man vorher sehen will und nicht hinterher.
onFailure: block für Hooks im Agent SDK
Für Hook-Callbacks im Agent SDK gibt es onFailure: "block". Bisher galt: Wenn ein
Callback scheitert, läuft die Aktion trotzdem. Mit der neuen Einstellung blockiert ein
gescheiterter Callback sie. Wer Hooks als Leitplanke baut und nicht als Protokoll, hat
damit zum ersten Mal die Garantie, die er eigentlich immer gemeint hat.
Ein Kostenbericht, der IdP-Gruppen mitschreibt
Die Admin-API der Claude-Apps-Gateways bekommt GET /v1/organizations/analytics/cost.
Der Endpunkt liest vergangene Ausgaben über einen Datumsbereich, insgesamt, je Entwickler,
je Tag oder je IdP-Gruppe. Damit die letzte Aufteilung funktioniert, hält der Gateway nun
täglich fest, in welchen IdP-Gruppen jeder Entwickler war, aufbewahrt für die Dauer von
admin.identity_retention_days. Dazu passt, dass die OTel-Metriken um anthropic.plan,
anthropic.seat_type, anthropic.provider und anthropic.custom_base_url erweitert
wurden.
Für Selfhoster gibt es außerdem CLAUDE_CODE_DISABLE_NESTED_SESSION_ID: auf 1 gesetzt,
nutzt ein claude -p innerhalb einer Sitzung wieder deren ID und Transkript, wie in
früheren Versionen.
Drei Zeilen über Datenabfluss, und das ist das Muster
Mailadresse, Connectors, IdP-Gruppen: In einem einzigen Release stehen zwei neue Rückfragen vor dem Abfluss von Daten und ein neuer Endpunkt, der Daten über Menschen aufbewahrt, um Kosten zuzuordnen. Das ist kein Widerspruch, sondern dieselbe Entwicklung aus zwei Richtungen. Claude Code wird in Organisationen eingesetzt, in denen jemand erklären muss, wer was ausgegeben hat, und in denen jemand anders erklären muss, welche Daten das Haus verlassen.
Mir gefällt, dass die Rückfragen zuerst kommen. Ein Werkzeug, das vor dem Senden fragt, darf hinterher auch mehr protokollieren.