Ha egyszerre több Claude Code sessiont futtatsz, nagyon gyakran találkozol vele, hogy elfogyott a token keret — azt nem tudod, hogy melyik session vitte el. A rövid válasz nálam: a keret nagyját néhány hosszú, sok subagentet indító session viszi. Öt hét 157 sessionjéből a legdrágább $440 volt API-listaáron, a képen látható többi sor egyike sem éri el a negyedét. Ezt a különbséget addig nem láttam, amíg össze nem raktam rá egy skillt, ami kódolás közben, egy paranccsal kiírja a token cost-ot sessionönként.

A token cost egy Claude Code session tokenfogyasztásának pénzben kifejezett ára: a nem cache-elt input, az output, valamint a cache-olvasás és -írás tokenjei beárazva, mindegyik annak a modellnek az árán, amelyik ténylegesen elfogyasztotta — a subagentekkel együtt. Ez nem az előfizetésed számlája, hanem az API-listaáras egyenérték. Pont ezért használható: ugyanazon a skálán méri a mai negyedórás sessiont és a múlt heti 14 órás maratont.

A RIPORT SZÁMAI (FÓKUSZ, 2026. 08. 01. → 09. 06.)
session: 157 · legdrágább session: $440
a legdrágább session: 171 subagent-futás · 4 966 asszisztens-üzenet
cache-olvasás a legdrágább sessionben: 757 millió token · cache-hit: 97%
token cost Opus-becsléssel: $589 · ténylegesen: $440

Miért nem látszik, mi viszi a tokent

Egy session önmagában ritkán meglepő. A gond akkor kezdődik, amikor három-négy fut egymás mellett, mindegyik subagenteket indít, és a subagentek saját tokent égetnek — más modellen, más áron. A Claude Code session-logjai a tokenfogyasztást üzenetenként rögzítik, csak épp nincs olyan nézet, ami ezt sessionönként összeadná. A skill ezt a nézetet adja: a lokális logokból számol, és egy táblázatban mutatja, mi történt az elmúlt napon, héten vagy hónapban.

És nem csak a pénz miatt érdekes. A tokenfogyasztás a munkamódszertan tükre: ha egy session tízszer annyit visz, mint a többi, ott vagy a kontextus volt túl nagy, vagy túl sok agent kapott túl sok mindent, vagy egy loop pörgött, amit észre sem vettem. A riport nem mondja meg, melyik — de megmondja, hol keressem.

Mit mutat a riport

Soronként egy session, a legutóbbi vagy — ha úgy kéred — a legdrágább elöl. Az oszlopok röviden.

MSGS az asszisztens-üzenetek száma; AGENTS a subagent-futásoké — nem üzenet, hanem elindított agent. WALL az első és az utolsó esemény közti idő, szünetekkel együtt; ACTIVE a becsült tényleges munkaidő, az öt percnél hosszabb tétlen szakaszok nélkül. A kettő különbsége mutatja, mennyit állt a session rád várva.

IN és OUT a nem cache-elt input és az output tokenek száma. CACHE-R és CACHE-W a cache-olvasás és -írás — mindkettő input-oldali, output-cache nincs. HIT a cache-olvasás aránya a teljes inputon belül.

A SONNET, OPUS és FABLE oszlop egy-egy „mi lett volna, ha”: mennyibe került volna a session, ha az egész azon a modellen fut; a jelölés mutatja, melyiken ment ténylegesen — terminálban *, markdown-kimenetben félkövér. Az ACTUAL a valós, kevert költség — minden modell tokenje a saját árán, subagentekkel együtt. Ez az a szám, amit érdemes nézni.

A session-cost-report táblázata: 157 session a Fókusz projektből, tényleges költség szerint rendezve
A riport a Fókusz projekten, 2026. 08. 01. → 09. 06., tényleges költség szerint rendezve — a legdrágább 19 sor. Minden dollár API-listaár.

A skill üzenetenként számol: egy régebben indult session csak az időablakon belüli tokenjeit hozza, a tegnapiakat nem keveri a maiba.

Mit olvastam ki belőle — a token cost anatómiája

A riport a Heti Fókusz projekt — a saját termékem — 157 sessionjét dolgozta fel öt hétből; a képen a legdrágább 19 sor látszik. Az első az „Email template system”: 4 966 asszisztens-üzenet, 171 subagent-futás, közel 14 óra wall-clock, ebből 11 óra aktív. Tényleges költsége $440. Mögötte egy biztonsági audit $269-ért, 202 subagenttel, majd egy konverziókövetés-bevezetés $139-ért. Lejjebb, a tizedik sorban egy Fable-session $79-ért — 192 üzenet, 2 óra 18 perc wall-clock. A képen látható többi sor $57 és $101 között mozog.

Az egyik dolog, ami kiugrott, a cache: az első sorban 757 millió cache-olvasási token áll szemben 9 900 nem cache-elt input tokennel. A terhet a cache viszi, ezért lehet 97% a hit. Egy hosszú, sok subagentet indító sessionben nem a gondolkodás a drága, hanem a kontextus újraolvasása — kedvezményes áron, de nagyon sokszor. A másik a modellkeverés: ugyanennél a sornál az Opus-becslés $589, a tényleges $440. A különbség onnan jön, hogy a subagentek egy része Sonneten futott — a főmodell Opus volt, de nem minden munka ment rajta. A riport ezt sorról sorra kimutatja, és pont ez az információ hiányzott nekem.

A tokenszámla nem attól ijesztő, hogy nagy — attól, hogy nem tudod, melyik session írta.

A riport minden dollárja API-listaár, nem az előfizetés számlája. A skill a 2026. 09. 06-án ellenőrzött hivatalos árlistával számol. 1M tokenre: Sonnet 5 $2 input / $10 output, Opus 5 $5 / $25, Fable 5.1 $10 / $50; a cache-olvasás ára az input árának 10%-a, Fable 5.1-nél 2,5%-a. Ha havi flat rate előfizetéssel dolgozol, a fenti $440 nem jelent meg a számládon. A riport csak az API-oldalt számolja, az előfizetéssel nem veti össze — azt neked kell mellé tenned. Én megtettem, és ebből látszik, hogy a havi előfizetés egyes esetekben jóval olcsóbb, mint amennyibe ugyanez a munka API-n kerülne. Konkrét előfizetési árat itt nem írok — de a viszonyítási pont ettől még ez.

Hogyan használd

A skill a /session-cost-report paranccsal hívható, de szabad szövegre is reagál: „mennyibe került a mai session”, „melyik projekt vitte a legtöbb tokent”, „összes projekt, elmúlt két nap, költség szerint”. Alapból az aktuális projekt tíz legutóbbi sessionjét mutatja a mai napról. Ha többet akarsz, van pár paraméter:

  • -n N vagy -n all — hány session jöjjön
  • --project PATH, --all-projects — másik projekt, vagy az összes; ha egynél több projekt kerül a táblába, PROJECT oszlop is jön
  • --since / --until — időablak: 2d, 2h, 90m, 15:00, today, yesterday, YYYY-MM-DD
  • --sort recent|tokens|cost — rendezés
  • --idle-gap SECS — az ACTIVE-hoz használt tétlenségi küszöb másodpercben, alapból 300
  • --format table|markdown|json, röviden --markdown / --json — a JSON a részletes metaadatokat is adja: cache-write TTL-bontás, subagent-modellek

Nálam a leggyakoribb hívás az „összes projekt, elmúlt két nap, költség szerint” (--all-projects --since 2d --sort cost), aztán megnézem a kilógó sort, hogy mi történt benne pontosan. A riport nem magyaráz, csak megmutatja, hova kell nézni.

Telepítés

Két parancs Claude Code-ban:

  1. /plugin marketplace add kepes/claude-skills
  2. /plugin install session-cost-report@claude-skills

Frissítés: /plugin marketplace update claude-skills. Ha nem akarsz plugin-marketplace-t, a skill mappája bemásolható a ~/.claude/skills/ alá is. Python 3.10+ kell hozzá, harmadik féltől származó függőség nincs.

A skill read-only: kizárólag a lokális ~/.claude/projects/ session-logokat olvassa, és semmit nem küld sehova. A kimenetben viszont session-címek és projektmappa-nevek szerepelnek — mielőtt egy riportot publikusan megosztasz, nézd át.

A skill a nyilvános gyűjteményemben van: github.com/kepes/claude-skills. Használd. A token cost nem a kevesebb agenttől csökken, hanem attól, hogy látod, hol megy el.