Zurück zu RADAR

Funktionsweise

So funktioniert RADAR.

Ein technischer Überblick für Entwickler. RADAR steuert Coding-Agenten und schließt eine Aufgabe erst, nachdem es den Abnahmetest der Aufgabe selbst erneut ausgeführt hat. Das „erledigt“ eines Agenten ist eine Behauptung; der erneute Lauf ist der Nachweis.

01 Die Schleife

Eine Schleife für jede Aufgabe.

Jede Aufgabe durchläuft dieselbe Schleife, und jeder Schritt läuft nur, wenn der vorherige bestanden wurde.

  1. 01 · Anlegen Aufgabe und Abnahmetest Geschrieben, bevor die Arbeit beginnt
  2. 02 · Lease Ein Owner, eigener Worktree Lease und Fence-Token
  3. 03 · Arbeit Der Agent arbeitet In seiner eigenen Kopie des Projekts
  4. 04 · Behauptung Der Agent meldet „erledigt“ Als Behauptung festgehalten, nicht als Ergebnis
  5. 05 · Prüfung RADAR führt den Test erneut aus Auf der aktuellen Revision
  6. wenn er besteht Geschlossen Der Nachweis bleibt im Protokoll
  7. wenn er fehlschlägt · Versuch n von 3 Wieder geöffnet, Fehler angehängt Derselbe Agent versucht es erneut ab Schritt 03
  8. nach 3 Versuchen Ein anderer Agent übernimmt Bis zu 3 weitere Versuche, ab Schritt 03
  9. nach 3 weiteren Die Aufgabe wartet auf Sie Das Protokoll lehnt weitere Versuche ab
Abb. 1 · Die Aufgabenschleife. Eine Behauptung führt zu einem erneuten Lauf, nie direkt zum Schließen.
Anlegen
Eine Aufgabe wird mit ihrem Ziel und einem wiederholt ausführbaren Abnahmebefehl angelegt. Der Befehl wird beim Anlegen geprüft, ohne ausgeführt zu werden: Ein Kriterium, das so, wie es geschrieben ist, nicht laufen kann, wird schon dann abgelehnt und nicht erst am Ende entdeckt.
Lease
Eine Aufgabe hat zu jedem Zeitpunkt genau einen Owner, über eine Lease und ein Fence-Token. Ein Schreibzugriff eines veralteten Owners wird abgelehnt.
Arbeit
Der Agent arbeitet in seinem eigenen Git-Worktree, auf seinem eigenen Branch.
Behauptung
Die Meldung des Agenten, er sei fertig, wird als Behauptung festgehalten. Eine Behauptung schließt die Aufgabe nicht.
Prüfung
RADAR führt den Abnahmebefehl selbst aus, auf der aktuellen Revision der Arbeit. Der eigene Bericht des Agenten wird gelesen, ist aber kein Nachweis.
Schließen oder wieder öffnen
Besteht der Test, kann die Aufgabe geschlossen werden; der Verify-Eintrag bleibt als ihr Nachweis erhalten. Schlägt er fehl, wird die Aufgabe mit angehängtem Fehler wieder geöffnet.
Limits
Drei Versuche durch den Worker, danach drei Übernahmen durch einen anderen Agenten. Danach lehnt das Protokoll weitere Versuche ab, und die Aufgabe wartet auf Sie. Ein Wechsel von Modell, Sitzung oder Rechner setzt den Zähler nicht zurück, und ein neuer Versuch muss angeben, was sich geändert hat.

02 Das Protokoll

Ein Protokoll, in das jeder Agent schreibt.

Jeder Agent liest und schreibt dasselbe Aufgabenprotokoll: eine lokale SQLite-Datei. Sie ist die einzige Aufzeichnung darüber, wer welche Aufgabe hält, was behauptet wurde und was der Test ergeben hat.

Aufgaben
Das Ziel und der Abnahmebefehl, geschrieben, bevor die Arbeit beginnt.
Zuständigkeit
Der aktuelle Owner jeder Aufgabe, mit Lease und Fence-Token.
Versuche
Pro Aufgabe gezählt, über Agenten, Modelle und Rechner hinweg.
Behauptungen
Die Meldung eines Agenten, die Arbeit sei erledigt, getrennt von den Ergebnissen gespeichert.
Verify-Einträge
Jeder Abnahmelauf, gebunden an den Commit und den Working Tree, auf dem er lief.
Änderungen
Ein geänderter Abnahmebefehl wird mit alter und neuer Fassung festgehalten; ein Übersteuern ebenfalls.

Gedächtnis

Entscheidungen und Erkenntnisse sind Markdown-Notizen mit Quelle und Geltungsbereich. Ein lokaler Index durchsucht sie offline, und ein Hook legt einem Agenten die passenden vor, bevor er handelt. Da die Notizen reines Markdown sind, können Sie sie in Obsidian öffnen.

03 Isolation

Jeder Versuch in seiner eigenen Kopie.

  • Jeder Versuch arbeitet in einem eigenen Git-Worktree, auf einem eigenen Branch. Zwei Worker teilen sich nie einen Tree.
  • Ein Worker kann seinen eigenen Abnahmebefehl nicht umschreiben. Nur der Manager kann ihn ändern, und nur bevor die Aufgabe geschlossen wird; jede Änderung bewahrt die alte und die neue Fassung.
  • Arbeit gelangt erst in Ihren Main-Branch, wenn Verify bestanden ist, und der Abnahmebefehl läuft nach dem Merge noch einmal.
  • Force-Pushes werden für jede Rolle abgelehnt.
  • Diese Regeln laufen als Code, vor und nach jedem Modellaufruf. Sie sind kein Prompt, deshalb kann ein Agent sie nicht wegdiskutieren.

04 Agenten

Die Agenten, die Sie bereits nutzen.

RADAR steuert Claude Code, Codex CLI, OMP und Hermes Agent, auf Ihrem Computer oder auf Ihren eigenen Linux-Servern. Es ersetzt sie nicht: Die Arbeit erledigen weiterhin sie.

  • Claude Code
  • Codex CLI
  • OMP
  • Hermes Agent
Ein gemeinsamer Vertrag
Für alle vier gelten dieselben Regeln, dasselbe Protokoll, dasselbe Verify-Gate und dieselben Versuchslimits.
Manager
Der Agent, mit dem Sie sprechen, übernimmt die Leitung: Er legt Aufgaben an, übergibt sie an Worker und schließt eine Aufgabe nur mit einem bestandenen Verify-Eintrag.
Worker
Worker erledigen die Arbeit in ihren eigenen Worktrees. Sie können keine Aufgaben schließen und ihren Abnahmebefehl nicht ändern.

05 Local-first

Local-first.

RADAR braucht kein Konto und keine Cloud.

Auf Ihrem Rechner
Das Protokoll, die Gedächtnisnotizen, die Worktrees und jeder Verify-Lauf, auf Ihrem Computer oder auf Ihren eigenen Linux-Servern.
Braucht Netzwerkzugang
Ihre Agenten, die wie bisher mit ihren eigenen Anbietern kommunizieren. Jeder andere externe Dienst ist optional und bleibt ausgeschaltet, bis Sie ihn aktivieren.
Voraussetzungen
Windows oder Linux (macOS wird noch nicht unterstützt), Python 3.12 oder neuer sowie Git. RADAR verwendet ausschließlich die Python-Standardbibliothek.
Kosten
Keine eigene Rechnung. Die Agenten nutzen weiterhin die Konten, mit denen Sie sie angemeldet haben. Eine kostenpflichtige API wird nur verwendet, wenn Sie den Anbieter und ein Budget festlegen.
Installation
Geben Sie Ihrem Coding-Agenten den Link zum Repository und sagen Sie „Installiere das“. Er prüft Ihren Computer, fragt nach, bevor er etwas Fehlendes installiert, installiert RADAR in einer virtuellen Umgebung und meldet, was radar init und radar doctor ausgeben.

06 Befehle

Eine kurze Liste von Befehlen.

Die Befehle, die Sie zuerst verwenden werden. Platzhalter stehen in spitzen Klammern.

BefehlFunktion
radar init Richtet das Home-Verzeichnis von RADAR und das Protokoll ein.
radar doctor Prüft die Installation und listet nicht konfigurierte optionale Dienste auf.
radar task new --project P --goal "…" --accept "<command>" Legt eine Aufgabe mit ihrem Abnahmebefehl an.
radar dispatch <task> Übergibt eine Aufgabe an einen Agenten, der in seinem eigenen Worktree arbeitet.
radar status Zeigt das gesamte System.
radar verify <task> Führt den Abnahmebefehl auf der aktuellen Revision erneut aus.
radar task done <task> --evidence "<verification report>" Schließt eine Aufgabe. Wird abgelehnt, solange Verify nicht bestanden ist.
radar collect Sammelt abgeschlossene Arbeit ein.
radar integrate Führt verifizierte Arbeit in main zusammen.
radar stop Parkt die Arbeit und setzt STOP.
radar go Hebt STOP auf und listet auf, was fortgesetzt werden kann.
radar memory search --local "<words>" Durchsucht die Gedächtnisnotizen offline.
radar uiradar web Öffnet das Cockpit im Terminal oder im Browser.
radar help --all Listet alle Befehle auf. radar <command> -h zeigt die Details.

07 Was RADAR nicht tut

Was RADAR nicht tut.

  • Es ersetzt Ihre Agenten nicht. Sie schreiben weiterhin den Code; RADAR gibt ihnen ein einheitliches Protokoll, eine Prüfung, die sie nicht überspringen können, und ein gemeinsames Gedächtnis.
  • Es schreibt Ihre Tests nicht. Eine Prüfung ist nur so gut wie ihr Test; RADAR macht den Test explizit, bevor die Arbeit beginnt, damit eine Person ihn lesen kann.
  • Es schließt keine Arbeit ohne Test. Eine Aufgabe ohne ausführbaren Abnahmebefehl wird schon beim Anlegen abgelehnt.
  • Es hält Ihre Agenten nicht offline. Sie kommunizieren weiterhin mit ihren eigenen Anbietern, wie bisher.
  • Die offene Edition ist für einzelne Entwickler gedacht, nicht für Teams; eine Unternehmensedition ist in Entwicklung.

08 Status

Im Vorabzugang

Jetzt im Vorabzugang. Open Source ab der allgemeinen Veröffentlichung.

RADAR befindet sich im Vorabzugang. Mit der öffentlichen Veröffentlichung erscheint es als Open Source unter der Apache-2.0-Lizenz. Um dabei zu sein, schreiben Sie uns.