Ponytail: den Agenten weniger schreiben lassen, ohne das Wichtige zu kappen
DietrichGebert/ponytail · 145.811★ · 7.814 forks
Alles Wissenswerte zu DietrichGebert/ponytail: ein Regelwerk aus Regeln, Skills und Adaptern, damit Programmier-Agenten die minimale Lösung wählen, die die Anforderung erfüllt.
Was Ponytail ist
Ponytail ist ein Plugin und eine Sammlung von Anweisungen für Programmier-Agenten. Das bewusst karikaturhafte Bild ist das eines Senior-Entwicklers, der fünfzig Zeilen durch eine ersetzt; das technische Ziel ist, dass der Agent aufhört, unnötige Funktionen, Abstraktionen oder Abhängigkeiten zu bauen.
Es sollte nicht mit einem Kontext-Kompressor oder einem Modell verwechselt werden. Es ist eine Verhaltensschicht: Sie wird je nach Umgebung als dauerhafte Regeln oder als Skill eingespeist. Die offizielle Website fasst es als „der geringste Code, der funktioniert” zusammen; das README konkretisiert eine Entscheidungsleiter und Sicherheitsgrenzen.
Der Ursprung: eine einfache Regel wird zur plattformübergreifenden Distribution
GitHub verzeichnet die Erstellung des Repositorys am 12. Juni 2026. Das Konto des Autors weist das npm-Paket Dietrich Gebert zu, obwohl das GitHub-Profil weder Biografie noch Unternehmen angibt. Zwei Tage später, am 14. Juni, tauchte das Repository bereits auf Hacker News auf.
Die Erzählung des Projekts geht von einer vertrauten Spannung in der KI-gestützten Programmierung aus: Ein Agent kann eine Bibliothek, eine Komponente und eine Konfigurationsschicht bevorzugen, obwohl der Browser, die Standardbibliothek oder bestehender Code das Problem bereits lösen. Das Beispiel im README stellt einen Datumsauswähler dem nativen Element <input type="date"> gegenüber.

Das Projekt macht aus der Zeilenreduktion keine blinde Regel. Das README wurde korrigiert, nachdem Issue #126 einen frühen Vergleich mit einer Modellantwort ohne Agenten infrage gestellt hatte: Die aktuelle Dokumentation stellt das frühere Ergebnis nun als Höchstwert pro Aufgabe dar, nicht als allgemeinen Durchschnitt. Das ist ein nützliches Signal, dass die Zahlen eigene Messungen des Projekts sind, keine unabhängige Studie.
Philosophie und Grundsätze
Die Leiter von Ponytail, dokumentiert in AGENTS.md und im README, wird durchlaufen, nachdem die Aufgabe und der betroffene Ablauf verstanden sind:
- Muss es überhaupt gebaut werden? Wenn nicht, entfällt es nach YAGNI.
- Existiert es bereits in der Codebasis? Wiederverwenden.
- Bietet es die Standardbibliothek? Verwenden.
- Gibt es eine native Plattformfunktion? Bevorzugen.
- Gibt es bereits eine installierte Abhängigkeit, die es löst? Nutzen.
- Passt es in eine Zeile? In einer Zeile belassen.
- Erst dann wird die minimal notwendige Implementierung geschrieben.

Die Grenze ist ebenso wichtig wie die Leiter. Die Anweisungen schließen von der Vereinfachung aus: Validierung an Vertrauensgrenzen, Fehlerbehandlung, die Datenverlust verhindert, Sicherheit, Barrierefreiheit und ausdrücklich Angefordertes. Bei nicht trivialer Logik verlangt es eine kleine, ausführbare Prüfung; eine Vereinfachung, die eine bekannte Einschränkung akzeptiert, kann mit ponytail: und einem Verbesserungspfad kommentiert werden. „Faul” bedeutet also weniger Wartungsaufwand, nicht den Wegfall von Garantien.

Wie es funktioniert
Das Repository pflegt eine einzige Quelle für Regeln und Adapter für verschiedene Hosts. Bei Hosts mit Plugins laden Hooks den aktiven Modus und können die Anweisungen vor jedem Zug einspeisen; bei reinen Anweisungs-Adaptern wird die passende Regeldatei kopiert. Das README erklärt Kompatibilität mit zwanzig Agenten und nennt unter anderem Claude Code, Codex, Copilot CLI, OpenCode, Gemini CLI, Pi, Hermes Agent, Devin CLI, OpenClaw, Qoder und Swival.
Die verfügbaren Modi sind lite, full, ultra und off. Der Standardmodus ist full. Neben dem Haupt-Skill gibt es Befehle, um einen Diff zu prüfen, ein Repository zu auditieren, aufgeschobene technische Schulden zu protokollieren, Benchmark-Ergebnisse anzuzeigen und um Hilfe zu bitten.
Das Repository enthält einen reproduzierbaren Benchmark. Laut README vergleicht er Claude-Code-Sitzungen über full-stack-fastapi-template, mit zwölf Feature-Aufgaben und vier Wiederholungen mit Haiku 4.5. Er gibt einen Durchschnitt von 54 % weniger Zeilen, 22 % weniger Tokens, 20 % geringeren Kosten und 27 % weniger Zeit an, bei bestandenen Sicherheitsprüfungen des gesamten Sets. Das sind von Ponytail veröffentlichte Ergebnisse; in dieser Recherche wurde keine unabhängige Reproduktion gefunden. Das README selbst warnt, dass Modelle mit sehr knapper Argumentation die Einsparung umkehren können.

Offizieller und halboffizieller Status
Ponytail bietet Installationsanweisungen über die Plugin-Mechanismen von Claude Code, Codex, GitHub Copilot CLI, Gemini CLI, Devin CLI und Hermes Agent, außerdem npm-Distribution für OpenCode und Pi. Dass das Paket über diese Mechanismen installierbar ist, bedeutet technische Kompatibilität und Verbreitung über deren Oberflächen; das allein ist keine Zertifizierung der Methodik und keine redaktionelle Empfehlung von Anthropic, OpenAI, GitHub, Google oder Nous Research.
Die Hermes-Integration wurde im Pull Request #78 hinzugefügt: Er registriert pre_llm_call, Skills mit dem Namensraum ponytail: und Slash-Befehle. Version v4.8.4 erklärt zudem native Plugin-Unterstützung für Hermes und Devin CLI. Es wurde weder eine offizielle Standard-Bezeichnung noch eine Anbieter-Marktplatzseite gefunden, die einen anderen formellen Status verleihen würde; in der Praxis ist es ein de facto weit verbreitetes Projekt innerhalb des Musters „Skill für Agenten”.
Das Ökosystem
Distributionen und Projektkomponenten
@dietrichgebert/ponytail: npm-Paket für OpenCode und Pi. Die zuletzt gefundene veröffentlichte Version ist4.8.4; npm verzeichnete 9.488 Downloads zwischen dem 29. Juli und 4. August 2026 sowie 36.886 zwischen dem 6. Juli und 4. August. Das sind Paket-Downloads, keine eindeutigen Installationen.ponytail-mcp: MCP-Server, enthalten seitv4.8.0; er stellt das Regelwerk MCP-kompatiblen Agenten bereit.benchmarks/: Testgeschirr und Ergebnisse des Projekts zur Messung von Zeilen, Tokens, Kosten, Zeit und Sicherheitsprüfungen..openclaw/skills/: ein ausskills/generiertes Paket; das README weist an, es vor der Veröffentlichung der sechs Skills auf ClawHub mitnode scripts/build-openclaw-skills.jsneu zu generieren.
Die Abfrage der öffentlichen Repositories des Autors ergab drei: das Hauptrepository, DietrichGebert/DietrichGebert und DietrichGebert/maxfelker.com. Ein zusätzliches öffentliches Schwester-Repository für Ponytail wurde nicht identifiziert.
Derivate, Forks und Community-Ports
Die Forks-API lieferte überwiegend Kopien mit unveränderter Beschreibung. Zu den Derivaten, die sich tatsächlich als Anpassung oder Erweiterung präsentieren, gehören:
warp-svg/ponytail-gilfoyle: eine Neuinterpretation mit Gilfoyle-Stimme, die angibt, die YAGNI-Leiter und die Sicherheitsgrenzen zu bewahren; 7 Sterne.pavnxet/Mimocode-ponytail: ein Derivat, das als Senior-Entwickler-Modus für Agenten beschrieben wird; 3 Sterne.robertbarclayy/NWBZPWNR: ein Fork, der angibt, Ponytail auf die Spitze zu treiben; 3 Sterne.wilfgrainger/cave-pony: eine erklärte Kombination aus Ponytail undJuliusBrussee/caveman; das gefundene Suchergebnis bestätigt die Verbindung, eine vollständige Sternezahl zur Zitierung wurde jedoch nicht gefunden.
Das Hauptrepository enthält gepflegte Übersetzungen seines README ins Spanische (README.es.md) und Koreanische (README.ko.md). Eine unabhängige, nicht-englische Community-Übersetzung, die als eigenständiger Port gelten könnte, wurde nicht gefunden.
Repo-Zahlen
Gemessen: 6. August 2026, GitHub- und npm-API.
| Kennzahl | Wert |
|---|---|
| Sterne | 97.059 |
| Forks | 5.332 |
| Echte Abonnenten | 235 |
| Commits | 206 |
| Von der API angegebene offene Issues | 157 |
| Hauptsprache | JavaScript |
| Lizenz | MIT |
| Erstellung | 12. Juni 2026 |
Letzter gefundener Push auf main | 15. Juli 2026 |
| Letzte Veröffentlichung | v4.8.4, 29. Juni 2026 |

Die Zahl von 206 Commits stammt von der letzten Seite, die im Paginierungs-Header der API angegeben wird. Die wichtigsten Mitwirkenden nach Anzahl der Beiträge waren DietrichGebert (107), Lakshya77089 (10), ousamabenyounes (8), gefolgt von dhedhialy, hamza-ali-shahjahan und salaamdev (je 4).
Die API gibt watchers_count als Duplikat der Sterne zurück; deshalb wird subscribers_count als echte Abonnenten angegeben. open_issues_count kann Issues und offene Pull Requests vermischen und entspricht daher nicht zwangsläufig ausschließlich Issues. Die API-Antwort zeigt updated_at mit dem 6. August 2026; dies wird als API-Metadatum übernommen, ohne Aktivität nach dem zuletzt gefundenen Push zu unterstellen.
Wie man beiträgt
Es wurde weder eine CONTRIBUTING.md noch ein formeller Leitfaden für Fork und Pull Request gefunden. Im README stehen Entwicklungsanweisungen: Nach der Änderung kompakter Regeln werden node scripts/check-rule-copies.js und npm test ausgeführt; bei Änderung eines OpenClaw-Skills wird er mit node scripts/build-openclaw-skills.js neu generiert.
Der Pull Request #491 veranschaulicht die bei einem Beitrag verwendeten Prüfungen: Kontrolle der Regelkopien, Versionsprüfung, Node-Tests, npm test und git diff --check. Das ist Beleg für Entwicklungspraxis, keine veröffentlichte Beitragsvorlage.
Kurzanleitung zur Nutzung
Installation und erster Start
- Claude Code: Senden Sie
/plugin marketplace add DietrichGebert/ponytailund/plugin install ponytail@ponytailals getrennte Nachrichten. Das README betont, dass es zwei verschiedene Nachrichten sein müssen. Es erfordertnodeimPATH; ohne es bleiben die Skills verfügbar, die dauerhafte Aktivierung wird jedoch stillschweigend deaktiviert. - Codex: Führen Sie
codex plugin marketplace add DietrichGebert/ponytailundcodex plugin add ponytail@ponytailaus; öffnen Sie danncodex, prüfen und autorisieren Sie die beiden Hooks unter/hooksund beginnen Sie einen neuen Thread. Die Installation deckt nach einem Neustart auch die Desktop-Anwendung ab. - OpenCode: Fügen Sie
{ "plugin": ["@dietrichgebert/ponytail"] }zuopencode.jsonhinzu. Alternativ aus einer lokalen Kopie:{ "plugin": ["./.opencode/plugins/ponytail.mjs"] }. - Hermes Agent: Führen Sie
hermes plugins install DietrichGebert/ponytail --enableaus und starten Sie Hermes neu.

Gängige Arbeitsabläufe
- Um die Intensität festzulegen, verwenden Sie
/ponytail full,/ponytail lite,/ponytail ultraoder/ponytail off; ohne Argument wird die aktuelle Stufe angezeigt. - Um den aktuellen Arbeits-Diff auf Überkonstruktion zu prüfen, rufen Sie
/ponytail-reviewauf; das Ergebnis ist eine Liste vorgeschlagener Entfernungen oder Vereinfachungen. - Um ein ganzes Repository statt eines einzelnen Diffs zu prüfen, rufen Sie
/ponytail-auditauf. - Um bewusste Abkürzungen nicht zu vergessen, verwenden Sie
/ponytail-debt: Es sammelt dieponytail:-Anmerkungen in einem Protokoll./ponytail-gainzeigt den Wirkungsindikator aus den eigenen Benchmarks des Projekts.

Bei Codex gibt das README an, dass Skills mit @ aufgerufen werden, zum Beispiel @ponytail-review. Bei Copilot CLI ändert der Namensraum des Plugins die Beispiele zu /ponytail:ponytail ultra und /ponytail:ponytail-review.
Wesentliche Konfiguration
PONYTAIL_DEFAULT_MODE: Umgebungsvariable, dielite,full,ultraoderofffür neue Sitzungen festlegt.~/.config/ponytail/config.json: dauerhafte Alternative mit dem FelddefaultMode; unter Windows wird%APPDATA%\ponytail\config.jsonverwendet.PONYTAIL_SUBAGENT_MATCHER: ein nicht verankerter, Groß-/Kleinschreibung ignorierender regulärer Ausdruck, um die Einspeisung bei Subagenten nachagent_typeeinzugrenzen.opencode.json: Einstiegspunkt für das Paket oder den lokalen Adapter in OpenCode.AGENTS.mdoder die Regeldatei des Adapters: Migrationspfad für Cursor, Windsurf, Cline, Kiro, Copilot Chat, Aider, Zed und andere Hosts ohne vollständiges Plugin.
Häufige Fallstricke und Lösungen
- Hooks lösen in Claude Code oder Codex nicht aus: Prüfen Sie, ob
nodeimPATHder nicht-interaktiven Shell verfügbar ist; das README nennt ausdrücklich Nix- und nvm-Umgebungen. Die Skills hängen nicht davon ab, ob der Hook funktioniert. - OpenCode erkennt Ponytail nur innerhalb der geklonten Kopie: Issue #97 dokumentiert diesen Fall. Das aktuelle README empfiehlt das Paket
@dietrichgebert/ponytailoder einen absoluten Pfad zur.mjs-Datei, wenn eine Kopie zwischen Projekten geteilt wird; ein Pfad mit./wird relativ zuropencode.jsondes Projekts aufgelöst. - Der Modus bleibt nicht bestehen, oder die Konfiguration wird überschrieben: Es gibt einen offenen Pull Request, #696, um zu verhindern, dass das Schreiben des Modus andere Daten überschreibt. Es empfiehlt sich, eine Kopie der Konfigurationsdatei aufzubewahren, wenn mehrere Werkzeuge kombiniert werden.
- Zu viel Kontext bei Subagenten: Issue #597 beziffert etwa 1.300 Tokens pro Einspeisung im
full-Modus; begrenzen Sie die Typen mitPONYTAIL_SUBAGENT_MATCHERoder deaktivieren Sie den Modus, wenn Subagenten nur der Suche dienen. - Unvollständige Deinstallation: Führen Sie
node scripts/uninstall.jsaus, bevor Sie das Plugin entfernen. Das README erklärt, dass es den externen Zustand und einen eigenen Statuszeilen-Eintrag löscht, aber nicht ausgeführt werden sollte, nachdem die Plugin-Dateien bereits gelöscht wurden.
Integrationen und Migration
ponytail-mcp ermöglicht es, die Regeln Agenten über MCP bereitzustellen. Für OpenClaw installiert clawhub install ponytail den Skill; ohne ClawHub weist das README an, .openclaw/skills/ponytail nach ~/.openclaw/skills/ zu kopieren. Bei reinen Anweisungs-Adaptern erfolgt die Migration durch Kopieren der entsprechenden Datei, etwa .cursor/rules/, .windsurf/rules/, .clinerules/, .github/copilot-instructions.md oder AGENTS.md.
Das dokumentierte Zusammenspiel mit JuliusBrussee/caveman ist laut README komplementär: Caveman reduziert die Prosa des Agenten, während Ponytail versucht, den Code zu reduzieren. Das ist eine Behauptung des Projekts, kein Beweis für universelle Interoperabilität.
Wie die Community es aufnahm
Die auffindbare Aufnahme ist gemischt und konkret:
- Der Hacker-News-Thread 48527946, eingereicht von mellosouls am 14. Juni, erhielt 98 Punkte und 17 Kommentare. Neywiny sagte, sie wolle es ausprobieren, weil ihre lokalen Modelle dazu neigten, genau die Art von Code hinzuzufügen, die der Skill zu vermeiden versucht. kamphey hielt die grundlegenden Heuristiken für nützlich, um einfache Bearbeitungen und Löschungen zu beschleunigen. Das sind individuelle Erfahrungen und Erwartungen, keine Leistungsmessungen.
- Im selben Thread wandte wiradikusuma ein, dass ein Senior-Entwickler den Kontext berücksichtigt: Ein nativer Auswähler kann in einem Fall genügen, ein anderer aber mehr benötigen. donatj kritisierte, das Repository ließe sich auf eine kurze Regel und deutlich weniger Integrationscode reduzieren. Diese Einwände passen zum wichtigsten praktischen Risiko: Minimalismus mit mangelndem Produktverständnis zu verwechseln.
- Im Thread 48588755, einer Unterhaltung über Skepsis gegenüber Werkzeugen zur Token-Reduktion, wies Zababa darauf hin, dass Ponytail und ähnliche Projekte keine verallgemeinerten Benchmarks wie SWE-Bench Pro verwendeten, und befürchtete eine stille Modell-Degradation. Das ist eine diesem Nutzer zugeschriebene Kritik; eine externe Bewertung, die sie bestätigt, wurde nicht gefunden. Das README reagiert teilweise mit seinem eigenen agentischen Benchmark und räumt die Verzerrung im früheren Vergleich ein.
- Issue #65 mit 16 Kommentaren fordert einen Vergleich mit SWE-Bench Pro und Terminal Bench 2.1. Der offene Vorschlag #432 mit 9 Kommentaren lobt die Heuristik, warnt aber, dass ein Agent Funktionen oder Variablen erfinden könnte, nur um weniger zu schreiben; diese Warnung stammt vom Autor dieses Vorschlags, nicht als Beweis, dass Ponytail dies tatsächlich tut.
Es wurden Suchen auf Reddit, X, Product Hunt, YouTube-Videos und Artikel-Suchmaschinen versucht. In diesem Durchlauf lieferte Reddit HTML-Ergebnisse ohne identifizierbare Threads, X erforderte eine Sitzung, um nutzbare Inhalte abzurufen, Product Hunt bot keinen verifizierbaren Eintrag, und die YouTube-Ergebnisse erlaubten keine einzelne Validierung von Titel, Kanal und Aufrufen. Daher werden dieses Plattformen keine Rezensionen, Veröffentlichungen oder Zahlen zugeschrieben. Ebenso wurden keine verifizierbaren Erwähnungen auf Dev.to, Hashnode, in Podcasts, Newslettern oder awesome-*-Listen gefunden.
Ponytail im Vergleich zu anderen Ansätzen
| Ansatz | Verifizierbare Übereinstimmung | Verifizierbarer Unterschied |
|---|---|---|
JuliusBrussee/caveman | Das README von Ponytail nennt es als Prosa-Kontrolle und dokumentiert die gemeinsame Nutzung. | Ponytail will beeinflussen, welcher Code gebaut wird; das README erklärt, dass Caveman den Code unverändert lässt. |
anshaneja5/scalpel | Seine gefundene Beschreibung präsentiert es als Skill für Agenten und vergleicht es ausdrücklich mit dem Benchmark von Ponytail. | Es behauptet, den Benchmark von Ponytail zu übertreffen; seine Methodik wurde nicht gefunden, weshalb diese Behauptung kein unabhängiges Ergebnis ist. |
rtk-ai/rtk | Eine Hacker-News-Diskussion gruppiert beide als Werkzeuge, die das Verhalten oder den Token-Verbrauch von Agenten verändern. | Die gefundene Quelle reicht nicht aus, um funktionale Gleichwertigkeit zu belegen; der Vergleich stammt aus einer Nutzerkritik, nicht aus einer Architekturanalyse. |
Anwendungsfälle und wem dieses Repository helfen kann
- Personen, die Agenten-Änderungen in bestehenden Codebasen prüfen, können mit der Leiter zunächst Wiederverwendung, Standardbibliothek und native Fähigkeiten prüfen, bevor eine neue Abstraktion eröffnet oder eine Abhängigkeit hinzugefügt wird.
- Teams mit Claude Code, Codex, Copilot CLI, OpenCode oder Hermes können den dauerhaften Modus aktivieren und
/ponytail-reviewals gezielte Prüfung auf Überkonstruktion vor dem Zusammenführen eines Diffs nutzen. - Maintainer mit kleinen, sich wiederholenden Aufgaben können
/ponytail-auditverwenden, um zufällige Komplexität zu finden, und/ponytail-debt, um akzeptierte Abkürzungen zu protokollieren, ohne sie als endgültige Lösungen auszugeben. - Wer mit Subagenten arbeitet, kann das Muster mit
PONYTAIL_SUBAGENT_MATCHERkombinieren, um zu entscheiden, welche Worker die Regel erhalten. Das ist besonders relevant, wenn die Kosten der wiederholten Anweisungen in Sitzungen mit vielen Subagenten spürbar sind. - Projekte mit Anforderungen an Sicherheit, Barrierefreiheit, Validierung oder Hardware sollten Ponytail als Hilfsmittel zur Überprüfung behandeln, nicht als Erlaubnis, Kontrollen zu kürzen: Diese Bereiche liegen ausdrücklich außerhalb seiner Vereinfachungspolitik.
Ressourcen
- Repository: https://github.com/DietrichGebert/ponytail
- Website und Dokumentation: https://ponytail.dev/
- Installations- und Portabilitätsleitfaden: https://github.com/DietrichGebert/ponytail#install und https://github.com/DietrichGebert/ponytail/blob/main/docs/agent-portability.md
- Offizielle Skills und Regeln: https://github.com/DietrichGebert/ponytail/tree/main/skills und https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md
- Offizielles MCP und Benchmarks: https://github.com/DietrichGebert/ponytail/tree/main/ponytail-mcp und https://github.com/DietrichGebert/ponytail/tree/main/benchmarks
- npm-Paket: https://www.npmjs.com/package/@dietrichgebert/ponytail
- Veröffentlichungen und Änderungen: https://github.com/DietrichGebert/ponytail/releases
- Diskussionen und Kritik: https://news.ycombinator.com/item?id=48527946, https://news.ycombinator.com/item?id=48588755, https://github.com/DietrichGebert/ponytail/issues/65, https://github.com/DietrichGebert/ponytail/issues/97
- Community: In den konsultierten Quellen wurde kein offizieller Link zu Discord oder einem anderen Community-Forum gefunden.
Hinweis: Dieser Artikel kombiniert das README, AGENTS.md, die Dokumentationsdateien und Versionen von Ponytail, seine offizielle Website, die GitHub-API, die npm-API und Hacker News, abgerufen am 6. August 2026. Kennzahlen und Anbieteroberflächen ändern sich mit der Zeit.
Kommentare