Communitygithub.com

AlemTuzlak/skills

Verwenden Sie dies, wenn der Benutzer /prove-it ausführt oder sagt „Beweise es“, „Beweise die Änderungen“, „Zeig mir im Browser“ oder eine Bestätigung einer UI- oder API-Änderung verlangt. Nicht verwenden, nur weil der Agent kurz davor ist, „fertig“ zu sagen, bei typenreiner Arbeit oder bei Dokumentation ohne nachweisbares Verhalten.

Was ist skills?

Diese AI-Agenten-Fähigkeit namens „Prove It“ dient dem Nachweis von UI- und API-Änderungen, indem sie die Änderungen so demonstriert, wie ein Benutzer sie tatsächlich nutzen würde. Sie ist für Agenten wie Claude Code, Cursor oder Codex geeignet und wird nur aktiv, wenn der Benutzer explizit dazu auffordert (z. B. durch den Befehl `/prove-it` oder die Aufforderung „Beweise es“). Die Fähigkeit unterscheidet streng zwischen UI-Nachweisen (die im Browser durch Klicken, Tippen, Absenden und Navigieren erfolgen) und Server-/API-Nachweisen (bei denen sie den Benutzer auffordert, eine geeignete Methode wie Curl, ein vorhandenes Beispiel oder ein Skript auszuwählen). Sie stellt sicher, dass nach dem Nachweis kein Server-Prozess unbeaufsichtigt läuft, und bietet optional die Möglichkeit, einen Screenshot-Bericht zu erstellen. Klare Regeln verhindern, dass ein unbewiesener Abschluss gemeldet wird, und behandeln Fehler wie fehlende Startbefehle oder fehlgeschlagene Nachweise transparent.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AlemTuzlak/skills/tree/HEAD/skills/prove-it

In Ihrer bevorzugten KI fragen

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

Dokumentation

Beweise es

Beweise die Änderung so, wie ein Mensch sie verwendet. Behaupte nicht, dass sie funktioniert, ohne diesen Nachweis.

Diese Fähigkeit lädt nicht automatisch bei „fertig“. Der Benutzer muss danach fragen. Sie lädt keine anderen Fähigkeiten.

Wann verwenden

Aktivieren, wenn der Benutzer:

  • /prove-it ausführt
  • „Beweise es“, „Beweise die Änderungen“, „Zeig mir im Browser“ oder eine ähnliche Idee sagt (auch in der ersten Nachricht)

Überspringen, wenn er nicht danach gefragt hat. Überspringen bei typenreiner Arbeit, Kommentaren, Lock-Dateien, Dokumentation ohne Verhalten.

Harte Grenzen

  1. Benutzer hat gefragt. Wenn er nicht um einen Nachweis gebeten hat, wird diese Fähigkeit nicht ausgeführt.
  2. Sage nicht, dass es funktioniert, fertig ist oder repariert ist, es sei denn, diese Fähigkeit hat es tatsächlich bewiesen. Überspringen bedeutet nicht bewiesen.
  3. Ein Screenshot eines einzelnen Bildschirms ist kein Beweis. Klicken, Tippen, Absenden, Navigieren.
  4. Kein neues Paket, keine Abhängigkeit, keine Beispiel-App, kein Browser-Runner, es sei denn, der Benutzer hat diese Option ausgewählt und „Ja“ gesagt.
  5. Stoppe jeden Server, den diese Fähigkeit gestartet hat, bevor die Fähigkeit endet. Lasse dev/preview nicht laufen.

UI vs. Server

  • UI (Seite, Komponente, Route, Formular, sichtbarer Zustand): Beweise im Browser.
  • Server / API / Bibliothek ohne Bildschirm: Frage, wie bewiesen werden soll. Wähle nicht stillschweigend.
  • Beides: Zeige die UI im Browser und frage, wie der Serverteil bewiesen werden soll.

Abläufe

Ablauf 1: Klassifizieren

  1. Liste die Oberflächen auf: UI, Server/API oder beides.
  2. UI → Ablauf 2.
  3. Server/API → Ablauf 3.
  4. Beides → Ablauf 2, dann Ablauf 3 für die API.

Ablauf 2: Browser (UI)

  1. Wenn die App nicht läuft, starte nur einen vorhandenen Befehl (dev, preview, den dokumentierten Start des Repos). Wenn keiner existiert, sage, dass die UI nicht bewiesen werden kann. Biete Überspringen an, oder dass der Benutzer die App startet.
  2. Nutze sie wie ein Benutzer:
    • klicken, tippen, absenden, navigieren
    • jede Route/Seite, die diesen Zustand teilt
    • leere und Fehler-UI, wenn diese Änderung sie hat
    • Desktop und ein schmales Viewport, wenn Layout oder CSS geändert wurden
  3. Suche nach Brüchen, nicht nur nach dem Happy Path.
  4. Sage im Chat, was du getan hast und was du gesehen hast. Sage nicht „sieht gut aus“ ohne Schritte.
  5. Stoppe den Prozess aus Schritt 1, wenn diese Fähigkeit ihn gestartet hat.
  6. Ablauf 4.

Ablauf 3: Fragen (Server / API)

  1. Stoppe. Zeige 2–3 Optionen. Setze eine vernünftige erste Wahl an die erste Stelle. Nimm immer überspringen mit auf.
    • vorhandenes Beispiel / Playground / Demo
    • Beispiel-App, die die neue API verwendet (nur wenn sie Ort + neues Paket/Abhängigkeit bestätigen)
    • Curl oder ein kleines Skript gegen einen laufenden Server
    • überspringen
  2. Warte. Baue oder führe nichts aus, bis sie gewählt haben.
  3. Wenn überspringen: sage nicht bewiesen. Sage nicht, dass es funktioniert. Stoppe (kein Ablauf 4).
  4. Wenn vorhandener Playground: führe ihn aus, dann beweise im Browser, wenn er eine UI hat, oder zeige die Befehlsausgabe, wenn es ein Skript ist.
  5. Wenn Beispiel-App: frage nach dem Ort. Bevorzuge ein vorhandenes Beispiel. Füge kein Paket oder keine Abhängigkeit hinzu, es sei denn, sie haben Ja gesagt. Dann führe sie aus und beweise.
  6. Wenn Curl/Skript: führe es aus. Zitiere den Exit-Code und den Teil der Ausgabe, der die Behauptung beweist.
  7. Ablauf 4.

Ablauf 4: Optionaler Bericht

  1. Frage nach einem echten Beweis: Soll ein Screenshot-Bericht geschrieben werden? Standard nein.
  2. Wenn nein: stoppe. Der Chat enthält bereits den Beweis.
  3. Wenn ja: schreibe .agent/scratch/prove-it.md (überschreiben). Füge .agent/scratch/ zur .gitignore hinzu, falls es fehlt (wie bei anderen Scratch-Dateien). Füge hinzu, was geklickt wurde, und die Aufnahmen. Öffne die Datei. Committe sie nicht.
  4. Übersprungener Beweis → kein Bericht.

Ablauf 5: Stoppen

Nach Beweis oder Überspringen stoppen. Beginne keine nicht zusammenhängende Arbeit von dieser Fähigkeit.

Entscheidungsbaum

  • Benutzer hat nicht um einen Beweis gebeten → diese Fähigkeit gilt nicht.
  • UI → Ablauf 2 → 4 → 5.
  • Server/API → Ablauf 3 → 4 → 5 (Überspringen endet bei 3).
  • Beides → 2 dann 3, dann 4 → 5.
  • Kein Startbefehl und App läuft nicht → sage, dass UI nicht bewiesen werden kann. Überspringen oder Benutzer startet sie.
  • Benutzer sagt überspringen → nicht bewiesen. Keine Erfolgsbehauptung.

Rote Flaggen

SignalWas es bedeutetStattdessen tun
„Fertig“ sagen, weil Tests bestanden sindDiese Fähigkeit wurde nicht gefragt, oder Beweis wurde übersprungenNur als bewiesen bezeichnen nach Ablauf 2 oder 3.
Ein Screenshot, keine KlicksKein BenutzerpfadAblauf 2 Schritt 2.
Bauen von examples/foo bevor sie wählenUngefragte AppAblauf 3. Warten.
Playwright / einen neuen Server hinzufügenNeue AbhängigkeitNur vorhandenen Startbefehl verwenden.
pnpm dev laufen lassenWatcher läuft weiterHarte Grenze 5.
„Überspringen, aber es funktioniert“Überspringen in Behauptung umgewandeltSage nicht bewiesen.
Berichtsdatei in docs/Produktdokumentation.agent/scratch/prove-it.md.
Bericht öffnen, wenn Nein gesagt wurdeUngefragte DateiAblauf 4 Standard Nein.
Nur die Seite einer neuen öffentlichen API beweisenServerteil stillschweigend übersprungenAblauf 3 für die API.

Fehlerbehandlung

  • Keine Browser-Tools: sage, dass die UI hier nicht bewiesen werden kann. Biete Überspringen an, oder dass sie klicken, während du auf eine URL wartest. Tue keinen Screenshot vor.
  • Startbefehl schlägt fehl: zitiere den Fehler. Sage nicht, dass die UI funktioniert. Biete Überspringen oder eine Reparatur an, dann beweise erneut.
  • Beweis schlägt fehl (Klick macht das Falsche, Curl ist nicht 200): sage nicht bewiesen. Nenne, was fehlgeschlagen ist. Bezeichne es nicht als fertig.
  • Sie wählen Beispiel-App und lehnen ein neues Paket ab: verwende Curl, ein vorhandenes Beispiel oder überspringe. Füge das Paket trotzdem nicht hinzu.
  • Schreiben von Scratch-Dateien schlägt fehl: behalte den Beweis im Chat. Sage, dass die Berichtsdatei nicht geschrieben wurde.

Siehe nichts weiter. Der Chat ist der standardmäßige Beweis. Die Markdown-Datei ist optional.

Individual skills in this repo

This repo contains 14 individual skills — each has its own dedicated page.

AlemTuzlak/skills

Use when the user wants to write a blog post about a feature, product change, PR, git diff, or any technical topic - accepts marketing briefs, PRs, git refs, codebase paths, or freeform descriptions as input

AlemTuzlak/skills

Use when the user wants to generate a changelog, release notes, or document what changed between versions, tags, or PRs

AlemTuzlak/skills

Use when writing, editing, or organizing documentation, when planning what docs a feature needs, and whenever planning or implementing a new feature or change in a repo (docs ship with the code). Also use when tempted to write docs without showing the discovered readers to the user, without asking for tone, or without loading simple-english and i-have-adhd. Triggers on "write docs for X", "document this feature", "add a guide", "update the docs", "reorganize the docs", "plan feature X", "implement X", or /docs.

AlemTuzlak/skills

Use when a bug is in play: a test fails, CI is red, an API returns the wrong result, a stack trace appears, or the user says it is broken or fix this. Don't use for a new feature with no failure, for types-only work, or for docs.

AlemTuzlak/skills

Use when the user invokes /i-have-adhd, says they have ADHD, or asks for ADHD-friendly output. Also used as a required writing filter by the docs skill. Don't use for marketing copy or after the user says "stop adhd mode" or "normal mode".

AlemTuzlak/skills

Use when a settled change must be turned into an ordered stack of small blocks before anyone implements. Don't use for unsettled intent, typos, comments, formatting, docs-only work, or writing the implementation itself.

AlemTuzlak/skills

Use when the user wants to write a product update email, feature announcement newsletter, or digest email for users or subscribers

AlemTuzlak/skills

Use when the user wants to turn a raw talking-head / screen-share recording into a finished, edited, annotated video plus a full content package. Removes silences, flags mistakes for the user to cut, transcribes, adds transcript-synced overlays (code, on-screen code highlights, word highlights, lists, comparisons, diagrams, section labels, punch-in zooms), renders with original audio, then generates blog/socials/YouTube content. Triggers on "produce a video", "edit my video", "annotate my recording", "/produce-video".

AlemTuzlak/skills

Use when the user wants to write, draft, or author an RFC (Request for Comments) / technical design doc for a feature, change, or architectural decision. Interactively interviews the user, grounds the proposal in the actual codebase, presents 2-3 concrete API/code-snippet approaches to choose from, then writes a review-ready RFC. Triggers on "write an RFC", "draft an RFC", "RFC for X", "design doc for X", or /rfc.

AlemTuzlak/skills

Use when the user wants to deeply learn a new topic from scratch. Runs a pre-interview (current knowledge, end-goal proficiency, depth, practice load, background, scope), researches online (articles, niche-influencer blogs, canonical docs, subtopic landscape), then produces a structured markdown course with mandatory visual diagrams, evidence-based learning-science features (retrieval practice, spaced callbacks, worked-example fading, concept ledger, jargon gate, analogy hygiene), and a self-contained interactive HTML mini-course. Triggers on /teach-me, "teach me about X", "I want to learn X", "deep dive on X", "create a course on X", "study X with me".

AlemTuzlak/skills

Use when the change intent is already settled and the agent must map what a behavior change touches before an implementation plan or any code. Use for new features, bug fixes, and refactors that move a boundary. Don't use for typos, comments, formatting, lockfile-only diffs, docs with no code, or while the user is still deciding what they want.

AlemTuzlak/skills

Use when the user wants to transcribe a video or audio file to text with word-level timestamps — spins up a self-contained local Whisper (whisper.cpp) Docker service bundled in this skill and returns transcript.txt, transcript.srt, and word-level transcript.words.json. Also used as a building block by /produce-video. Triggers on "transcribe this video", "get a transcript", "transcribe-video".

AlemTuzlak/skills

Use when the user wants to write a video script for a product demo, feature walkthrough, launch video, or social media video about a feature or product change

AlemTuzlak/skills

Use when the user wants YouTube metadata for a video — a click-worthy title, an SEO/above-the-fold description, tags, and timestamped chapters. Accepts a transcript (ideally timestamped SRT), a topic, a PR, or a freeform description. Used standalone and by /produce-video. Triggers on "youtube title", "youtube description", "youtube chapters", "youtube tags", "youtube metadata", "youtube-copy".

Verwandte Skills