Communitygithub.com

CLI Creator

Router zum Erstellen und Überprüfen von produktionsreifen Python-CLI-Tools und zugehörigen Skills/Templates.

Was ist CLI Creator?

Diese Skill dient als Router und Leitfaden für den Aufbau und die Überprüfung von Python-CLI-Werkzeugen, die produktionsreif sind. Sie hilft Entwicklern, die richtige CLI-Form zu wählen, die Befehlsfläche klein zu halten, die Installierbarkeit zu bewahren und Überprüfungsergebnisse durchzusetzen. Die Skill ist leichtgewichtig und lädt nur die Referenzen, die für die aktuelle Aufgabe benötigt werden. Sie unterstützt verschiedene CLI-Typen (befehlserste Utility, konfigurationsgetrieben, interaktiv, hybrid, performance-lastig, plugin-basiert) und gibt konkrete Regeln für den minimalen, aber funktionalen Entwurf. Für die Überprüfung bietet sie eine detaillierte Bewertungsmatrix (Rubrik) und eine Liste häufiger Fallstricke mit Lösungen. Die Skill ist für die Arbeit in Claude Code, Cursor und anderen KI-Agenten-Plattformen optimiert, die Python-CLI-Entwicklung unterstützen. Sie stellt sicher, dass Befehlsnamen, Flags, Exit-Codes und Ausgabemodi stabil bleiben und dass die CLI sauber installiert und getestet werden kann.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add AdvancingTitans/cli-creator-skill

In Ihrer bevorzugten KI fragen

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

Dokumentation

Was macht CLI Creator?

Router zum Erstellen und Überprüfen von produktionsreifen Python-CLI-Tools und zugehörigen Skills/Templates. Verwende ihn, um die CLI-Form zu bestimmen, die Befehlsfläche klein zu halten, die Installierbarkeit zu bewahren und Überprüfungsergebnisse durchzusetzen. Diese Skill bleibt leichtgewichtig: Lade nur die Referenzen, die du benötigst.

Wann verwenden

  • Neue Python-CLI oder Befehlsbaum.
  • CLI-Refaktorisierung, -Vereinfachung oder -Paketbereinigung.
  • CLI-Überprüfung/-Audit, einschließlich UX, Konfiguration, Fehler, Cache und Release-Ablauf.
  • Agenten-Skill, Gerüst oder Vorlage, das sich wie ein CLI-Paket verhält.
  • Überprüfung der Installation, des Wheels oder des Konsolenskriptverhaltens.

CLI-Typauswahl

TypAusrichtung
Befehlserste UtilityDünner Router, strenge Exit-Codes, JSON/Klartext-Ausgabe.
Konfigurationsgetriebenes WerkzeugKonfigurationserkennung, Priorität, Reproduzierbarkeit.
Interaktiver AssistentAblauf/Zustandsmaschine, Eingabeaufforderungen, Wiederherstellung.
Hybride CLIKleiner Befehlsbaum plus wiederverwendbare Orchestrierung.
Performance-lastige CLIFaule Importe, begrenzte E/A, Cache/Fortschritt.
Plugin-/erweiterbare CLIStabiler Erweiterungsvertrag und Registrierung.

Erzwinge keine Assistentenarchitektur für ein befehlserstes Werkzeug. Erzwinge keine Ein-Skript-Form für ein wachsendes Produkt.

Kernregeln

  • Bevorzuge die kleinste CLI, die die Benutzeraufgabe löst.
  • Verwende den minimalen CLI/YAGNI-Pfad: Wenn das Werkzeug ein oder zwei Befehle hat, keinen dauerhaften Zustand, kein Netzwerk, keine Plugins und keine Anmeldeinformationen, halte es klein; füge kein Rich, Pydantic, platformdirs, Cache-Schichten, doctor oder Plugin-Registrierungen hinzu, es sei denn, sie lösen ein unmittelbares Problem.
  • Halte Namen, Flags, Exit-Codes, Konfigurationsschlüssel und Ausgabemodi stabil.
  • Mache Standardwerte nützlich und sicher.
  • Trenne Routing, Domänenlogik, E/A, Konfiguration, Persistenz, Darstellung und Integrationen.
  • Halte die Maschinenausgabe mit JSON- oder Klartextmodus skriptbar.
  • Überprüfe, dass der README-Befehl das installierte Konsolenskript ist.

Regeln zum Laden von Referenzen

Lade nur die Referenzen, die für die Aufgabe benötigt werden:

  • Erstellung oder Refaktorisierung: references/creation-playbook.md.
  • Überprüfung oder Audit: references/review-rubric.md und references/pitfalls-and-solutions.md.
  • Implementierungsdetails, Paketierung, Sicherheit, plattformübergreifendes Verhalten, Rich-Ausgabe, Cache oder LLM-Anbieter: references/technical-best-practices.md.
  • Für Skill-/Paketwartung konsultiere die Governance-Ordner im Arbeitsbereichsstammverzeichnis skill-ir/, evals/, scripts/, reports/ und registry/, falls vorhanden. Dies sind wartungsseitige Routing-Hilfen, die nicht in einer installierten Skill-Kopie gebündelt sind.

Dupliziere diese Referenzen nicht hier. Lade sie nur, wenn die aktuelle Aufgabe sie benötigt.

Ablauf zur Erstellung neuer CLI oder Skills

  1. Bestimme die Produktform: Wer führt es aus, welchem Druck ist es ausgesetzt, und was muss zwischengespeichert, erinnert oder vergessen werden.
  2. Entwerfe die Befehlsfläche mit wenigen stabilen Befehlen und echten Beispielen.
  3. Wähle den kleinsten Stack, der passt.
    • Typer oder Click für die meisten CLIs.
    • argparse nur für winzige stdlib-freundliche Werkzeuge.
  4. Wähle die kleinste Architektur, die die nächsten zwei Versionen überlebt.
  5. Implementiere die Produktschleife: Eingabe, Validierung, Ausführung, Darstellung, Persistenz, Exit-Code, Wiederherstellungshinweis.
  6. Überprüfe vor der Veröffentlichung.

Beispiele für Befehlsflächen

my-cli run
my-cli init
my-cli config show
my-cli doctor
my-cli cache clear
my-cli check PFAD
my-cli fetch ABFRAGE --json
my-cli export ID --output ergebnis.md

Regeln:

  • Verwende Argumente für erforderliche Domänenobjekte.
  • Verwende Optionen für Modifikatoren, Ausgabemodi und optionales Verhalten.
  • Stelle --json oder --format json für Automatisierung bereit.
  • Stelle --quiet, --verbose und --debug konsistent bereit.
  • Vermeide überraschende Netzwerk- oder Änderungsvorgänge in Befehlen, die schreibgeschützt klingen.

Überprüfungserwartungen

Überprüfe immer die Befehlsfläche, den Installationspfad und den Wheel-Pfad, wenn sie relevant sind:

  • --help für den Stammbefehl und jeden Befehl der obersten Ebene.
  • Saubere Installation in einer neuen Umgebung.
  • Fehlender Konfigurations- oder Erstantrittspfad, wenn das Werkzeug eine Konfiguration hat.
  • Ungültige Konfiguration oder Fehlerpfad, wenn das Werkzeug Eingaben validiert.
  • Erfolgspfad plus JSON-/skriptbarer Modus, falls unterstützt.
  • Cache-Aktualisierung und Cache-Löschung, wenn das Werkzeug einen Cache hat.
  • Paketierungsmetadaten und Konsolenskript.
  • Wheel-Installation von außerhalb des Repositorys, wenn du Installationssicherheit haben möchtest.

Verwende dieses kompakte Paket, wenn anwendbar:

uv venv /tmp/cli-audit
. /tmp/cli-audit/bin/activate
uv pip install -e .
cli-creator-skill --help
cli-creator-skill install
uv build
uv pip install dist/*.whl
python -m pytest

Überprüfungsablauf

Bei der Überprüfung einer vorhandenen CLI oder eines CLI-bezogenen Skills/Templates:

Vor der Überprüfung lesen:

  • references/review-rubric.md
  • references/pitfalls-and-solutions.md

Lies references/technical-best-practices.md, wenn das Audit Implementierungsdetails, Paketierung, Sicherheit, plattformübergreifendes Verhalten, Rich-Ausgabe, Caching oder LLM-Anbieter betrifft.

Dann:

  1. Untersuche die Repository-Form: Paketstruktur, Befehlseinstiegspunkte, Konfigurationsdateien, Tests, Doku, CI.
  2. Führe Hilfe aus: Stamm---help und Hilfe auf Befehlsebene.
  3. Verfolge einen erfolgreichen Befehl vom Callback über den Domänendienst zum Renderer.
  4. Verfolge einen Fehlerpfad und überprüfe die Fehlerqualität.
  5. Überprüfe die Konfigurationspriorität: Flags, Umgebungsvariablen, Projektkonfiguration, Benutzerkonfiguration, Standardwerte.
  6. Überprüfe die Sicherheit: Geheimnisse, Shell-Ausführung, Pfadbehandlung, unsichere Konfiguration/Plugins, Telemetrie, Subprozess-Timeouts, Abhängigkeitslieferkette.
  7. Überprüfe die Leistung: Startimporte, Netzwerk-Timeouts, Cache-Verhalten, Dateierkennung.
  8. Überprüfe die Automatisierung: Exit-Codes, JSON-Ausgabe, stdin/stdout/stderr-Trennung, Nicht-TTY-Verhalten.
  9. Überprüfe die Paketierung: Python-Version, Abhängigkeiten, Skripte, Wheels, README-Befehle.
  10. Bewerte jeden Rubrikbereich mit references/review-rubric.md.
  11. Gib zuerst die Ergebnisse, dann priorisierte Korrekturen zurück.

Erforderliche Audit-Ausgabe

Die Audit-Ausgabe muss diese Abschnitte in dieser Reihenfolge enthalten:

**Ergebnisse**

**Bewertungen**

| Bereich | Punktzahl | Anmerkungen |
|---|---:|---|

**Reparaturreihenfolge**

**Testlücken**

**Überprüfungsbefehle**

Wartungshinweise

  • Behalte diese Skill als Router; lege Implementierungsdetails in die vier Referenzen.
  • Halte die Befehlsbeispiele, Audit-Überschriften und das Überprüfungspaket mit der Paketveröffentlichung synchron.
  • Für die wartungsseitige Governance verwende die Ordner skill-ir/, evals/, scripts/, reports/ und registry/ im Arbeitsbereichsstammverzeichnis, falls vorhanden; gib nicht vor, dass sie Teil der installierten Skill sind.

Wobei diese Skill hilft

  • Entwerfen einer neuen Python-CLI von Grund auf.
  • Überprüfen einer vorhandenen CLI auf UX, Paketierung, Fehler, Modellaufbau, Caching und Wartbarkeit.
  • Strukturieren von Typer-, Click-, argparse- oder Hybridanwendungen.
  • Erstellen natürlicher Multi-Turn-CLI-Abläufe, ohne dass sich Benutzer fühlen, als würden sie ein Formular ausfüllen.
  • Hinzufügen von Diagnose, Cache, Profilspeicher und Erstantritt-Setup-Abläufen, wenn sie tatsächlich benötigt werden.
  • Überprüfen von CLI-bezogenen Skills und Templates auf Auslöserklarheit, Referenzvollständigkeit, Befehlsvorlagen, Ausgabeverträge und Wartungsstrategie.

Entwurfsgrundlage

Diese Skill destilliert Betreibererfahrung und offizielle Dokumentationsmuster für Python-Paketierung, Typer, Click, Rich, uv, Ruff, Pydantic und LLM-Anbieterintegration. Sie bezieht keinen Code oder Anweisungen von inoffiziellen Drittanbieter-Repositorys.

Verwandte Skills