Hvorfor Claude Code læser hele projektet igen, og hvordan du løser det
MarkdownClaude Code indekserer ikke kode og læser projektet fra begyndelsen igen, hvilket bruger tokens. Sådan giver du det en vedvarende kodehukommelse via MCP og reducerer forbruget.
Læs hele artiklen
Vigtigste pointe
Claude Code gemmer ikke et indeks over din kode. I hver session søger det projektet igennem igen og læser filer fra begyndelsen, så tokens bruges på rekognoscering i stedet for arbejde. Du kan løse det med kodehukommelse: Installer en indeksserver via MCP, så Claude kan bruge et færdigt projektkort i stedet for at læse det hele igen.
Ailoot-dokumentation: API, nøgler og forbindelse.
Hvorfor læser Claude Code projektet fra begyndelsen igen hver gang?
Vigtigste pointe
Claude Code har ikke et indbygget kodeindeks. Det søger i projektet med tre værktøjer: finder filer efter mønster, søger efter tekststrenge og læser hele filer. Det kaldes agentisk søgning: Modellen beslutter, hvor den skal lede, og gentager processen for hver ny opgave. Den husker ikke den forrige session, så hver ny session begynder fra begyndelsen.
Mange tror, at det er en fejl. Faktisk er det sådan, Claude Code er designet: Det har ikke sit eget projektindeks. Når du beder det om at rette noget, har det ikke et færdigt kodekort ved hånden – det udforsker projektet igen: finder relevante filer, søger efter de nødvendige tekststrenge og læser filer ind i hukommelsen.
Denne tilgang har reelle fordele. Koden er altid opdateret – der er ikke noget indeks, der er blevet forældet. Der er intet, der skal konfigureres. Din kode sendes ikke til nogen database.
Men der er en ulempe: Hver ny opgave betyder en ny runde med søgning og læsning af filer. Tokens bruges igen på at finde ud af, hvor alting er, selvom Claude allerede gjorde det i den forrige session. Jo større projektet er, desto mere koster denne rekognoscering. Det er netop denne mekanisme, der kan få det til at føles, som om agenten ”læser alt”.
Hvor mange tokens koster det egentlig?
Vigtigste pointe
Allerede inden Claude Code læser kode igen, sender det omkring 33.000 tokens med systemdata i hver forespørgsel. I en reel arbejdskonfiguration når det samlede antal 75.000–85.000 tokens, før du har skrevet et eneste ord. Derefter kommer genlæsning af filer oveni, og ifølge den officielle dokumentation bruger fillæsning mest kontekst.
Omkostningen begynder, før du sender din forespørgsel. En uafhængig måling viser det enkelt: Claude Code sender omkring 33.000 tokens med systemprompt og værktøjsbeskrivelser, før den læser det første tegn i din besked. Til sammenligning starter OpenCode på omkring 7.000.
Derefter kommer genlæsningen. Hver filsøgning og hver læsning føjer tokens til konteksten. Den officielle Claude Code-dokumentation siger det direkte: Fillæsning dominerer kontekstforbruget. En analyse af auth.ts på 2.400 tokens betyder, at Claude alene har set 2.400 tokens, og det samme gælder hver fil, det åbner under rekognosceringen.
For vores målgruppe betyder det penge og begrænsninger. Den største frygt blandt folk, der går i gang med vibe coding, er: ”Jeg betalte, og grænserne løb ud uden grund.” Hvis agenten scanner projektet og læser filer igen fra begyndelsen for hver opgave, bliver konteksten brugt dobbelt så hurtigt: først på systemoverhead og derefter på rekognoscering. Jeg har gennemgået det fulde overblik over, hvor Claude Code-tokens præcist går hen, i guiden ”Hvor Claude Code-tokens går hen” – genlæsning af projektet er et af ni mønstre dér.
Hvad er vedvarende kodehukommelse?
Vigtigste pointe
Kodehukommelse er et færdigt projektkort, som agenten kan slå op i i stedet for at læse filer igen. Et separat værktøj scanner din kode én gang, opbygger en struktur over funktioner, filer og forbindelser og gemmer den på disken. Senere, når du spørger ”hvor håndteres betaling”, får Claude svaret fra kortet med én forespørgsel i stedet for at gennemgå hver fil.
Kodehukommelse løser præcis det hul, der får Claude til at læse projektet igen. Ideen er enkel: Lad noget scanne al koden én gang, bygge et kort over den og holde kortet klar. Så behøver agenten ikke søge fra begyndelsen hver gang – den spørger kortet.
Teknisk fungerer det sådan her. Et separat værktøj scanner projektet og opdeler det i komponenter: hvilke funktioner og klasser der findes, hvem der kalder hvem, og hvilke filer der hænger sammen. Denne struktur gemmes på disken. Når Claude skal forstå, hvor betalingslogikken er, eller hvad der går i stykker, hvis en funktion redigeres, sender det én målrettet forespørgsel til kortet i stedet for at læse dusinvis af filer.
Dette kort forbindes via MCP – standarden for at tilknytte et eksternt værktøj til Claude Code (jeg gennemgik tilslutning af andre servere i guiden ”MCP-servere til Claude Code”). Kodehukommelsesværktøjet tilføjer sine egne kommandoer til søgning i kortet, og Claude bruger dem automatisk, når det skal orientere sig i projektet.
I praksis er forskellen mellem ”læs hele mappen for at finde én funktion” og ”spørg kortet, hvor funktionen er”. Det første koster titusindvis af tokens; det andet koster hundredvis.
To tilgange til kodehukommelse: hvad er forskellen?
Vigtigste pointe
Der er to nyttige værktøjer, og begge er gratis under MIT-licensen. Serena giver agenten kodenavigation som i et intelligent udviklingsmiljø og er god til præcise redigeringer. claude-context søger efter betydning ved hjælp af embeddings, men kræver en ekstern database og en nøgle. Forskellen er, hvad hvert værktøj husker.
Kodehukommelsesværktøjer adskiller sig ved, hvad de bygger ud fra dit projekt. En nem måde at tænke på dem er: Det ene giver dig kirurgens hænder til redigering, og det andet søger efter betydning.
| Hvad vi sammenligner | Serena | claude-context |
|---|---|---|
| Hukommelsestype | Kodenavigation via en udviklingsmiljømotor | Betydningsbaseret søgning via embeddings |
| Hvad det finder | Definitioner, faktiske kaldesteder, redigeringer efter symbol | Kode ud fra en beskrivelse: ”hvor er betalingslogikken” |
| Eksterne afhængigheder | Pakkehåndteringen uv; til TypeScript og JavaScript også Node 20+ og npm | Ekstern database + nøgle + Node 20+ |
| Installation | Én kommando | Kommando med tre indstillinger |
| Tokenbesparelse | Angiver ikke en præcis procent | Omkring 40 % ved samme kvalitet |
| GitHub-stjerner | 26.468 | 12.138 |
| Styrke | Omhyggelig refaktorering på tværs af kodebasen | Find det, du har brug for, uden at kende de præcise navne |
| Svaghed | Færre sprog, ingen betydningsbaseret søgning | Omfattende opsætning, kræver en cloudtjeneste |
Antallet af GitHub-stjerner er fra den 15. juli 2026 (ifølge GitHub API). Begge værktøjer er gratis og open source, begge fungerer med Claude Code, og begge forbindes som MCP-servere.
En kort forklaring til folk, der ikke programmerer. Serena er kirurgens hænder: Brug den, når du redigerer den samme del flere steder i projektet, og præcision er vigtig. claude-context er betydningsbaseret søgning: Det finder kode ud fra en beskrivelse, men kræver opsætning af en clouddatabase og en nøgle.
Hvornår skal du vælge Serena eller claude-context?
Vigtigste pointe
Serena er nyttig, når præcise redigeringer er vigtige: omdøbning af en funktion i hele projektet, udskiftning af dens indhold eller søgning efter alle dens faktiske kaldesteder. Den bruger samme motor som intelligente udviklingsmiljøer og redigerer kode efter betydning, ikke ved at matche tekst. Vælg claude-context, når du skal søge efter kode ud fra en beskrivelse og ikke har noget imod at opsætte en ekstern database og en nøgle.
De to værktøjer konkurrerer ikke om én og samme plads. De husker forskellige ting, så valget afhænger af opgaven.
Vælg Serena, hvis du refaktorerer meget. Den giver agenten kodenavigation som i et intelligent udviklingsmiljø: Den finder en funktionsdefinition og alle dens faktiske kaldesteder og omdøber derefter omhyggeligt funktionen eller erstatter dens indhold i hele projektet. Forfatteren beskriver fordelen sådan her.
En kraftfuld samling kodeværktøjer via MCP: semantisk søgning og redigering – et udviklingsmiljø til din agent.
Serena angiver ikke en præcis besparelsesprocent, og jeg vil ikke tillægge den et opdigtet tal. Fordelen er en anden: Hvor en almindelig søgning giver fyrre resultater sammen med kommentarer og tekststrenge, hvorefter Claude læser fire hele filer, svarer Serena med nogle få præcise forespørgsler. Det betyder færre kald og færre falske match og dermed lavere risiko for, at agenten redigerer det forkerte.
Vælg claude-context, hvis du har brug for betydningsbaseret søgning og ikke lader dig afskrække af opsætningen. Det omdanner kode til vektorer (numeriske fingeraftryk af betydning) og søger ud fra beskrivelser: ”find, hvor vores betalingslogik er”, selvom du ikke kender funktionsnavnene. Prisen for denne søgning er den ekstra opsætning.
I gennemsnit reducerer claude-context tokenforbruget med omkring 40 %, samtidig med at den samme søgekvalitet opretholdes.
claude-context kræver en ekstern vektordatabase, en nøgle fra en embeddingsudbyder og en nyere version af Node. Af de to er det det mest omfattende at sætte op, så jeg anbefaler begyndere at starte med noget andet.
Hvad kan du gøre direkte i Claude Code uden tredjepartsværktøjer?
Vigtigste pointe
Indbyggede kommandoer løser halvdelen af problemet. /context viser præcis, hvad der bruger kontekst. /compact komprimerer historikken, /clear nulstiller den før en ny opgave, og /doctor finder unødvendige elementer og foreslår at rydde op i dem. En kort CLAUDE.md-fil i stedet for en overdimensioneret sparer tusindvis af tokens i hver besked.
Før du installerer tredjepartsværktøjer, skal du få mest muligt ud af det, Claude Code allerede indeholder. Disse kommandoer er gratis og fungerer med det samme.
/context– viser en aktuel oversigt over, hvad der fylder i vinduet: systemprompt, CLAUDE.md, hukommelse, værktøjer og filer. Kommandoen/mcpviser omkostningen for hver tilsluttet server, og/memoryviser, hvad der blev indlæst ved opstart./compact– komprimerer samtalehistorikken til et kort resumé og fortsætter den samme opgave. Du kan styre fokus ved at tilføje, hvad der skal bevares, til/compact./clear– sletter hele historikken. Den officielle anbefaling er at køre den, når du skifter til en uvedkommende opgave, så den gamle samtale ikke fylder i stedet for de filer, du skal bruge./doctor(også kendt som/checkup, introduceret den 8. juli 2026) – diagnosticerer opsætningen og foreslår løsninger: fjerner dubletter i CLAUDE.md, finder ubrugte værktøjer og servere og opdager langsomme handlere.
En separat bemærkning om CLAUDE.md. Denne fil indlæses i konteksten ved starten af hver session og indgår i hver besked. Hvis den er overdimensioneret, bliver du ved med at betale for den. Den officielle anbefaling er at holde den under 200 linjer og flytte referencedetaljer til færdigheder, der indlæses efter behov. Jeg gennemgik, hvordan man sammensætter CLAUDE.md korrekt, i den separate guide ”Sådan konfigurerer du CLAUDE.md”.
En anden indbygget mulighed er underagenter. De har deres egen separate kontekst, så du kan uddelegere omfattende læsning og rekognoscering til dem uden at overfylde dit hovedvindue. Anthropic beskriver det generelle princip sådan her i sin tekniske analyse.
Godt kontekst arbejde handler om at finde den mindst mulige mængde informationsrige tokens, der giver det ønskede resultat.
Gør en ekstra MCP-server konteksten endnu større?
Vigtigste pointe
Det er en rimelig bekymring, men nej. Siden 2026 har Claude Code ikke som standard indlæst fulde MCP-værktøjsbeskrivelser i konteksten – det udsætter indlæsningen og indlæser kun det, der faktisk er nødvendigt. Ved opstart indgår kun navnene i konteksten. Et kodeindeks giver derfor næsten ingen ekstra systemoverhead, samtidig med at det sparer tusindvis af tokens, som ellers ville være brugt på at læse filer igen.
Tankegangen om, at ”én server mere betyder mere kontekstoverhead”, var tidligere rigtig, men Claude Code er blevet ændret. MCP-værktøjsbeskrivelser udsættes nu som standard: Kun servernavne indgår i konteksten ved opstart, og fulde beskrivelser indlæses, når et bestemt værktøj er nødvendigt til opgaven. Dokumentationen siger det direkte.
Værktøjssøgning holder MCP-kontekstforbruget lavt ved at udsætte værktøjsbeskrivelser, indtil Claude har brug for dem. Ved sessionens start indlæses kun værktøjsnavne, så tilføjelse af MCP-servere næsten ikke påvirker kontekstvinduet.
Regnestykket for kodehukommelse er enkelt. Et lille, fast overhead for værktøjsnavne sammenlignet med de tusindvis af tokens, der spares, fordi agenten ikke længere læser filer igen. Balancen taler klart for indekset.
Et par ærlige forbehold, så du ikke forventer magi. Indekset skal genopbygges af og til – kortet afspejler koden, som den så ud på scanningstidspunktet, og efter større ændringer skal det opdateres (det varierer fra værktøj til værktøj: Nogle gør det automatisk, andre kræver en kommando). Og store påstande som ”120 gange færre tokens” beskriver det bedste tilfælde for udvalgte forespørgsler, ikke hvad du vil se ved enhver opgave. De reelle besparelser er mere beskedne, men stadig mærkbare. Hvis du vil læse mere om, hvordan du generelt undgår at ramme grænserne, har jeg en separat analyse: ”Sådan undgår du at bruge Claude Code-grænserne op”.
Hvor skal du begynde i dag?
Vigtigste pointe
Begynd med det, der er gratis og hurtigt. Kør /doctor for at rydde op i unødvendige elementer. Skær CLAUDE.md ned til 200 linjer. Disse trin skærer ned på det, Claude tager med ind i hver opgave, og begynder at spare på dine tokens og grænser.
Hvis du fjerner alt det unødvendige, er dagens plan enkel:
- Kør
/doctor, og ryd op i det, den foreslår: dubletter i CLAUDE.md og ubrugte værktøjer. - Skær CLAUDE.md ned til 200 linjer, og flyt referencemateriale til færdigheder.
Vælg derefter ud fra dine behov: Hvis du refaktorerer meget, kan du tilføje Serena til præcise redigeringer; hvis du har brug for betydningsbaseret søgning, kan du opsætte claude-context. Kodehukommelse og en ren kontekst løser hovedproblemet allerede i dag.
Kilder
Hvis du har brug for adgang til AI-modeller via Ailoot, så kig på Ailoot.
Flere oplysninger
Spørgsmål og svar
Hvornår skal jeg vælge symbolnavigation frem for betydningsbaseret kodesøgning?
Vælg symbolnavigation som Serena til definitioner, kaldesteder og præcis refaktorering. Betydningsbaseret søgning som claude-context hjælper, når du kender den ønskede adfærd, men ikke symbolnavnet. Det kræver yderligere database- og embeddingopsætning.
Kan jeg fortsat stole på kodekortet efter ændringer?
Kontrollér, at indekset er opdateret. Et kort afspejler den scannede kode, og opdateringsadfærden varierer mellem værktøjer. Brug kortet til at finde relevant kode, og verificér derefter de aktuelle filer, før du ændrer dem.