CommunityCodierung & Entwicklunggithub.com

Principal autopilot

Führe die Arbeit durch eine Schleife aus Selbsthinterfragen, Beweisen, Herausfordern, Vereinfachen und Aufräumen, wobei zuerst die zugehörigen Fähigkeiten installiert werden. Verwende dies, wenn der Benutzer den Autopilot- oder Principal-Modus sagt, eine änderung über mehrere Dateien übergibt, einen Fehler ohne bekannte Ursache oder Arbeit, die später überprüft wird.

Was ist Principal autopilot?

Der Skill "Principal autopilot" ist eine umfassende, iterative Arbeitsablaufsteuerung für KI-Agenten in der Softwareentwicklung. Er führt den Agenten durch einen zehnstufigen Prozess: von der Aufgabenrahmenbildung über das Lesen vor dem Schreiben, Selbsthinterfragen, die kleinste Änderung, Beweise, Herausfordern, Vereinfachen, Aufräumen, Berichterstattung bis zur Retrospektive. Er unterstützt Agenten wie Claude Code, Cursor und Codex und bootstrapt zu Beginn Begleit-Skills wie "grilling", "unslop" und "diagnosing-bugs". Der Skill stellt sicher, dass jeder Schritt nachweisbare Kriterien erfüllt und legt besonderen Wert auf Beweise, Wurzelursachen und Autonomie. Er arbeitet mit einem Playbook, das die Bedeutung bestimmter Schritte je nach Aufgabentyp ändert, und enthält nicht verhandelbare Regeln wie Quellenangabe und Geheimnisschutz. Der Skill ist ideal für komplexe, mehrteilige Änderungen oder Fehlerbehebungen, bei denen Qualität und Nachvollziehbarkeit entscheidend sind.

Funktioniert mit✓Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/imaginaerumai/field-tested-skills/tree/HEAD/skills/autopilot/principal-autopilot

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

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

Dokumentation

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:

BegleiterBenötigt wennSchritt
grillingimmer3
unslopimmer0
retroimmer10
diagnosing-bugsein Fehler, Fehlschlag oder Regression2
handoffKontext wird knapp oder die Sitzung endet mitten in der Aufgabebeliebig
writing-for-agentsbeim Bearbeiten eines Skills, einer AGENTS.md oder CLAUDE.md4
humanizerwenn menschengerichtete Prosa länger als eine Antwort ist4
agent-browser, purge-stressdie Aufgabe treibt einen Browser an5, 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.

  1. 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.

  2. 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-bugs und 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.

  3. Selbst durchleuchten. Lade grilling und 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. Ignoriere grillings Warte- 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.

  4. 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.

  5. 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.

  6. 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.

  7. 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.

  8. Aufräumen. Entferne Debug-Ausgaben, Schrottdateien, Entwürfe aus Schritt 3 und gestartete Prozesse. Für Browser führe agent-browser close aus, dann den Trockenlauf von purge-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.

  9. 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.

  10. 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, geschlossen oder Vermutung im 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.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Verwandte Skills