Das Kontextfenster
Das Kontextfenster ist die Menge an Text, die ein Modell auf einmal lesen kann. Es enthält den System-Prompt, die Tool-Definitionen, alle Memory-Dateien und jede Nachricht, jedes Tool-Ergebnis und jede Antwort der bisherigen Konversation. In einer langen Konversation füllt es sich, und ein volleres Fenster bedeutet langsamere und teurere Turns, bis der Verlauf gekürzt wird; siehe Eine Konversation kompaktieren.
OAR zeigt an zwei Stellen, wie voll das Fenster ist: als dünne Linie entlang der Oberkante des Eingabebereichs, die du immer siehst, und im Kontextdialog 🧠, der die Zahl aufschlüsselt.
Die Linie über dem Eingabebereich #
Die Linie verläuft entlang der Oberkante des Eingabebereichs. Sie zeigt dir auf
einen Blick, wie viel des Fensters die Konversation nutzt. Sie hat zwei
Anzeigemodi, die in config. mit context gesetzt werden
(siehe config.json):
| Modus | Was du siehst |
|---|---|
default |
Eine Linie über die volle Breite. Ihre Farbe reicht von Grün bei leerem Fenster bis Rot bei vollem. |
bar |
Dieselbe Linie, die von links bis zum genutzten Anteil des Fensters wächst. |
Hat OAR keine Zahl für die Konversation, ist die Linie neutral grau. Das ist vor dem ersten Turn der Fall und bei Providern, die nichts melden (siehe Nach Provider).
Die Linie wird aktualisiert:
- wenn du eine Konversation öffnest;
- kurz nachdem eine Nachricht in der Konversation ankommt, die du gerade ansiehst;
- wenn ein Turn endet.
Bei Claude, DeepSeek, Claude Cloud, Cursor und Grok wird die Zahl am Ende eines Turns erfasst, die Linie bewegt sich also einmal pro Turn.
Der Kontextdialog 🧠 #
Klick im Header der Konversation auf 🧠; sein Tooltip lautet Check current
context (Aktuellen Kontext prüfen). Der Dialog heißt Context usage
(Kontextnutzung). Sein Untertitel lautet etwa Claude session 1a2b3c4d: der
Provider und die ersten acht Zeichen der Session-ID (OpenAI-Konversationen
zeigen Copilot, weil der Copilot-Agent sie ausführt). Bevor es eine Session
gibt, zeigt er Conversation und die ersten acht Zeichen der
Konversations-ID. Ohne offene Konversation sagt der Dialog
Open a conversation to see its context usage.
Was der Dialog zeigt, von oben:
- Das Modell und eine Kopfzeile mit der Summe und dem Fenster. Bei Claude
und DeepSeek lautet die Kopfzeile etwa
60.; die Modellgrenze erscheint, wenn sie bekannt ist. Bei den anderen Providern lautet sie etwa9k used · compaction window 100. 0k · model limit 1 M 221..3k / 1. 0 M tokens (22%) - Ein Balken mit einem farbigen Teil pro Kategorie.
- Eine Tabelle mit den Spalten Category (Kategorie), Tokens und Usage (Verbrauch) (der Anteil am Fenster).
- Hinweise unter dem Balken: As of the last completed turn, gefolgt von der Zeit und dem Modell, sagt dir, wann die Zahlen erhoben wurden. Andere Hinweise sagen, wann eine Zahl eine Schätzung ist (siehe Nach Provider).
- Bei Claude der Schieberegler für das Auto-Kompaktierungsfenster, die Thinking-Einstellungen und die Zeile Commit attribution (Commit-Zuschreibung). Siehe Claude. Claude-Cloud-Chats, die aus einem Ordner gestartet wurden, zeigen die Zuschreibungszeile ebenfalls. Neu in 0.9.17 DeepSeek-Chats zeigen nur den Schieberegler: DeepSeek denkt immer, und seine Commit-Zuschreibung wird in seinem Einstellungs-Tab gesetzt. Siehe DeepSeek.
- Neu in 0.9.16 Bei einer Session, die ein Agent gestartet hat, bei jedem Provider, der Schalter Agents in this conversation may start sessions (Agents in dieser Konversation dürfen Sessions starten). Siehe Eine gestartete Session Sessions starten lassen.
- Ein eingeklappter Block Raw details (Rohdaten) mit dem eigenen Text der Runtime, wo es einen gibt.
Refresh (Aktualisieren) oben rechts liest die Zahlen neu. Bei Claude, DeepSeek, Claude Cloud, Cursor und Grok ändern sie sich nur, wenn ein Turn endet, es zählt also vor allem nach einem Turn, der fertig wurde, während der Dialog offen war.
Die Kategorien #
Die Zeilen der Tabelle hängen vom Provider ab. Bei Claude und DeepSeek, die beide von Claude Code ausgeführt werden, sind es die Kategorien, die Claude Code selbst meldet, unter den Namen, die es ihnen gibt, z. B. System prompt (System-Prompt), System tools (System-Tools), Skills und Messages (Nachrichten), und MCP tools (MCP-Tools), Memory files (Memory-Dateien) und Custom agents (Eigene Agents), wo die Session sie hat. Zwei weitere Zeilen beschreiben den Rest des Fensters:
| Zeile | Bedeutung |
|---|---|
| Free space (Freier Platz) | Der Teil des Fensters, der noch ungenutzt ist und den die Konversation füllen kann. |
| Auto-compact reserve (Reserve für Auto-Kompaktierung) | Der Teil des Fensters oberhalb der Schwelle für die Auto-Kompaktierung. Die Konversation kompaktiert, bevor sie dort ankommt, er füllt sich also nie. Wird nur angezeigt, wenn die Auto-Kompaktierung an und die Schwelle bekannt ist. |
Ein Tool, das Claude Code auflistet, aber nicht geladen hat, ist mit (deferred) (zurückgestellt) markiert. Es steht in der Tabelle, wird aber nicht zur Summe gezählt, und ein Hinweis sagt das. Deshalb können die Zeilen zusammen mehr ergeben als die Kopfzeile.
Der Schieberegler für das Auto-Kompaktierungsfenster #
Bei Claude und DeepSeek enthält der Dialog den Schieberegler Auto-compact window (Auto-Kompaktierungsfenster). Er legt fest, wie viele Tokens Kontext die Konversation sammeln darf, bevor Claude Code sie kompaktiert. Die Einstellung gehört zur Konversation, nicht zum Relay. Andere Provider haben keine solche Einstellung.
Der Schieberegler hat sieben Stufen: Auto, 100k, 150k, 200k, 300k, 500k und 1M. Auto ist der Standard und überlässt die Wahl Claude Code, das ein zum Modell passendes Fenster wählt. 100k ist die Untergrenze: Claude Code ignoriert alles Kleinere. Neu in 0.9.17 In einem DeepSeek-Chat bedeutet Auto 400k Tokens: Das Relay gibt Claude Code dieses Fenster, solange du keine andere Stufe wählst, sodass ein langer DeepSeek-Chat deutlich vor dem Ende seines 1M-Fensters kompaktiert. Das Kompaktieren selbst und was jede Stufe bedeutet, steht unter Eine Konversation kompaktieren.
Was dir der Dialog rund um den Schieberegler sagt:
- Die Zeile darunter beginnt mit Effective: (Wirksam:) und nennt die
geltende Schwelle, z. B.
compacts at 967.. Der letzte Teil sagt, woher sie kommt: auto (model-tuned) (auto, modellabhängig), model default (Modellstandard), from settings (aus den Einstellungen; dein Schieberegler), from CLAUDE_CODE_AUTO_COMPACT_WINDOW (aus CLAUDE_CODE_AUTO_COMPACT_WINDOW) oder from client data (aus Client-Daten). Vor dem ersten Turn lautet sie — (known after the first turn). Die Umgebungsvariable ist unter Umgebungsvariablen beschrieben.0k of 1. 0 M tokens · auto (model- tuned) - Auto-compact is disabled for this session. erscheint, wenn Claude Code meldet, dass die Auto-Kompaktierung aus ist.
- Ein Hinweis sagt, wann eine neue Einstellung greift: Applies after the current turn., Applies when background work has finished. oder Applies on the next message (the session restarts once).
- The conversation will be compacted on the next message. warnt dich, wenn du ein Fenster wählst, das kleiner ist als das, was die Konversation schon nutzt.
Das Bewegen des Schiebereglers ändert nur die Beschriftung und die Hinweise. Die Einstellung wird gespeichert, wenn du den Dialog schließt (mit ×, Escape oder einem Klick daneben), und eine kurze Meldung bestätigt sie, z. B. Auto-compact window set to 200k tokens. (die Wahl von Auto ergibt Auto-compact window back to the model default.). Claude Code liest das Fenster nur beim Start, deshalb startet die Session vor deiner nächsten Nachricht einmal neu, um es anzuwenden; siehe Eine Konversation kompaktieren.
Die Größe des Fensters #
Die Fenstergröße hängt vom Modell ab. Manche Modelle bieten ein zweites,
größeres Fenster an, z. B. 1; du wählst es vor dem Senden mit der Auswahl
Context window (Kontextfenster) im Eingabebereich. Siehe
Kontextgröße.
Bei Claude und DeepSeek zeigt die Kopfzeile zwei Zahlen: das compaction window (Kompaktierungsfenster), an dem die Konversation kompaktiert wird, und das model limit (Modellgrenze), das, was das Modell höchstens fassen kann. Das Kompaktierungsfenster kann nicht größer sein als die Modellgrenze. Bei den anderen Providern zeigt die Kopfzeile das Fenster des Modells. Teilt ein Provider OAR das Fenster nicht mit, nutzt OAR eine eingebaute Tabelle bekannter Modelle, in der die Modelle von DeepSeek mit 1M stehen; ein Modell, das in keiner von beiden steht, hat keine Fensterzahl. Für Cursor und Grok zeigt der Dialog dann nur einen einfachen Textblock mit den Token-Zahlen, ohne Balken, Tabelle oder Prozentwert.
Nach Provider #
| Woher die Zahlen kommen | Was der Dialog zeigt | |
|---|---|---|
| GitHub Copilot und OpenAI, SDK- und Extension-Engine | Die Session-Aufzeichnung, die die Copilot-Runtime führt. Gemessen. | Eine gröbere Aufteilung: System/Tools und Messages, dann Free space und, wo die Runtime eine meldet, Auto-compact reserve. |
| Claude | Claude Code meldet die Aufschlüsselung nach jedem Turn. Gemessen. | Die genauen Kategorien, die Kopfzeile mit dem Fenster, den Schieberegler. |
| DeepSeek | Wie bei Claude: Claude Code meldet die Aufschlüsselung nach jedem Turn. Gemessen. | Dasselbe wie bei Claude, ohne die Thinking-Einstellungen und die Zuschreibungszeile. |
| Claude Cloud | Die Cloud-Session meldet nach jedem Turn die genutzten und die maximalen Tokens. | Die Summe, das Fenster und den Prozentwert, ohne Kategorien. |
| Cursor | Aus den Token-Zahlen des letzten Turns berechnet. | Die Summe und den Prozentwert des Fensters, ohne Kategorien. |
| Grok | Aus den Token-Zahlen des letzten Turns berechnet. | Dasselbe wie bei Cursor: eine Summe und einen Prozentwert, wenn das Fenster bekannt ist. |
| OpenAI Image | Nichts. | Keine Kontextdaten. |
Einige Details:
- Copilot. Meldet die Runtime die vollständige Aufschlüsselung nicht mehr, zeigt OAR nur eine Untergrenze aus den Tokens, die das Modell bisher geschrieben hat, beschriftet mit Estimated lower bound — this runtime does not report a full breakdown. Prompt, System, Tools und Cache fehlen darin.
- Cursor. Jeder Modellaufruf eines Turns sendet den Kontext erneut, und Cursor meldet die Summe. OAR teilt die Prompt-Seite durch die Zahl der Aufrufe und addiert die Ausgabe. Hat ein Turn mehr als einen Aufruf gemacht, sagt der Dialog, dass die Zahl aus dem gesamten Token-Verbrauch des Turns geschätzt ist.
- Grok. Die Summe ist die Eingabe, die gecachten Tokens und die Ausgabe des letzten Turns, und sie ist nicht als Schätzung markiert. Der Prozentwert erscheint nur, wenn das Fenster des Modells bekannt ist.
- Claude Cloud. Die Zahlen werden nach dem Ende des Turns aus der Session gelesen. Meldet die Session keinen Verbrauch, hat der Dialog nichts zu zeigen.
Vor dem ersten Turn einer Konversation mit Claude, DeepSeek, Claude Cloud, Cursor oder Grok hat der Dialog keine Zahlen. Er zeigt einen einfachen Textblock mit dem Modell als unavailable (nicht verfügbar) und einer Zeile Note (Hinweis): No context data captured yet for this session; it is recorded when a turn completes.
Wenn das Fenster fast voll ist #
| Provider | Was passiert |
|---|---|
| Claude | Claude Code kompaktiert die Konversation an der Schwelle für die Auto-Kompaktierung, standardmäßig nahe an der Grenze des Modells. |
| DeepSeek | Claude Code kompaktiert die Konversation an der Schwelle für die Auto-Kompaktierung: 400k Tokens des 1M-Fensters, solange du kein anderes Fenster wählst. |
| Copilot und OpenAI, SDK-Engine | Die Runtime kompaktiert im Hintergrund bei 80 % des Fensters und blockiert für eine Kompaktierung bei 95 %. |
| Copilot und OpenAI, Extension-Engine | OAR setzt und zeigt nichts. |
| Claude Cloud | OAR setzt nichts; der Verlauf zeigt eine Zeile, wenn die Session eine Kompaktierung meldet. |
| Cursor, Grok | OAR setzt und zeigt nichts. |
Bei jedem Provider kannst du mit /
eine neue Konversation starten, die eine Zusammenfassung mitnimmt. All das ist
unter Eine Konversation kompaktieren
beschrieben.