Entwickler behebt Code-Probleme am Laptop — symbolisiert Fehlerbehebung bei Kontextverlust mit Cursor und Claude Code in großen Projekten

Du lässt Cursor Agent im Monorepo das Zahlungsmodul anpassen — und er bearbeitet stattdessen DTOs aus dem User Center. Claude Code läuft zwanzig Bash-Runden, vergisst dann aber: „Legacy-Pakete nie direkt importieren.“ Das ist kein plötzlich dümmeres Modell, sondern der häufigste Fehlermodus in großen Projekten: Kontextverlust.

2026 werben Cursor und Claude Code mit Millionen-Token-Kontext — und trotzdem passiert auf echten Baustellen „Vereinbarung vergessen“ weiterhin oft. Dieser Artikel liefert eine wiederholbare Fünf-Schritte-Methode: Erst einordnen, wie Kontext verloren ging, dann nacheinander Budget, Index, Grenzen, Repo-Konventionen und Session-Strategie prüfen. Tool-Stand 2026-07-17 (Cursor 1.x, aktuelle Claude-Code-CLI).

Quick Answer: Fünf Schritte im Überblick

SchrittWas du prüfstTypische AktionSignal, dass es wirkt
1. Symptome einordnenSitzungskürzung / Index verfehlt / Regeln nicht geladenTabelle unten — nicht sofort Modell wechselnDu weißt, ob du „Session“ oder „Repo“ fixen musst
2. Kontextbudget prüfenTool-Runden und Auto-Injection füllen das FensterUnnötige Tabs schließen, weniger @-Dateien, kleineres Modell zum ErkundenWeniger Wiederholungen; Diffs widersprechen sich nicht mehr
3. Index neu aufbauen.cursorignore, riesige Verzeichnisse, veralteter IndexReindex; node_modules / DerivedData ausschließenAgent findet den richtigen Package-Pfad automatisch
4. Grenzen setzenTask-Scope zu breitSubfolder-Workspace, explizite @-Aufrufkette, Handoff-BlockGeänderte Dateien bleiben im erwarteten Modul
5. Repo-Konventionen schreibenMündliche Regeln nie als durchsuchbarer TextAGENTS.md, .cursor/rules, lange Sessions splittenNeue Sessions halten dieselben Constraints ein
Kurzantwort: Kontextverlust lässt sich selten mit „auf Max-Modell wechseln“ beheben. Meist sind es Index-Rauschen, zu große Task-Grenzen oder Regeln, die nur im Chat von letzter Woche leben — Konventionen ins Repo zu schreiben ist zuverlässiger als Chat-Verlauf ins Fenster zu stopfen.

Was bedeutet „Kontextverlust“ in großen Projekten?

Erst Begriffe klären: Ein langes Kontextfenster beantwortet „Passen so viele Tokens gerade rein?“ Effektiver Kontext beantwortet „Welche Fakten hat das Modell für diese Entscheidung wirklich genutzt?“ In großen Repos wird diese Lücke breiter — siehe unseren früheren Artikel zu persistentem Gedächtnis beim KI-Coding.

Wenn Entwickler sagen, Kontext sei „verloren“, fällt es meist in drei Kategorien:

TypWas du siehstTypische UrsacheZuerst prüfen
A. SitzungskürzungGleicher Thread driftet; frühere Constraints werden aufgehobenMehrstufige Tool-Ausgabe verdrängt frühe Anweisungen; Compact/Summary lässt Details fallenSchritte 2, 5
B. Index verfehlt„Modul nicht gefunden“ / „Tabelle existiert nicht“Zu aggressive Ignore-Regeln, veralteter Index, Repo zu groß mit noisy RetrievalSchritte 3, 4
C. Regeln nicht geladenNeue Session vergisst Naming-Stil und verbotene PfadeRegeln nur im Chat; fehlendes oder zu langes AGENTS.mdSchritt 5
Gegenbeispiel: Hat das Repo nur wenige tausend Zeilen mit klaren Modulgrenzen, prüf zuerst, ob du die falsche Workspace-Root geöffnet hast (Sub-Package statt Monorepo-Root), bevor du Memory-Layer anfasst — das kommt häufiger vor, als man denkt.

Schritt 1: Erst einordnen — nicht jedes „Vergessen“ ist ein Modellproblem

Bei Fehler oder unsinnigem Diff: Diesen 60-Sekunden-Entscheidungsbaum durchlaufen:

  • Gleiche Session widerspricht sich? → Wahrscheinlich A Sitzungskürzung — zu Schritt 2.
  • Neue Session vergisst Vereinbarungen? → Wahrscheinlich C Regeln nicht geladen — zu Schritt 5.
  • Modell behauptet, Datei existiert nicht, aber grep findet sie? → Wahrscheinlich B Index verfehlt — zu Schritten 3–4.
  • Fehler context length exceeded / prompt is too long? → Klares Budget-Problem — direkt zu Schritt 2.

Cursor und Claude Code unterscheiden sich leicht: Cursor Composer/Agent injiziert automatisch geöffnete Dateien und Index-Snippets — die IDE kann das Fenster leise sprengen. Claude-Code-Terminal-Agents verlieren eher nach langen Bash-Sequenzen + Auto-Compact Entscheidungen mitten in der Kette. Tool-Vergleich im Auswahl-Leitfaden 2026.

Schritt 2: Kontextbudget prüfen — großes Fenster heißt nicht automatisch sparsam

Realer Token-Verbrauch in einem Agent-Task kommt aus: System-Prompt + Regeldateien + @-Dateien + Tool-Ausgabe (grep, Test-Logs) + Verlaufszusammenfassung. In einem 120k-Zeilen-TypeScript-Monorepo kann ein Cursor-Agent-Lauf, der acht Related Files auto-liest und die volle Test-Suite startet, bei 80K–120K Input-Tokens landen — vor Retries.

2.1 Auf Cursor-Seite

  • Editor-Tabs ohne Bezug zum Task schließen; keine riesigen JSON- oder Lock-Dateien offen lassen.
  • Kleineres Kontextmodell oder normaler Chat zum Erkunden; Agent erst, wenn der Plan klar ist.
  • Kein „Refactor + Tests + CI“ in einem Composer — drei Tasks mit expliziter Dateiliste.
  • Codebase indexing in den Einstellungen im Blick; schlägt Indexierung fehl, fällt Agent auf grep zurück und das Fenster bläht sich schneller auf.

2.2 Auf Claude-Code-Seite

  • Bei langen Tasks auf Auto-Compact achten; danach festen Block „Non-negotiable constraints“ einfügen.
  • Riesige Command-Ausgabe in Datei umleiten; Agent soll tail auf Schlüsselzeilen — nicht 5.000 Log-Zeilen in den Chat.
  • Vor /clear oder neuer Session Schlussfolgerungen in HANDOFF.md oder Issue-Kommentar schreiben.
SignalWahrscheinliche UrsacheJetzt tun
Edits werden gegen Ende schlechterFrühe Constraints aus dem Fenster gedrängtNeue Session + Handoff-Block + kürzerer Task
API-Rechnung explodiert bei einem TaskGroße Dateien / volle Test-Ausgabe erneut gelesenTest-Scope begrenzen; head/tail nutzen
„Context exceeded“-FehlerHartes Limit erreichtWeniger @-Dateien, Task splitten, Erkundungsmodell

Schritt 3: Index neu aufbauen und Ignore aufräumen — dem Agent beim „Finden“ helfen

Kernproblem bei Typ B: Das Modell weigert sich nicht zu suchen — Retrieval liefert nie die richtige Datei.

3.1 .cursorignore / .claudeignore prüfen

Sinnvolle Ignores sparen Index-Zeit; Over-Ignore erzeugt blinde Flecken. Weiter ausschließen:

  • node_modules/, .git/, dist/, build/, DerivedData/
  • Verzeichnisse mit riesigem generiertem Code (musst du Generated Output bearbeiten, @ einzelne Dateien explizit)
  • Binaries und Medien-Assets

Nicht leichtfertig Business-Source-Packages ignorieren — viele Teams schließen ganz legacy/ aus und wundern sich, warum Agent die Compatibility-Layer nie sieht.

3.2 Reindex auslösen

Cursor: Settings → Indexing & Docs → Resync Index (Formulierung je Version). Erster Full-Index in großem Repo auf M4 dauert oft 15–40 Minuten; läuft auf dem Laptop parallel Ollama + Xcode, Indexierung auf einen dedizierten Cloud-Mac-Knoten auslagern — weniger Swap-Timeouts für IDE und Agent. Passend zu den Erkenntnissen in unseren M4-KI-Coding-Benchmarks.

Ops-Tipp: Teams können wöchentlich in CI git ls-files | wc -l laufen lassen und mit indexierten Dateizahlen vergleichen. Fällt die Abdeckung stark ab, gemeinsamen Reindex planen statt dass alle Cursor ratend neu starten.

Schritt 4: Grenzen setzen — „ganzes Repo auf einmal“ ist der Feind

Manchmal ist Kontextverlust wirklich eine zu große Task-Definition: Du sagst „Payments optimieren“, das Modell fasst vierzig Packages an — jeweils ein bisschen.

4.1 Workspace eingrenzen

  • VS Code / Cursor Multi-Root-Workspace — nur apps/checkout + packages/payment-sdk öffnen.
  • Claude Code im Subdirectory starten: cd apps/checkout && claude, damit irrelevante Pfade nicht ins Retrieval rutschen.

4.2 Explizite @-Aufrufkette

Bei API-Änderung mindestens @: Interface-Definition → Server-Implementierung → ein echter Caller → zugehöriger Test. In Vue- + Spring-Boot-Fullstack-Repos sank „Frontend vergessen“ durch gezielte Call-Chain-@-Referenzen von etwa 40 % auf unter 10 % — systematischer Ansatz in unserer CodeGraph-Fallstudie.

4.3 Handoff-Block-Vorlage

Vor Session-Wechsel bei langem Task feste Struktur einfügen:

## Handoff
- Ziel:
- Erledigt:
- Offen:
- Non-negotiable: (Pfade / Naming / verbotene Imports)
- Als Nächstes öffnen:

Das schlägt „fasse oben zusammen“, weil Einträge prüfbar sind — kein Prosa, das Constraints verliert.

Schritt 5: Konventionen ins Repo und Sessions bewusst splitten

Fix für Typ C: Regeln Teil des Repositories machen, nicht Teil des Chats.

5.1 AGENTS.md und Cursor Rules

Am Repo-Root kurze, umsetzbare Konventionen pflegen (Ziel < 200 Zeilen; bei Bedarf splitten):

  • Modulgrenzen und „KI darf nicht bearbeiten“-Pfade (z. B. generated/, vendor/)
  • Naming- und Error-Handling-Stil (je ein gutes und schlechtes Beispiel)
  • Checkliste: welche Layer bei API-Änderung mitgehen müssen
  • Pflicht-Commands: pnpm test payment --filter=...

Cursor liest .cursor/rules; Claude Code liest AGENTS.md und CLAUDE.md. Inhaltlich align halten — widersprüchliche Kopien verwirren beide Tools.

5.2 Wann Sessions splitten

SzenarioEmpfehlung
Ein Feature gemerged; nächstes startetNeue Session + Handoff
Agent missversteht dreimal hintereinanderStoppen, Handoff schreiben, @-Scope verkleinern
Compact ausgelöst / Kontextbalken über HälfteKonventionen auf Disk sichern, dann weiter
Am nächsten Tag weiterImmer neue Session + Link zu PR/Issue

Spannen Aufrufketten ein Dutzend Packages und reichen @-Dateien trotzdem nicht, dann Code-Wissensgraph-Tools evaluieren — das ist Verstärkung nach Schritt 5, nicht der erste Schritt.

Fallstudie: 45 Minuten in einem 120k-Zeilen-Monorepo

Ein B2B-SaaS-Team (8 Backend + 4 Frontend) nutzt Cursor + Claude Code in einem pnpm-Monorepo (~118k LOC, 6 Apps, 23 Packages). Symptom: Bearbeitet Agent billing-api, bricht er wiederholt Type-Exports aus auth-middleware — und neue Sessions machen dasselbe.

ReihenfolgeBefundAktionErgebnis
Schritt 1Neue Sessions vergessen Regeln → Typ CKein AGENTS.md bestätigtRoot Cause identifiziert
Schritt 3.cursorignore schloss fälschlich packages/auth ausIgnore gefixt + ReindexAgent konnte Middleware referenzieren
Schritt 4Task „Billing fixen“ zu breitWorkspace auf Billing + Auth; @ TestsDateien von 19 auf 6 gesunken
Schritt 5Mündliche Regeln nie dokumentiert120-Zeilen-AGENTS.md + CI Import-Boundary-CheckEine Woche PRs ohne gleichartige Regressionen

Kein teureres Modell. Ø Tokens pro Task ~35 % weniger, weil Agent keine Full-Repo-grep-Schleifen mehr drehte. Reindex und Nacht-Tests auf Macstripe-24GB-Cloud-Knoten; Laptop nur per SSH zum Coden — Swap-Warnungen beim Indexieren weg.

Selbstcheck: 2 Minuten vor dem Start

  • ☐ Du kannst benennen, ob dieser Task Typ A, B oder C ist
  • ☐ Editor hat nur relevante Dateien offen; keine riesigen Logs
  • .cursorignore schließt keinen Business-Source aus
  • ☐ Index gesund, oder Reindex geplant
  • ☐ Workspace-Scope ≤ 2–3 verwandte Packages
  • ☐ Call-Chain-Key-Files @ (inkl. ein Test)
  • AGENTS.md listet Non-negotiables für diesen Task
  • ☐ Handoff-Vorlage bereit für langen Task

FAQ

Das Kontextfenster ist mit 200K angegeben — warum geht trotzdem Kontext verloren?

Das Fenster ist eine Kapazitätsgrenze, keine Aufmerksamkeitsgarantie. Mehrstufige Agent-Tool-Aufrufe verdrängen frühe Anweisungen aus effektiver Aufmerksamkeit; Compact-Zusammenfassungen lassen Details fallen. Durchsuchbare Repo-Konventionen schlagen längeren Chat-Verlauf.

Wer verliert leichter Kontext — Cursor oder Claude Code?

Cursor verliert eher Grenzen durch IDE-Auto-Injection und lange Composer-Ketten; Claude Code eher Entscheidungen mitten in der Kette nach langen Bash-Läufen und Compact. Beide brauchen explizite @, AGENTS.md und Task-Splits — keiner ist „einfacher“.

Beeinflusst .cursorignore manuelle @-Referenzen?

Einzelne Datei manuell @ referenzieren funktioniert meist noch; kaputt geht Gesamt-Repo-Index und Auto-Retrieval. Ignorierte Verzeichnisse brauchen explizite @ oder der Agent findet sie nicht allein.

Soll ich einen Code-Wissensgraphen einsetzen?

Pilot lohnt sich, wenn Aufrufketten viele Packages durchqueren und @-Dateien Edits trotzdem verpassen. Bei kleinen Repos oder klaren Grenzen: AGENTS.md + CI zuerst — besserer ROI.

Hilft Mac-Wechsel oder Cloud?

Vergrößert nicht den Modellkontext, aber ein dedizierter 24GB-M4 reduziert Swap beim Indexieren und Tests — weniger Agent-Timeouts — und kann die gemeinsame „Heavy-Task“-Umgebung des Teams sein. Tagesweise testen, um zu validieren.

Fazit

„Kontextverlust“ mit Cursor / Claude Code in großen Projekten ist meist ein Engineering-Problem, kein Wunder durch neue Modell-Stufe. Diese fünf Schritte — Symptome einordnen → Budget prüfen → Index neu aufbauen → Grenzen setzen → AGENTS.md schreiben und Sessions splitten — kosten meist weniger und liefern stabilere Ergebnisse als blind Max-Mode zu aktivieren.

  • Drift in derselben Session: Injection reduzieren, Tasks splitten, Handoff nutzen.
  • Dateien nicht finden: Ignore fixen, Reindex, Workspace verengen.
  • Neue Session vergisst: Konventionen ins Repo; CI erzwingt sie.

Als Nächstes: persistentes Gedächtnis und Code-Wissensgraphen für Verstärkung nach Schritt 5.

Weiterlesen