Probleem
Claude Code verbruikt aanzienlijke hoeveelheden tokens (geschat op 15-20%) door elke 30 seconden het volledige transcript van achtergrondagents naar het model te sturen. Dit gebeurt enkel om een statusregel van 3-5 woorden in het agents-paneel bij te werken, wat geen invloed heeft op de eigenlijke conversatie. Er is momenteel geen officiële instelling om deze functie uit te schakelen.
Oplossing
De auteur stelt een oplossing voor via no-agent-summary.js, een Bun-preload script. Dit script wrap't setTimeout en setInterval om specifiek de timers die verantwoordelijk zijn voor de agent_summary te detecteren en te blokkeren, terwijl andere timers intact blijven.
Installatie en Werking
- Installatie: Het script moet worden gedownload en geladen via de omgevingsvariabele
BUN_OPTIONS="--preload /pad/naar/no-agent-summary.js".
- Verificatie: Gebruikers kunnen via logbestanden (
CCAGENTSUMMARY_LOG) en OpenTelemetry-exports controleren of de preload actief is en of de summarizer-verzoeken daadwerkelijk zijn onderdrukt.
- Nuances: De oplossing is getest op Linux. Omdat de daemon de omgeving overneemt, moet
claude daemon stop --any worden uitgevoerd na de configuratie om de wijzigingen door te voeren.
Achtergrond
Uit een analyse van de versies blijkt dat deze functie sinds augustus 2026 standaard aan staat. Hoewel er een goedkopere "short mode" bestaat, is deze in de huidige builds uitgeschakeld en wordt het volledige transcript gebruikt, wat leidt tot hoge kosten en snellere uitputting van rate-limits.
Claude Code verspilt ~15-20% van je tokens aan een statusregel van 3 woorden: een Bun-preload om agent_summary uit te schakelen
Getest op Linux, Claude Code 2.1.257–2.1.312 (zie 'Geteste versies'). Het binary-bestand is niet gewijzigd (BUN_OPTIONS=--preload). Let op: een update kan deze wijziging stilzwijgend ongedaan maken; zie de sectie 'Verificatie'.
TL;DR
Voer de volgende commando's uit:
curl -fsSL https://gist.githubusercontent.com/flamerix-ai/c3905705cc4205e5de3011fa2e74efce/raw/no-agent-summary.js -o ~/.local/share/no-agent-summary.js
claude daemon stop --any
BUN_OPTIONS="${BUN_OPTIONS:+$BUN_OPTIONS }--preload $HOME/.local/share/no-agent-summary.js" claude
Om dit permanent te maken voor elk Claude Code-proces, zie de sectie Installatie.
Het probleem
Elke ~30 seconden stuurt Claude Code, voor elke achtergrondagent, het volledige transcript van die agent naar het model van de agent (meestal Opus) met het verzoek om "je meest recente actie in 3-5 woorden te beschrijven". Het antwoord wordt uitsluitend gebruikt om de statusregel van de agent in het agents-paneel bij te werken; het bereikt nooit het hoofdmodel of jouw conversatie.
Er is geen instelling om dit uit te schakelen, en sinds versie 2.1.232 (augustus 2026) staat deze functie standaard aan.
De anomalie werd gedetecteerd door DRIM in de OpenTelemetry-export van Claude Code: het groeperen van claudecode.apirequest gebeurtenissen per querysource liet zien dat agentsummary meer kostte dan het hoofdgesprek zelf.
Statistieken (gebaseerd op OpenTelemetry-export):
| Metriek | Week vóór de hook | 2 dagen na de hook |
| Aandeel van alle Claude Code uitgaven | 16,4% (hoofdconversatie: 15,7%) | 0% |
| Aandeel van alle API-verzoeken | 19,7% (ongeveer 1 op de 5) | 0% |
| Deel van die uitgaven aan Opus | 96% | — |
| Input tokens per output token | $\approx$ 9.000 : 1 | — |
Opmerking: Met 'uitgaven' wordt hier de eigen schatting per verzoek van Claude Code (cost_usd) bedoeld, niet een factuur. Bij een abonnement gaat het om het verlies van ruimte binnen de rate-limit. Andere onafhankelijke metingen (#86879) bevestigen een verbruik van 18–26%.
De oplossing (hoe het werkt)
no-agent-summary.js is een Bun-preload (ongeveer 80 regels code). Het wrap't setTimeout en setInterval. Wanneer de brontekst van een callback een summarizer-anker bevat (bijvoorbeeld de logregel [AgentSummary] Timer fired), retourneert de hook een inactieve handle in plaats van de timer te activeren. Alle andere timers blijven ongemoeid. In de OpenTelemetry-export zijn de onderdrukte verzoeken de claudecode.apirequest gebeurtenissen met querysource = agentsummary.
Waarom een timer-hook en niet iets simpelers? De module wordt geleverd als voorgecompileerde Bun-bytecode, dus het bewerken van de JS-tekst in het binary-bestand heeft geen effect. Bovendien gaat de API-client niet via een gewrapte globalThis.fetch. Echter, Function.prototype.toString retourneert nog steeds de bron van een callback, zelfs als deze vanuit bytecode wordt uitgevoerd, waardoor de timer herkend kan worden aan een string erin. De inactieve timer gebruikt precies $2^{31}-1$ ms: Node en Bun behandelen een grotere vertraging als 1 ms, dus een "oneindige" vertraging zou direct afgaan.
Installatie
- Plaats
no-agent-summary.js op een stabiele locatie en noteer het absolute pad.
- Stel
BUN_OPTIONS globaal in, zodat elk Claude Code-proces dit oppikt. Kies een van de volgende opties:
Voor ~/.profile, ~/.bashrc of ~/.zshrc:
export BUN_OPTIONS="${BUN_OPTIONS:+$BUN_OPTIONS }--preload /absoluut/pad/no-agent-summary.js"
Voor ~/.config/fish/config.fish:
set -gx BUN_OPTIONS "--preload /absoluut/pad/no-agent-summary.js"
Voor ~/.config/environment.d/50-no-agent-summary.conf (systemd user env):
BUN_OPTIONS=--preload /absoluut/pad/no-agent-summary.js
Alternatief: Een wrapper genaamd claude (geplaatst vóór de normale PATH):
#!/bin/sh
HOOK=/absoluut/pad/no-agent-summary.js
case " ${BUN_OPTIONS-} " in
*" --preload $HOOK "*) ;;
*) export BUN_OPTIONS="${BUN_OPTIONS:+$BUN_OPTIONS }--preload $HOOK" ;;
esac
: "${CC_AGENT_SUMMARY_LOG:=${XDG_RUNTIME_DIR:-/tmp}/no-agent-summary.log}"
export CC_AGENT_SUMMARY_LOG
exec /pad/naar/de/echte/claude "$@"
Herstart de daemon en elke reeds actieve sessie, en start Claude Code vervolgens vanuit een omgeving waarin BUN_OPTIONS is ingesteld:
claude daemon stop --any
Omgevingsvariabelen
| Variabele | Waarden | Effect |
CCAGENTSUMMARY_MODE | off (standaard), pass | off onderdrukt de summary-timer. pass dient als A/B-controle: laadt en logt, maar laat elke timer ongemoeid. Andere waarden geven een waarschuwing op stderr en werken als off. |
CCAGENTSUMMARY_LOG | bestandspad (optioneel) | Voegt bij laden een regel toe over de actieve modus, Bun-versie en hooks, gevolgd door één regel per gematchte timer (eerste 20) en een exit-count. |
CCAGENTSUMMARY_MARKER | bestandspad (optioneel) | Wordt bij laden overschreven met de regel "preload active...". |
Nuances
- Herstart de daemon: De daemon, pty-host en vooraf opgewarmde
bg-spare sessies erven de omgeving over van de cliënt die de daemon startte. Een daemon die is gestart vóórdat BUN_OPTIONS was ingesteld, blijft onbehookte sessies spawnen. Gebruik daarom claude daemon stop --any.
- Headless runs: Dit is ook nodig voor
claude -p, cron, CI en editor-integraties.
- Platform: Getest op Linux; macOS en Windows zijn niet getest. Op Windows zal de
/$bunfs/ gate waarschijnlijk de hook nooit installeren.
- A/B Test: Met
CCAGENTSUMMARY_MODE=pass wordt de hook geladen maar worden alle timers geactiveerd. De samenvattingen komen dan terug, wat bewijst dat de off-resultaten door de hook worden veroorzaakt.
- Achtergrondprocessen: De daemon, pty-host en
bg-spare moeten --preload in hun omgeving hebben (/proc/<pid>/environ op Linux); zo niet, herstart de daemon.
Verificatie (na elke update)
Controleren of de preload is geladen:
BUN_OPTIONS="--preload $HOME/.local/share/no-agent-summary.js" CC_AGENT_SUMMARY_LOG=/tmp/nas.log claude --version && cat /tmp/nas.log
Verwacht resultaat: preload active mode=off .... Als er geen regel verschijnt, heeft BUN_OPTIONS het proces niet bereikt of is het pad niet absoluut.
Controleren of de timer is onderdrukt: Gebruik dezelfde BUNOPTIONS en CCAGENTSUMMARYLOG=/tmp/nas.log en draai een achtergrond-subagent voor een minuut of twee. De log moet tonen: summary timer #1 suppressed (setTimeout, delay=30000) Daarnaast stopt de status in het agent-paneel met updaten. Als je OpenTelemetry exporteert, moet querysource = agentsummary op nul blijven. Dit is de enige controle die elke mogelijke fout detecteert.
Fail-open scenario's
De matching gebeurt op basis van brontekst: een anker moet zich in de callback bevinden die aan de timer wordt meegegeven. Als een update dit verandert, matcht de hook niets en komen de samenvattingen stilzwijgend terug. Dit kan gebeuren als:
- De logregel of
query-source id wordt hernoemd.
- De callback wordt doorgegeven via
fn.bind(...) (geen bron in toString) of een andere wrapper.
- De strings worden verplaatst naar een gedeelde constante buiten de callback.
- De timer wordt verplaatst naar een niet-gewrapte API (timers/promises, een scheduler-loop).
Voer daarom na elke update de Verificatie opnieuw uit.
Effect
Wij gebruiken deze hook voor elk Claude Code-proces op onze machine (versie 2.1.301). Sinds die tijd zijn er nul agent_summary verzoeken geweest, en geen enkele andere zij-query is gegroeid om deze plek in te nemen.
- Functionaliteit: Subagents, achtergrondagents, geforkte skills en achtergrondsessies werken normaal; alleen de summary-fork wordt overgeslagen.
- Zichtbare wijziging: De status in het per-agent paneel stopt met updaten; SDK
task_progress bevat geen samenvatting.
- Overhead: Eén
Function.prototype.toString per unieke timer-callback, gecached in een WeakMap.
- Snelheid:
claude --version ging van $\approx 10\text{ ms} \rightarrow \approx 17\text{ ms}$ (één meting).
Geteste versies
Getest met de Linux x64 binary van npm @anthropic-ai/claude-code-linux-x64.
| Versie | Gepubliceerd | sha256 | Status | Summary forks in $\approx 2,5\text{ min}$ run (Geen hook / Pass / Off) | Notities |
| 2.1.312 | 2026-10-27 | 4f4178ce41d8 | OK | 5 / 5 / 0 | Nieuwste versie op 2026-10-28; interactief: 6 zonder hook, 0 met off. |
| 2.1.310 | 2026-10-23 | b73676430af1 | OK | 5 / 5 / 0 | |
| 2.1.308 | 2026-10-22 | 356733f185fa | OK | 5 / 6 / 0 | Stabiel op 2026-10-28; de pass-run agent nam 9 stappen in plaats van 8. |
| 2.1.301 | 2026-10-15 | bc1aad9982c7 | OK | 5 / 5 / 0 | In dagelijks gebruik sinds 2026-10-26; 0 agent_summary requests in telemetry. |
| 2.1.280 | 2026-09-22 | 1e08503dbdf3 | OK | 1 / 1 / 0 | Timer vuurde 11 / 11 / 0 keer. Interactief: -p kan samenvattingen op deze versie niet inschakelen. |
| 2.1.257 | 2026-09-01 | 9a64bda9d872 | OK | 1 / 1 / 0 | Timer vuurde 11 / 11 / 0 keer. |
Waarom is er geen instelling voor?
De gedocumenteerde switch schakelt de functie alleen in. De SDK-optie agentProgressSummaries staat standaard op false, maar in het bundle-bestand is dit onderdeel van een OR-operatie, en elk codepad dat dit schrijft, zet het op true. Hierdoor verandert false niets, en de ongedocumenteerde CLAUDECODEAGENTPROGRESSSUMMARIES kan samenvattingen ook alleen inschakelen.
Het interval wordt bepaald door de server. Dit komt voort uit een server-vlag per model-familie en is beperkt tot 30–240 s. De standaardwaarde is al het minimum; er is geen waarde die de timer uitschakelt.
De voor de hand liggende omgevingsvariabelen ontbreken. DISABLENONESSENTIALMODELCALLS komt helemaal niet voor in het binary-bestand. CLAUDECODEFORKSUBAGENT=0 en CLAUDECODEDISABLEBACKGROUND_TASKS=1 stoppen het wel, maar schakelen daarmee ook fork-subagents of achtergrondagents uit.
De prompt-cache maakt het goedkoper, maar niet goedkoop. Ongeveer 98% van deze calls leest het transcript uit de cache; de $\approx 2\%$ die een cold cache raken, veroorzaken een derde van de kosten.
Kosten-tools die transcripts lezen, zien dit niet. Deze verzoeken worden niet weggeschreven naar de sessielogs op disk (#104358); alleen de OpenTelemetry-export toont ze. De documentatie over tokengebruik in de achtergrond vermeldt dit ook niet, terwijl de rij-samenvattingen in Agent View worden beschreven als een Haiku-klasse model dat elke paar minuten verfrist.
Er bestaat al een goedkopere variant, maar deze is uitgeschakeld. Versie 2.1.310 bevat een "short mode": ongeveer 2k tokens aan notities in plaats van het volledige transcript, eventueel geschreven door een kleiner model. De standaardinstelling blijft het volledige transcript, en alleen server-vlaggen kunnen dit wijzigen.
Tijdlijn (2026)
| Versie (Datum) | Wat is er veranderd |
| 2.1.32 (5 feb) | De code verschijnt voor het eerst; inactief in publieke builds. |
| 2.1.72 (9 mrt) | Bereikbaar als een SDK opt-in. |
| 2.1.117 (21 apr) | Bereikbaar in de interactieve CLI achter de fork-gate of een server-rollout. |
| $\le$ 2.1.220 (24 jul) | Geforkte skills worden altijd samengevat. |
| 2.1.232 (13 aug) | Standaard aan voor interactieve achtergrondagents. |
| 2.1.300 (14 okt) | Interval wordt server-tunable (30–240 s). |
| 2.1.310 (23 okt) | De goedkopere "short mode" wordt toegevoegd, maar blijft uitgeschakeld. |
In onze telemetry steeg het wekelijkse aandeel van de uitgaven van 3,5–7% in juli naar 7,3% en vervolgens 11,8% in de week dat we versie 2.1.233 installeerden, om tegen half oktober uit te komen op ongeveer 16%.
Licentie en disclaimer
MIT © 2026 Flamerix AI. Verstrekt "as is", zonder enige garantie; gebruik is op eigen risico. Flamerix AI is niet aansprakelijk voor schade, gegevensverlies of accountmaatregelen die voortvloeien uit het gebruik hiervan. Het wijzigen van het runtime-gedrag van een client kan in strijd zijn met de servicevoorwaarden van de provider; het controleren hiervan is uw verantwoordelijkheid.
"Claude" en "Claude Code" zijn handelsmerken van Anthropic, PBC. Dit project is onafhankelijk en is niet gelieerd aan, gesponsord door of onderschreven door Anthropic.
Claude Code verspilt ~15-20% van je tokens aan een statusregel van 3 woorden: een Bun-preload om agent_summary uit te schakelen
Getest op Linux, Claude Code 2.1.257–2.1.312 (zie 'Geteste versies'). Het binary-bestand is niet gewijzigd (BUN_OPTIONS=--preload). Let op: een update kan deze wijziging stilzwijgend ongedaan maken; zie de sectie 'Verificatie'.
TL;DR
Voer de volgende commando's uit:
curl -fsSL https://gist.githubusercontent.com/flamerix-ai/c3905705cc4205e5de3011fa2e74efce/raw/no-agent-summary.js -o ~/.local/share/no-agent-summary.js
claude daemon stop --any
BUN_OPTIONS="${BUN_OPTIONS:+$BUN_OPTIONS }--preload $HOME/.local/share/no-agent-summary.js" claude
Om dit permanent te maken voor elk Claude Code-proces, zie de sectie Installatie.
Het probleem
Elke ~30 seconden stuurt Claude Code, voor elke achtergrondagent, het volledige transcript van die agent naar het model van de agent (meestal Opus) met het verzoek om "je meest recente actie in 3-5 woorden te beschrijven". Het antwoord wordt uitsluitend gebruikt om de statusregel van de agent in het agents-paneel bij te werken; het bereikt nooit het hoofdmodel of jouw conversatie.
Er is geen instelling om dit uit te schakelen, en sinds versie 2.1.232 (augustus 2026) staat deze functie standaard aan.
De anomalie werd gedetecteerd door DRIM in de OpenTelemetry-export van Claude Code: het groeperen van claudecode.apirequest gebeurtenissen per querysource liet zien dat agentsummary meer kostte dan het hoofdgesprek zelf.
Statistieken (gebaseerd op OpenTelemetry-export):
| Metriek | Week vóór de hook | 2 dagen na de hook |
| Aandeel van alle Claude Code uitgaven | 16,4% (hoofdconversatie: 15,7%) | 0% |
| Aandeel van alle API-verzoeken | 19,7% (ongeveer 1 op de 5) | 0% |
| Deel van die uitgaven aan Opus | 96% | — |
| Input tokens per output token | $\approx$ 9.000 : 1 | — |
Opmerking: Met 'uitgaven' wordt hier de eigen schatting per verzoek van Claude Code (cost_usd) bedoeld, niet een factuur. Bij een abonnement gaat het om het verlies van ruimte binnen de rate-limit. Andere onafhankelijke metingen (#86879) bevestigen een verbruik van 18–26%.
De oplossing (hoe het werkt)
no-agent-summary.js is een Bun-preload (ongeveer 80 regels code). Het wrap't setTimeout en setInterval. Wanneer de brontekst van een callback een summarizer-anker bevat (bijvoorbeeld de logregel [AgentSummary] Timer fired), retourneert de hook een inactieve handle in plaats van de timer te activeren. Alle andere timers blijven ongemoeid. In de OpenTelemetry-export zijn de onderdrukte verzoeken de claudecode.apirequest gebeurtenissen met querysource = agentsummary.
Waarom een timer-hook en niet iets simpelers? De module wordt geleverd als voorgecompileerde Bun-bytecode, dus het bewerken van de JS-tekst in het binary-bestand heeft geen effect. Bovendien gaat de API-client niet via een gewrapte globalThis.fetch. Echter, Function.prototype.toString retourneert nog steeds de bron van een callback, zelfs als deze vanuit bytecode wordt uitgevoerd, waardoor de timer herkend kan worden aan een string erin. De inactieve timer gebruikt precies $2^{31}-1$ ms: Node en Bun behandelen een grotere vertraging als 1 ms, dus een "oneindige" vertraging zou direct afgaan.
Installatie
- Plaats
no-agent-summary.js op een stabiele locatie en noteer het absolute pad.
- Stel
BUN_OPTIONS globaal in, zodat elk Claude Code-proces dit oppikt. Kies een van de volgende opties:
Voor ~/.profile, ~/.bashrc of ~/.zshrc:
export BUN_OPTIONS="${BUN_OPTIONS:+$BUN_OPTIONS }--preload /absoluut/pad/no-agent-summary.js"
Voor ~/.config/fish/config.fish:
set -gx BUN_OPTIONS "--preload /absoluut/pad/no-agent-summary.js"
Voor ~/.config/environment.d/50-no-agent-summary.conf (systemd user env):
BUN_OPTIONS=--preload /absoluut/pad/no-agent-summary.js
Alternatief: Een wrapper genaamd claude (geplaatst vóór de normale PATH):
#!/bin/sh
HOOK=/absoluut/pad/no-agent-summary.js
case " ${BUN_OPTIONS-} " in
*" --preload $HOOK "*) ;;
*) export BUN_OPTIONS="${BUN_OPTIONS:+$BUN_OPTIONS }--preload $HOOK" ;;
esac
: "${CC_AGENT_SUMMARY_LOG:=${XDG_RUNTIME_DIR:-/tmp}/no-agent-summary.log}"
export CC_AGENT_SUMMARY_LOG
exec /pad/naar/de/echte/claude "$@"
Herstart de daemon en elke reeds actieve sessie, en start Claude Code vervolgens vanuit een omgeving waarin BUN_OPTIONS is ingesteld:
claude daemon stop --any
Omgevingsvariabelen
| Variabele | Waarden | Effect |
CCAGENTSUMMARY_MODE | off (standaard), pass | off onderdrukt de summary-timer. pass dient als A/B-controle: laadt en logt, maar laat elke timer ongemoeid. Andere waarden geven een waarschuwing op stderr en werken als off. |
CCAGENTSUMMARY_LOG | bestandspad (optioneel) | Voegt bij laden een regel toe over de actieve modus, Bun-versie en hooks, gevolgd door één regel per gematchte timer (eerste 20) en een exit-count. |
CCAGENTSUMMARY_MARKER | bestandspad (optioneel) | Wordt bij laden overschreven met de regel "preload active...". |
Nuances
- Herstart de daemon: De daemon, pty-host en vooraf opgewarmde
bg-spare sessies erven de omgeving over van de cliënt die de daemon startte. Een daemon die is gestart vóórdat BUN_OPTIONS was ingesteld, blijft onbehookte sessies spawnen. Gebruik daarom claude daemon stop --any.
- Headless runs: Dit is ook nodig voor
claude -p, cron, CI en editor-integraties.
- Platform: Getest op Linux; macOS en Windows zijn niet getest. Op Windows zal de
/$bunfs/ gate waarschijnlijk de hook nooit installeren.
- A/B Test: Met
CCAGENTSUMMARY_MODE=pass wordt de hook geladen maar worden alle timers geactiveerd. De samenvattingen komen dan terug, wat bewijst dat de off-resultaten door de hook worden veroorzaakt.
- Achtergrondprocessen: De daemon, pty-host en
bg-spare moeten --preload in hun omgeving hebben (/proc/<pid>/environ op Linux); zo niet, herstart de daemon.
Verificatie (na elke update)
Controleren of de preload is geladen:
BUN_OPTIONS="--preload $HOME/.local/share/no-agent-summary.js" CC_AGENT_SUMMARY_LOG=/tmp/nas.log claude --version && cat /tmp/nas.log
Verwacht resultaat: preload active mode=off .... Als er geen regel verschijnt, heeft BUN_OPTIONS het proces niet bereikt of is het pad niet absoluut.
Controleren of de timer is onderdrukt: Gebruik dezelfde BUNOPTIONS en CCAGENTSUMMARYLOG=/tmp/nas.log en draai een achtergrond-subagent voor een minuut of twee. De log moet tonen: summary timer #1 suppressed (setTimeout, delay=30000) Daarnaast stopt de status in het agent-paneel met updaten. Als je OpenTelemetry exporteert, moet querysource = agentsummary op nul blijven. Dit is de enige controle die elke mogelijke fout detecteert.
Fail-open scenario's
De matching gebeurt op basis van brontekst: een anker moet zich in de callback bevinden die aan de timer wordt meegegeven. Als een update dit verandert, matcht de hook niets en komen de samenvattingen stilzwijgend terug. Dit kan gebeuren als:
- De logregel of
query-source id wordt hernoemd.
- De callback wordt doorgegeven via
fn.bind(...) (geen bron in toString) of een andere wrapper.
- De strings worden verplaatst naar een gedeelde constante buiten de callback.
- De timer wordt verplaatst naar een niet-gewrapte API (timers/promises, een scheduler-loop).
Voer daarom na elke update de Verificatie opnieuw uit.
Effect
Wij gebruiken deze hook voor elk Claude Code-proces op onze machine (versie 2.1.301). Sinds die tijd zijn er nul agent_summary verzoeken geweest, en geen enkele andere zij-query is gegroeid om deze plek in te nemen.
- Functionaliteit: Subagents, achtergrondagents, geforkte skills en achtergrondsessies werken normaal; alleen de summary-fork wordt overgeslagen.
- Zichtbare wijziging: De status in het per-agent paneel stopt met updaten; SDK
task_progress bevat geen samenvatting.
- Overhead: Eén
Function.prototype.toString per unieke timer-callback, gecached in een WeakMap.
- Snelheid:
claude --version ging van $\approx 10\text{ ms} \rightarrow \approx 17\text{ ms}$ (één meting).
Geteste versies
Getest met de Linux x64 binary van npm @anthropic-ai/claude-code-linux-x64.
| Versie | Gepubliceerd | sha256 | Status | Summary forks in $\approx 2,5\text{ min}$ run (Geen hook / Pass / Off) | Notities |
| 2.1.312 | 2026-10-27 | 4f4178ce41d8 | OK | 5 / 5 / 0 | Nieuwste versie op 2026-10-28; interactief: 6 zonder hook, 0 met off. |
| 2.1.310 | 2026-10-23 | b73676430af1 | OK | 5 / 5 / 0 | |
| 2.1.308 | 2026-10-22 | 356733f185fa | OK | 5 / 6 / 0 | Stabiel op 2026-10-28; de pass-run agent nam 9 stappen in plaats van 8. |
| 2.1.301 | 2026-10-15 | bc1aad9982c7 | OK | 5 / 5 / 0 | In dagelijks gebruik sinds 2026-10-26; 0 agent_summary requests in telemetry. |
| 2.1.280 | 2026-09-22 | 1e08503dbdf3 | OK | 1 / 1 / 0 | Timer vuurde 11 / 11 / 0 keer. Interactief: -p kan samenvattingen op deze versie niet inschakelen. |
| 2.1.257 | 2026-09-01 | 9a64bda9d872 | OK | 1 / 1 / 0 | Timer vuurde 11 / 11 / 0 keer. |
Waarom is er geen instelling voor?
De gedocumenteerde switch schakelt de functie alleen in. De SDK-optie agentProgressSummaries staat standaard op false, maar in het bundle-bestand is dit onderdeel van een OR-operatie, en elk codepad dat dit schrijft, zet het op true. Hierdoor verandert false niets, en de ongedocumenteerde CLAUDECODEAGENTPROGRESSSUMMARIES kan samenvattingen ook alleen inschakelen.
Het interval wordt bepaald door de server. Dit komt voort uit een server-vlag per model-familie en is beperkt tot 30–240 s. De standaardwaarde is al het minimum; er is geen waarde die de timer uitschakelt.
De voor de hand liggende omgevingsvariabelen ontbreken. DISABLENONESSENTIALMODELCALLS komt helemaal niet voor in het binary-bestand. CLAUDECODEFORKSUBAGENT=0 en CLAUDECODEDISABLEBACKGROUND_TASKS=1 stoppen het wel, maar schakelen daarmee ook fork-subagents of achtergrondagents uit.
De prompt-cache maakt het goedkoper, maar niet goedkoop. Ongeveer 98% van deze calls leest het transcript uit de cache; de $\approx 2\%$ die een cold cache raken, veroorzaken een derde van de kosten.
Kosten-tools die transcripts lezen, zien dit niet. Deze verzoeken worden niet weggeschreven naar de sessielogs op disk (#104358); alleen de OpenTelemetry-export toont ze. De documentatie over tokengebruik in de achtergrond vermeldt dit ook niet, terwijl de rij-samenvattingen in Agent View worden beschreven als een Haiku-klasse model dat elke paar minuten verfrist.
Er bestaat al een goedkopere variant, maar deze is uitgeschakeld. Versie 2.1.310 bevat een "short mode": ongeveer 2k tokens aan notities in plaats van het volledige transcript, eventueel geschreven door een kleiner model. De standaardinstelling blijft het volledige transcript, en alleen server-vlaggen kunnen dit wijzigen.
Tijdlijn (2026)
| Versie (Datum) | Wat is er veranderd |
| 2.1.32 (5 feb) | De code verschijnt voor het eerst; inactief in publieke builds. |
| 2.1.72 (9 mrt) | Bereikbaar als een SDK opt-in. |
| 2.1.117 (21 apr) | Bereikbaar in de interactieve CLI achter de fork-gate of een server-rollout. |
| $\le$ 2.1.220 (24 jul) | Geforkte skills worden altijd samengevat. |
| 2.1.232 (13 aug) | Standaard aan voor interactieve achtergrondagents. |
| 2.1.300 (14 okt) | Interval wordt server-tunable (30–240 s). |
| 2.1.310 (23 okt) | De goedkopere "short mode" wordt toegevoegd, maar blijft uitgeschakeld. |
In onze telemetry steeg het wekelijkse aandeel van de uitgaven van 3,5–7% in juli naar 7,3% en vervolgens 11,8% in de week dat we versie 2.1.233 installeerden, om tegen half oktober uit te komen op ongeveer 16%.
Licentie en disclaimer
MIT © 2026 Flamerix AI. Verstrekt "as is", zonder enige garantie; gebruik is op eigen risico. Flamerix AI is niet aansprakelijk voor schade, gegevensverlies of accountmaatregelen die voortvloeien uit het gebruik hiervan. Het wijzigen van het runtime-gedrag van een client kan in strijd zijn met de servicevoorwaarden van de provider; het controleren hiervan is uw verantwoordelijkheid.
"Claude" en "Claude Code" zijn handelsmerken van Anthropic, PBC. Dit project is onafhankelijk en is niet gelieerd aan, gesponsord door of onderschreven door Anthropic.