18 SPRACHEN · JEDER OPENAI-KOMPATIBLE ENDPUNKT · MIT

Eine Codebasis rein. Zwei Handbücher raus — eines liest dein Team, mit dem anderen findet dein Agent den Weg.

Dein Coding-Agent greppt nach einem Symbol, findet drei der sieben Stellen, auf die es ankommt, und liefert eine halbe Änderung. Das ist kein Denkfehler, sondern ein Routing-Fehler. Handbooks gibt ihm die Karte.

# komplette Pipeline, offline, kein API-Schlüssel, ~30 s
pnpm install && pnpm build
pnpm demo

Mitgeliefertes Beispielprojekt, mitgeliefertes Mock-LLM. Null Tokens verbraucht.

Sieben Befehle, eine Schleife

Türkise Schritte sind deterministisch — kein LLM, kein Netzwerk, beliebig oft in CI wiederholbar. Gelbe Schritte sprechen mit deinem Endpunkt und cachen, was sie lernen.

  1. 1analyzeKEIN LLM

    Parst jede Datei in einen typisierten Aufrufgraphen.

  2. 2generateLLM

    Karten, Etappen, Prosa, etappenübergreifender Zustand.

  3. 3renderKEIN LLM

    Markdown, HTML, Agentenindex, llms.txt.

  4. 4skillKEIN LLM

    Paketiert es für deinen Coding-Agenten.

  5. 5planLLM

    Verortet eine Änderung in byte-exakte Edits.

  6. 6applyKEIN LLM

    Alles-oder-nichts-Patch, mit Rollback.

  7. 7resyncLLM

    Schreibt das Handbuch fort. Kein Neuaufbau.

  8. Wie jede Phase funktioniert
Die Handbooks-Pipeline: analyze, generate, render, skill, plan, apply und die resync-Rückkopplung

Warum du dem Gelesenen trauen kannst

Fakten kommen aus einem Parser

tree-sitter baut den Aufrufgraphen: Funktionen, aufgelöste Kanten, Grenzaufrufe und die Aufrufe, die es nicht auflösen konnte — in Quarantäne gestellt, niemals geraten. Diese Schicht berührt nie ein LLM und ist deshalb in jedem Lauf dieselbe.

Prosa liegt darüber — und sagt es

Ein LLM schreibt, wozu eine Datei da ist und wie ein Subsystem zusammenhängt, immer im Graphen verankert. Wo es scheitert, wird die Struktur trotzdem ausgeliefert — mit leerer Beschreibung. Ein fehlender Satz ist besser als ein erfundener.

Zum Routen gebaut, nicht zum Lesen

Die Ausgabe beantwortet: „Welche Dateien, Funktionen und Zustände muss diese Änderung anfassen?“ — auch die verstreuten, nicht offensichtlichen, die eine Textsuche übersieht. Dann liest der Planner an jeder Adresse den echten Quelltext.

Anwenden ist absichtlich langweilig

Anker müssen byte-exakt und eindeutig passen. Alles wird geprüft, bevor irgendetwas geschrieben wird. Jede berührte Datei wird mit ihrem Hash von vor dem Patch gesichert, damit das Rollback beweisen kann, was es wiederherstellt.

Es bleibt inkrementell aktuell

Resync vergleicht den alten Aufrufgraphen mit dem neuen und regeneriert nur, was sich wirklich geändert hat. Drei Dateien angefasst, für drei Dateien bezahlt. Dokumentation verrottet nicht mehr, weil ihre Aktualisierung nicht mehr teuer ist.

Und es legt seine eigenen Grenzen offen

Sprachen, die der konfigurationsgetriebene Analyzer liest, werden im Überblick namentlich genannt — „Best-Effort-Aufrufbeziehungen“ können damit nie als „exakt“ gelesen werden.

Analysetreue

Ein Lauf. Sechs Lieferformate.

Die Generierung ist der teure Teil, und sie passiert einmal. Alles darunter ist ein deterministisches Re-Rendering, das du bei jedem Commit laufen lassen kannst.

Markdown-Handbuch

Überblick · Index · eine Seite pro Etappe · Zustandsregister-Tabelle

Mehrseitige HTML-Site

Sticky-TOC, Breadcrumbs, Theme-Umschalter — läuft über file://

Eine eigenständige Seite

eine einzelne .html, die du mailen oder an ein Ticket hängen kannst

Agenten-Locator-Index

Aufgabe · Kernkonzepte · Zustand · Exemplare · Co-Change-Hinweise

llms.txt + llms-full.txt

die llms.txt-Konvention, plus das Ganze flach in einer Datei

Agenten-SKILL-Paket

SKILL.md + references/ + ein Inhalts-Hash pro Datei

Fang mit dem kostenlosen Befehl an

handbook analyze braucht nie einen API-Schlüssel. Lass ihn über dein Repo laufen, sieh dir die Datei- und Funktionszahlen an und entscheide dann, ob der Rest einen einzigen Token wert ist.