context-weight

Miss- und reduziert den Kontext, den ein Agent vor Arbeitsbeginn lädt (CLAUDE.md, AGENTS.md, GEMINI.md, Regeln, @imports, Skill-Listings) sowie die Größe von Sessions – basierend auf lokalen Claude Code- und Codex-Logs. Dann schlankt es Anweisungsdateien und beweist, dass keine Zeile verloren ging.

Was ist context-weight?

Context Weight ist ein Skill für Claude Code und Codex, der den Startup-Overhead eines Repos misst und reduziert. Jedes Mal, wenn ein Agent startet, werden alle Anweisungsdateien (wie CLAUDE.md, AGENTS.md, GEMINI.md) mit jeder Anfrage erneut gesendet – eine 150k-Token-Datei kostet 150k Token *pro Anfrage*, bevor die eigentliche Arbeit beginnt. Das Skript `scripts/cw.py` analysiert die lokalen Logs beider Harnesses, berechnet die geschätzten Startup-Tokens pro Harness, zeigt gemessene Session-Startwerte an und identifiziert die größten Kontextfresser. Es schreibt nie in Benutzerdateien und gibt nur Zahlen aus – optional mit einem Diagramm (`--svg`). Auf Basis der Ergebnisse schlägt der Skill gezielte Hebel vor: Anweisungsdateien verschlanken (Referenzen in `docs/agent-notes/` auslagern), Sessions hygienisch halten (frühzeitig `/clear` oder `/new`) oder nicht benötigte Skills deinstallieren. Der Skill beweist den Erfolg durch `verify-split` (0 bei korrektem Split), `cw.py files` vorher/nachher und einen CI-Check (`--max-tokens 6000`). So vermeidet man "context บวม", reduziert Tokens und verhindert, dass CLAUDE.md ausufert.

Funktioniert mit✓Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/ohm41321/context-weight/tree/HEAD/skills/context-weight

Installed? Explore more Produktivität & Zusammenarbeit skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Context Weight

Was beim Start geladen wird, wird mit jeder Anfrage in der Session erneut gesendet. Eine 150k-Token-CLAUDE.md kostet 150k Token pro Anfrage, bevor irgendeine Arbeit passiert. Dieser Skill misst diese Last, reduziert sie und beweist die Reduktion mit Zahlen.

Das Skript ist scripts/cw.py im Verzeichnis dieses Skills. Löse seinen absoluten Pfad aus dem Ort dieser Datei auf. Es benötigt Python 3.8+ und sonst nichts. Es verändert niemals Benutzerdateien, es gibt Zahlen aus, niemals Transkriptinhalte, und die eine Datei, die es schreibt, ist das Bild, das mit --svg oder --open angefordert wird.

Live-Meter? Für „Wie voll ist mein Kontext gerade?“ nutze das Harness: Claude Code /context, Codex /status. Bei diesem Skill geht es um das Repository und die Historie.

1. Wiegen (schreibgeschützt)

python3 <skill-verzeichnis>/scripts/cw.py report <repo> --days 30 --svg

--svg zeichnet den Bericht außerdem als ein Bild im temporären Systemordner und gibt den Pfad in der letzten Zeile aus (Picture: ...). Gib dem Benutzer diesen Pfad, damit er die Zahlen auf einen Blick lesen kann; füge --open hinzu, um sie für ihn zu öffnen, wenn er sie sehen möchte. Verwende --svg DATEI, um den Speicherort zu wählen, niemals einen Pfad innerhalb des Repos, es sei denn, der Benutzer fragt danach.

Die Textausgabe besteht aus vier Teilen:

  • die Anweisungsdateien, die jedes Harness beim Start lädt, in geschätzten Tokens;
  • die Skill-Liste für jedes Harness in Bezug auf dessen Budget;
  • gemessene Session-Zahlen für dieses Repo;
  • priorisierte Ergebnisse.

Engere Ansichten: files <repo>, skills <repo>, sessions --top 20, sessions --project <name> --compare-at YYYY-MM-DD. Füge --json zu jeder davon hinzu.

Wenn du dem Benutzer berichtest, gib an:

  • Startup-Tokens pro Harness;
  • start (medianer Kontext der ersten Anfrage einer Session);
  • start% (Anteil aller Eingaben, die diese erneut gesendete Startlast ausmachen);
  • der >threshold tok-Anteil;
  • die Ergebnisse.

Sage, welche Zahlen geschätzt sind (files, skills) und welche gemessen (sessions). Das Skill-Budget von Claude Code hängt vom Kontextfenster des Modells ab, das die Logs nicht aufzeichnen: cw.py nimmt 200k an und sagt dies. Wenn der Benutzer ein 1M-Kontextmodell ausführt, führe es mit --window 1000000 erneut aus.

2. Den Hebel wählen, auf den die Zahlen zeigen

SignalHebel
Repo-Anweisungen über ~5k Token, hoher start%Anweisungsdateien verschlanken (Schritt 3)
>threshold tok über 50%Session-Hygiene (Schritt 4)
„Harnesses folgen unterschiedlichen Regeln“Eine kanonische AGENTS.md (Schritt 3)
Warnung „Codex sieht es nie“Verschlan ken oder Teile in verschachtelte AGENTS.md-Dateien verschieben
Skill-Liste über BudgetNicht verwendete Skills oder Plugins deinstallieren. Erst fragen: Es ist die Einrichtung des Benutzers

Beginne mit der größten Zahl. Lasse alles in Ruhe, worauf die Zahlen nicht hinweisen.

3. Anweisungsdateien verschlanken

Das vollständige Verfahren befindet sich in references/slimming.md. Lies es, bevor du bearbeitest. Kurzform:

  1. Sichere die Datei, nimm dann cw.py files <repo> auf.
  2. Sortiere jeden Abschnitt in eine von fünf Arten: Regel (behalten, prägnant machen), Zeiger, Referenz, Log oder Duplikat.
  3. Verschiebe Referenzen und Logs in docs/agent-notes/. Hinterlasse einen einzeiligen Zeiger mit einem einfachen Pfad. Verwende kein @: Claude Code expandiert @imports beim Start, und Codex ignoriert sie.
  4. Halte den Kern unter 200 Zeilen und etwa 5k Token, innerhalb der 32-KiB-Kettenlimit von Codex.
  5. Mache AGENTS.md zur einen kanonischen Datei. CLAUDE.md enthält @AGENTS.md plus alle Claude-spezifischen Zeilen.
  6. Beweise es: verify-split beendet sich mit 0, files zeigt den Rückgang, und die --max-tokens-Hürde wird bestanden.

Text verschieben ist sicher. Wissen löschen ist die Entscheidung des Benutzers: Frage, bevor du eine Zeile entfernst, die kein nachgewiesenes Duplikat ist.

4. Session-Hygiene

Die meisten Eingabe-Tokens stammen von späten Anfragen in langen Sessions. Jede Anfrage sendet alles Vorherige erneut.

  • Verwende eine Aufgabe pro Session.
  • Wenn der Kontext etwa die Hälfte des Fensters überschreitet oder sich die Aufgabe ändert, schreibe eine kurze Übergabe (Ziel, Zustand, nächster Schritt, berührte Dateien) und starte frisch. In Claude Code ist das /clear; in Codex ist es /new. Bevorzuge dies gegenüber wiederholter Kompaktierung.
  • Halte große Tool-Ausgaben aus dem Kontext heraus: filtere sie, kürze sie mit head oder schreibe sie in eine Datei und lies nur, was du brauchst.

5. Beweise es

  • Sofort: Vergleiche cw.py files <repo> vorher und nachher, und überprüfe, dass verify-split mit 0 endet.
  • Erneutes Wachstum stoppen: Füge python3 <skill-verzeichnis>/scripts/cw.py files . --max-tokens 6000 zu CI oder pre-commit hinzu. Es endet mit 1, wenn die Anweisungen des Repos über das Limit wachsen oder wenn Codex eine davon abschneiden würde, und mit 2, wenn der Pfad falsch ist, damit ein Tippfehler nie durchkommt.
  • Nach ein paar Tagen echter Nutzung: Führe cw.py sessions --project <name> --compare-at <Datum der Änderung> aus und berichte start und start% vorher und nachher.

Behaupte keine realisierten Einsparungen, bis dieser letzte Befehl auf Sessions nach der Änderung ausgeführt wurde.

Exit-Codes

0 ok, 1 eine Prüfung ist fehlgeschlagen (--max-tokens, verify-split), 2 ungültige Eingabe (fehlender Pfad, nicht lesbare Datei, falsches Datum). Fehler gehen nach stderr.

Referenz

  • references/harnesses.md: was jedes Harness wann lädt, Größenlimits, Skill-Ordner, mit Quellen.
  • references/slimming.md: das Verschlankungsverfahren und die Überprüfung.

Verwandte Skills