Del 6: Tokenekonomi — den osynliga kostnaden för kontext
Det finns två sätt som utvecklare upptäcker att kontext inte är gratis. Det första är en överraskande faktura i slutet av månaden. Det andra är en session som börjar producera inkoherenta resultat — Claude ignorerar en begränsning som gavs tio meddelanden tidigare, eller motsäger ett beslut det fattade fem meddelanden bakåt.
Båda är samma problem sett från olika vinklar: kontextfönstret har en storlek, en kostnad och en försämringskurva. När du förstår hur tokens flödar genom en session kan du designa sessioner som förblir effektiva — och undvika felmödena som uppstår när du inte gör det.
Vad som räknas som tokens
Varje interaktion med Claude har en kostnad mätt i tokens — ungefär, fragment av ord. Tusen engelska ord är ungefär 750 tokens. Men vad som förvånar de flesta utvecklare är inte kostnaden för vad de skriver. Det är vad annat som ingår i varje meddelande.
Systemkontext är alltid närvarande. Innan ditt första meddelande når modellen prefixas det med systemprompt — som i Claude Code inkluderar verktygsdefinitioner, aktuellt sessionstillstånd och din CLAUDE.md. Varje. Enskilt. Meddelande.
Konversationshistorik ackumuleras. Claude Code skickar inte bara ditt senaste meddelande utan hela konversationshistoriken med varje förfrågan. Svaret på meddelande 30 i en session levereras med 29 tidigare utbyten bifogade. Det är så Claude upprätthåller koherens — men det innebär också att varje meddelande i en lång session är dyrare än samma meddelande skickat färskt.
Filläsningar adderar upp. När Claude läser en fil för att förstå kontext går det filinnehållet in i kontextfönstret. Att läsa tio stora filer är tio gånger dyrare än att läsa en.
Verktygsutdata har storlek. När Claude kör ett bash-kommando och får tusen rader loggutdata går de tusen raderna in i kontexten. Detaljrika verktyg är dyra verktyg.
Hur kontext ackumuleras — kompounderingsproblemet
Mekaniken producerar en kompounderingseffekt. Tidigt i en session är meddelanden billiga: historiken är kort, filerna lästa är få. Allt eftersom sessionen fortsätter växer nyttolasten bifogad till varje meddelande. Vid meddelande 40 eller 50 i en komplex session kan du betala för betydligt mer kontext än du avsåg — mycket av det från beslut och filläsningar som inte längre är relevanta för vad du gör just nu.
En enda lång session för en stor uppgift är ofta dyrare än samma arbete utfört i kortare, avgränsade sessioner. Att dela upp en stor refaktorering i mindre fokuserade sessioner — var och en startande med färsk kontext — kan kosta mindre sammantaget än en session som ackumulerar allt.
Modellval som kostnad- och kapabilitetsavvägning
Större modeller (som Opus) är mer kapabla — de hanterar komplex resonering, nyanserade arkitekturella beslut och uppgifter som kräver att man håller många överväganden i minnet simultant. De är också betydligt dyrare per token.
Mindre modeller (som Sonnet) hanterar ett mycket brett spektrum av praktiska uppgifter lika bra, till en bråkdel av kostnaden. Att generera boilerplate, byta namn på variabler, extrahera gränssnitt, skriva tester för redan definierat beteende — dessa kräver inte det resoneringsdjup som motiverar en större modell.
Den praktiska regeln: matcha modellen mot den faktiska resoneringsskyldigheten för uppgiften. Misstaget är att behandla modellval som en kvalitetsdial: "mer är bättre." Det är det inte. Det är en specificitetsdial.
CLAUDE.md-kostnaden
Del 3 i serien täckte CLAUDE.md som mekanismen för att koda in ditt omdöme i varje session. Det finns en kostnadsdimension att lägga till den förståelsen.
CLAUDE.md laddas som en del av systemkontexten vid varje enskilt meddelande. Om din CLAUDE.md är 3 000 tokens betalar varje meddelande i varje session för de 3 000 tokens.
Disciplinen att tillämpa: granska din CLAUDE.md regelbundet och fråga vad som faktiskt fortfarande är bärande. Ta bort instruktioner som beskriver beteenden Claude redan uppvisar som standard. Ta bort anteckningar som var relevanta för ett projekt men har generaliserats. Varje ord du skär från CLAUDE.md är ett ord du slutar betala för i varje meddelande.
Kompakt CLAUDE.md är inte bara renare — den är billigare.
Praktisk kontexthygien
Använd /clear strategiskt. Kommandot /clear kasserar den ackumulerade konversationshistoriken. CLAUDE.md laddas fortfarande färskt på nästa meddelande. Använd /clear när en session har blivit lång och du startar en genuint ny uppgift inom samma projekt — inte en fortsättning av det tidigare arbetet, utan ett färskt problem.
Kompaktläge komprimerar de äldre delarna av konversationshistoriken till en sammanfattning, vilket byter ut lite detalj mot en betydligt mindre kontextnyttolast. Användbart för mycket långa sessioner där du vill behålla kontinuitet men inte har råd med hela den ackumulerade historiken.
Avgränsa dina uppgifter. En väldefinierad uppgift — tydligt mål, begränsad filyta, specifikt resultat — producerar en kortare session med en mindre maximal kontextstorlek än en öppen utforskning.
Håll koll på verktygsdetaljrikedom. Om Claude kör bash-kommandon som producerar stor utdata och du inte använder den utdatan är den fortfarande i kontexten. Föredra kommandon som producerar fokuserad utdata.
Tecken på kontextförsämring
Kontextförsämring är subtil. Den tillkännager sig inte. Modellen kastar inget fel. Det som händer istället är en gradvis erosion av koherens på detaljer etablerade tidigare i sessionen.
Vanliga tecken:
- Claude ignorerar en begränsning som tydligt angavs tidigare — inte för att det håller inte med, utan det verkar ha glömt.
- Claude föreslår ett tillvägagångssätt som motsäger ett beslut du fattade tillsammans tre meddelanden tillbaka.
- Svar börjar kännas generiska — mindre skräddarsydda efter din kodbas specifika mönster.
- Claude börjar förklara saker som det redan etablerat, som om det börjar om.
När du ser dessa tecken har sessionen troligen vuxit bortom det effektiva kontextfönstret. Lösningen är vanligtvis en ny session, inte en påminnelse.
Subagenter som kontextisolering
Del 4 i serien introducerade subagenter som en mekanism för parallell körning. Det finns en kontextdimension att lägga till.
Varje subagent körs i sitt eget kontextfönster. När Claude Code startar en subagent för en specifik uppgift bär den subagenten bara den kontext som är relevant för dess jobb — inte hela den ackumulerade historiken för föräldrasessionen.
Det här är kontextisolering by design. En komplex uppgift uppdelad i subagenter — var och en hanterandes ett fokuserat stycke — producerar en uppsättning korta, effektiva kontexter snarare än en enda monolitisk växande sådan. Den aggregerade tokenkostnaden är ofta lägre än en enda session som försöker hantera allt sekventiellt.
Designimplikationen: för stora uppgifter, tänk på vad som kan delegeras. Inte bara för parallellism — utan för kostnadseffektivitet och utdatakvalitet genom bättre kontexthantering.
Föregående i serien: Del 5 — Behörighetslägen
Avslutande artikel: Agentisk kodgranskning: AI jagar buggar. Du äger fortfarande mergen.