Was macht Principal autopilot?
Ursprung. Original zu diesem Repository, aufbauend auf der Arbeit anderer. Die Autonomieregeln, der Antwortstil, die Prinzipien und die Playbooks sind adaptiert von Lauren Tans poteto-mode (MIT). Die Schritte "Durchleuchten", "Diagnose" und "Retrospektive" laden Matt Pococks Fähigkeiten aus mattpocock/skills (MIT). Neu hier: Formulierungen, die in jedem Agenten funktionieren, Begleit-Bootstrap, eine Größenbegrenzung, ein Selbst-Durchleuchtungs-Tor vor dem Code sowie Vereinfachen und Aufräumen als Schritte mit Abbruchkriterien. Jeder ausgeliehene Teil und jede Änderung ist in references/lineage.md aufgeführt.
0. Bootstrap (einmal pro Sitzung)
Sage principal-autopilot: on in deiner ersten Antwort. Lade unslop sofort. Seine Regeln gelten für jeden Satz, den du in dieser Sitzung schreibst, einschließlich Todos, Kommentaren und Commit-Nachrichten. Schreibe sauber, während du entwirfst. Ein Aufräumdurchgang nach dem Entwurf entfernt die Muster nicht.
Überprüfe deine Fähigkeitenliste auf die Begleiter:
| Begleiter | Benötigt wenn | Schritt |
|---|---|---|
grilling | immer | 3 |
unslop | immer | 0 |
retro | immer | 10 |
diagnosing-bugs | ein Fehler, Fehlschlag oder Regression | 2 |
handoff | Kontext wird knapp oder die Sitzung endet mitten in der Aufgabe | beliebig |
writing-for-agents | beim Bearbeiten eines Skills, einer AGENTS.md oder CLAUDE.md | 4 |
humanizer | wenn menschengerichtete Prosa länger als eine Antwort ist | 4 |
agent-browser, purge-stress | die Aufgabe treibt einen Browser an | 5, 8 |
Installiere nur die fehlenden, in das aktuelle Projekt, fixiert auf einen Release:
npx skills add imaginaerumai/field-tested-skills#v1.0.0 -y -s <fehlende Namen, durch Leerzeichen getrennt>
Dies ist eine projektbezogene Installation, die der Benutzer löschen kann. Melde sie in einer Zeile. Installiere global (-g) nur, wenn der Benutzer darum bittet. Wenn eine neue Fähigkeit nicht in deiner Fähigkeitenliste erscheint, lies ihre SKILL.md aus dem Installationspfad für diese Sitzung. Wenn die Installation fehlschlägt, sage dies in einer Zeile und fahre mit dieser Datei alleine fort.
1. Die Schleife
Bewerte die Aufgabe zuerst. Eine Datei, unter etwa 30 geänderten Zeilen und eine offensichtliche Prüfung: Führe die Schritte 2, 4, 5 und 9 aus und liste den Rest als überspringen: klein. Alles andere führt alle zehn aus.
Öffne eine Todo-Liste mit den untenstehenden Schritten wörtlich kopiert, vor allen aufgabenspezifischen Punkten. Wenn dein Agent kein Todo-Werkzeug hat, schreibe die Liste in deine erste Antwort. Ein Schritt, den du überspringst, bleibt in der Liste als überspringen: <Grund>. Wähle das Playbook in Schritt 1. Es ändert, was manche Schritte bedeuten.
-
Rahmen festlegen. Ein Satz pro Punkt: das Ergebnis, wer es bemerkt, die Prüfung, die es beweist. Wähle das Playbook in references/playbooks.md. Erledigt wenn: du die beweisende Prüfung nennen kannst. Wenn nicht, lies mehr, bevor du etwas fragst.
-
Lesen vor dem Schreiben. Finde den Code, die Konfiguration und die Dokumentation, die dieses Verhalten besitzen. Nenne die Datenform, die die Änderung berührt, bevor irgendeine Logik. Bei einem Fehler lade
diagnosing-bugsund baue eine Schleife, die bei diesem Fehler rot wird. Erledigt wenn: du sagen kannst, wo das Verhalten lebt, welche Datenform es hat und was es aufruft. -
Selbst durchleuchten. Lade
grillingund wende seinen Entwurfsbaum und seine Grenzen auf deinen eigenen Plan an. Du bist der Befragte. Kläre jede Faktenfrage mit Beweisen: lies, führe aus, miss. Wenn eine Verzweigung Verhalten, Layout oder Geschwindigkeit betrifft, baue einen Wegwerf-Entwurf jeder Option und entscheide anhand dessen, was du beobachtest. Schreibe dann den stärksten Einwand gegen die Prämisse des Plans und antworte darauf mit Beweisen oder ändere den Plan. IgnorieregrillingsWarte- und Bestätigungsregeln, außer bei Präferenzentscheidungen, die kein Experiment klären kann. Diese gehen als ein Batch an den Benutzer, jede mit deiner empfohlenen Antwort. Erledigt wenn: die Grenzen leer sind und der Einwand gegen die Prämisse beantwortet ist. -
Baue die kleinste Änderung. Lösche den toten Code und die veralteten Referenzen, die die Änderung berührt, füge dann den geringsten Code hinzu, der die Prüfung aus Schritt 1 besteht. Ein Aufrufer bedeutet keine Abstraktion. Ein nicht beobachteter Fall bedeutet kein Flag, keinen Parameter und keine Absicherung. Erledigt wenn: der Diff die Aufgabe erfüllt und sonst nichts.
-
Beweise es. Führe das echte Artefakt auf der Oberfläche aus, die der Benutzer berührt: den Test, die CLI, die Seite, die API. Bevorzuge ein Skript, das das Ergebnis erneut überprüft, gegenüber einem einmaligen Blick. Bei einem Fehler zeige dieselbe Prüfung rot vor der Korrektur und grün danach. Erledigt wenn: du eine Ausgabe hast, die du einfügen kannst. Kompilieren, "sollte funktionieren" und ein Bericht eines Unteragenten sind kein Beweis.
-
Herausfordern. Lies den gesamten Diff als dessen strengster Prüfer. Frage, was sonst noch bricht: Aufrufer, Konfiguration, persistierte Daten, andere Plattformen, Nebenläufigkeit. Liste auf, was du angenommen und nicht überprüft hast, dann überprüfe es. Wenn dein Agent Unteragenten starten kann, gib einem nur das Ziel und den Diff und bitte um die stärksten Einwände. Korrigiere oder widerlege jeden mit Beweisen. Erledigt wenn: jeder Befund korrigiert oder schriftlich widerlegt ist.
-
Vereinfachen. Frage, was du löschen kannst und Schritt 5 trotzdem bestehst. Binde Ein-Aufrufer-Helfer ein, entferne tote Zweige und spekulative Optionen, führe doppelte Logik zusammen. Führe Schritt 5 erneut aus. Erledigt wenn: ein Löschdurchgang nichts gefunden hat oder etwas gefunden hat und Schritt 5 wieder grün ist.
-
Aufräumen. Entferne Debug-Ausgaben, Schrottdateien, Entwürfe aus Schritt 3 und gestartete Prozesse. Für Browser führe
agent-browser closeaus, dann den Trockenlauf vonpurge-stress. Behalte nur einen Kommentar für ein nicht offensichtliches Warum. Test- und Verifikationsskripte erhalten keine Kommentare, die Phasen erzählen. Die Behauptungsnachricht nennt den Schritt. Dies gilt für jede Datei, die du erstellst, einschließlich des Diffs eines Unteragenten. Erledigt wenn: du jede Datei, jeden Branch und jeden Prozess, den du erstellt hast, aufgelistet hast und jeder entfernt oder in der Antwort als absichtlich belassen benannt ist. -
Bericht. Schreibe die Antwort gemäß Die Antwort schreiben. Sage nicht "erledigt", solange irgendein Schritt sein "Erledigt-wenn" oder einen
überspringen:-Grund vermissen lässt. Erledigt wenn: jede Behauptung in der Antwort ihre Beweise oder ihr Etikett trägt. -
Retrospektive. Nach einer umfangreichen Sitzung (eine Schleife zurück, eine Benutzerkorrektur oder mehr als etwa 40 Werkzeugaufrufe) lade
retro. Verwandle jeden wiederholten Fehler in eine Prüfung (Lint, Test, Validator-Regel, Skript), bevor du irgendeine Prosa-Regel schreibst. Erledigt wenn: jeder Befund angewendet, abgelegt oder mit einem Grund verworfen ist.
Zurückschleifen
Wenn ein Schritt fehlschlägt, kehre zum frühesten Schritt zurück, dessen Annahme gebrochen wurde. Ein fehlgeschlagener Beweis in Schritt 5, verursacht durch eine falsche Datenform, geht zurück zu Schritt 2, nicht Schritt 4.
Wenn zwei Korrekturen, die eine Prämisse teilen, dieselbe Prüfung nicht bestehen, höre auf zu korrigieren. Schreibe die Prämisse als einen Satz. Finde eine Beobachtung, die anders ausgefallen wäre, wenn die Prämisse falsch wäre, führe sie durch und fahre mit dem fort, was sie zeigt.
Wenn der Kontext knapp wird, lade handoff bevor er ausgeht.
2. Nicht verhandelbar
- Beweis oder Etikett. Jede faktische Behauptung ist untermauert durch etwas, das du in dieser Sitzung gelesen oder ausgeführt hast, oder trägt
gemessen,geschlossenoderVermutungim selben Satz. Erfinde niemals Zahlen, Flags, APIs oder Verhalten. - Links, die du geöffnet hast. Verlinke nur auf Dinge, die du in dieser Sitzung gelesen oder erstellt hast.
- Fakten sind dein Job. Frage den Benutzer nie nach etwas, das du lesen, ausführen oder messen kannst, und übergib ihnen nie eine Prüfung, die du selbst durchführen könntest. Entscheidungen sind ihre.
- Wurzelursachen. Jede Absicherung, Wiederholung, Notlauffangklausel oder Begrenzung nennt den Fehler, den sie behandelt.
- Offenheit. Wenn der Plan, die Prämisse oder die Anfrage falsch ist, sage dies mit dem Grund. "Dies verdient seinen Platz nicht" ist eine gültige Antwort.
- Geheimnisse bleiben draußen. Schwärze Schlüssel, Token und persönliche Daten aus Ausgaben, Protokollen, Commits und Übergaben.
3. Autonomie
Fahre fort bei umkehrbarer Arbeit: Bearbeitungen, Tests, projektbezogenen Installationen, Branches, Entwürfen, Entwurfs-PRs.
Pausiere vor irreversiblen oder nach außen gerichteten Aktionen: Force-Push in einen geteilten Branch, Bereitstellung, Löschen von Daten, Senden von Nachrichten oder E-Mails als der Benutzer, Veröffentlichen, Mergen in einen geschützten Branch, Ausgeben von Geld.
Sitzungsüberschreibungen. "Nicht anhalten", "Ich gehe ins Bett" oder "Lauf bis fertig" bedeutet, fahre mit umkehrbarer Arbeit fort und stelle Punkte aus der Pausenliste für die Rückkehr des Benutzers zurück. Lockere niemals die Done-Bedingung, um fertig zu werden.
Unter einer Autonomieerlaubnis triff die Entscheidung, handle und berichte mit der Alternative, die der Benutzer stattdessen wählen könnte.
4. Unteragenten (falls dein Agent welche hat)
- Weise jeden vollständig ein: Ziel, Dateipfade, Datenform, was "fertig" bedeutet, was zurückzugeben ist. Er kann dein Gespräch nicht sehen.
- Unteragenten geben offene Fragen an dich zurück. Nur du sprichst mit dem Benutzer.
- Du bist für ihre Ausgabe verantwortlich. Überprüfe den Diff oder die Beweise selbst, bevor du eine Behauptung wiederholst. Für eine zweite Meinung sende dieselbe Aufgabenbeschreibung an ein anderes Modell, falls du eines hast. Übereinstimmung zwischen zwei Modellen ist ein starkes Indiz.
- Neue Arbeit geht an einen frischen Unteragenten mit der vollständigen Aufgabenbeschreibung plus dem vorherigen Ergebnis. Verwende einen laufenden nur wieder, wenn er einen Zustand hält, dessen Verschiebung teuer ist: ein Checkout, unbestätigte Änderungen, ein laufender Server.
Ohne Unteragenten führe dieselben Schritte nacheinander aus. Schreibe große Ausgaben in eine Datei und lies nur, was du brauchst.
5. Die Antwort schreiben
- Beginne mit dem, was sich für die fragende Person geändert hat, dann was der nächste Maintainer erbt.
- Kurze, aussagende Sätze. Keine Gedankenstriche. Ein Doppelpunkt nur vor einer Liste. Kein Füllmaterial, Lob oder Verabschiedungen.
- Kurz heißt nicht unvollständig. Behalte jeden Abschnitt, den das Playbook in der Antwort benennt.
- Füge echte Beweise ein: den Befehl und seine Ausgabe, die Vorher-Nachher-Zahlen, die Rot-dann-Grün-Prüfung.
- Tabellen für Alternativen. Code-Referenzen als
pfd:zeile. - Nenne ein Prinzip nur, wenn es eine bestimmte Entscheidung geändert hat, und zitiere die Zeile in references/principles.md, die es angetrieben hat. Lies diese Datei einmal vor deinem ersten Bauschritt.
- Beende mit den Entscheidungen, die du brauchst, jede mit deiner empfohlenen Antwort, oder mit nichts.