Alle Skills

caveman-commit (JuliusBrussee/caveman)

Schreibt knappe Commit-Nachrichten nach Conventional Commits, die Absicht und Grund nennen, nicht die Änderung.

caveman-commit: Schreibt Conventional-Commit-Nachrichten mit Breaking-Change-Footer (Kontrolle 4.0, Skill 5.0, One-Liner 4.95) bei etwa gleichem Tokenverbrauch; die Kontrolle schreibt einen einfachen Satz, und ein Ein-Satz-Prompt des Formats leistet genauso viel

SituativSicher

Codex CLI · gpt-6-astra

26.0 / 30

Lift gegenüber ohne Skill: +0.98 · Situativ · 18 Läufe

Situativ: der Lift +0.98 liegt unter +1.0. Für „Empfohlen“ sind insgesamt 22/30, eine Ausgabequalität von 3.5 und ein Lift von +1.0 nötig.

SOTA

Bestanden

Getestet mit Codex.

Gilt für Codex, Claude Code

Codex CLI 0.166 (SOTA-Stufe): 18 bewertete Läufe. Ein Bestehen hier deckt gemäß unserer Stufenregel auch Claude Code ab; über die zweite Stufe sagt es nichts aus.

Punktzahlen

Jede Dimension reicht von 0 bis 5, und die sechs ergeben zusammen die Gesamtpunktzahl von 30. 5 ist in jeder Dimension besser. Kosten 5 bedeutet günstig und schnell. Installation 5 bedeutet einfach.

Trigger-Zuverlässigkeit
5.0
Lift gegenüber ohne Skill
3.0
Ausgabequalität
5.0
Token- und Zeitkosten
5.0
Installation und Portabilität
4.0
Sicherheit
4.0

Sicherheitsprüfung

Sicher

Statischer Scan: 0 CRITICAL / 0 HIGH / 0 MEDIUM. Manuelle Prüfung: Sicher in einer Sandbox ohne Netzwerk auszuführen (keine Befunde). Ein sauberer Scan beweist nicht, dass ein Skill sicher ist.

Installieren

npx skills@latest add JuliusBrussee/caveman --skill caveman-commit

Quelle

Fixierter Commit: 9b68f7ed12b05e7efaff18e65c5a3fc2849fd0a4

Getestet: 2026-11-02

Was wir getestet haben

  • Commit-Nachricht für einen kleinen Fix — Ich brauche eine Commit-Nachricht. Die Commit-Nachricht für die Änderung in change.diff schreiben und in COMMIT_MSG.txt speichern (nur die Nachricht).
  • Commit-Nachricht für einen neuen Endpunkt — Bitte einen Commit schreiben. Die Commit-Nachricht für die Änderung in change.diff schreiben und in COMMIT_MSG.txt speichern (nur die Nachricht).
  • Commit-Nachricht für eine Breaking Change — Eine Commit-Nachricht schreiben. Die Commit-Nachricht für die Änderung in change.diff schreiben und in COMMIT_MSG.txt speichern (nur die Nachricht).

Vorteile

  • Hebt den Mittelwert von 4.02 auf 5.0 gegenüber ohne Skill (+0.98).
  • Der Skill wurde erkannt, ohne genannt zu werden: Skill-Datei in 6/6 Treatment-Läufen gelesen.
  • Kein Token-Overhead: 1.09x die Tokens von ohne Skill.
  • Hohe absolute Qualität mit dem Skill: 5.0 von 5.

Nachteile

  • Ein Ein-Satz-Prompt erzielte 4.95 gegenüber 5.0 mit dem Skill (+0.05).
  • n=2 pro Aufgabe und Variante; Unterschiede unter etwa 1 Punkt sind Rauschen.

Bewertung

Codex CLI 0.166 (gpt-6-astra, niedriges Reasoning) auf einem dedizierten Windows-Test-PC, einem frischen temporären Projekt und temporären HOME/TMPDIR/Caches pro Lauf; Skill installiert (Treatment) oder nicht vorhanden (Kontrolle) oder nicht vorhanden mit der Kernanforderung des Skills in einem an den Prompt angehängten Satz (One-Liner-Gruppe); 2 Läufe pro Gruppe und Aufgabe; Netzwerk aus; Schreiben nach /tmp blockiert. Die Prompts nennen den Skill nie (außer der unten genannten Formulierung). Drei Diffs (ein Pagination-Fix, ein neuer /health-Endpunkt, eine Umbenennung eines Konfigurationsschlüssels von timeout zu timeout_ms). Der Prompt verlangt nur eine Commit-Nachricht in COMMIT_MSG.txt, ohne Formatvorgabe. Der One-Liner nennt das Conventional-Commits-Format und seine Regeln in einem Satz.

Drei-Arm-Vergleich

VarianteDurchschnittsnote (0-5)Tokens pro Lauf
Ohne Skill4.0253k
Ein-Satz-Prompt4.9548k
Mit Skill5.058k

Gemessen mit Codex CLI über 18 Läufe, bewertet durch regelbasierte Prüfungen ohne LLM-Richter. Gesamt 26.0 / 30, Urteil Situativ.

Urteil: Situativ (26.0 / 30). Quelle: JuliusBrussee/caveman, skills/caveman-commit, gepinnt auf Commit 9b68f7e. Installation: npx skills@latest add JuliusBrussee/caveman --skill caveman-commit. Lizenz: MIT (Repo-LICENSE).

Was es ist

Der Skill caveman-commit (JuliusBrussee/caveman): ein Stilguide für Commit-Nachrichten: Conventional Commits type(scope): imperative summary mit höchstens 50 Zeichen und ohne Punkt am Ende, ein Body nur, wenn das Warum nicht offensichtlich ist, ein BREAKING CHANGE-Hinweis bei Breaking Changes und kein „this commit“, „I“, „we“, „now“, keine Emojis und keine KI-Attribution.

So haben wir getestet

Codex CLI 0.166 (gpt-6-astra, low reasoning) auf einem dedizierten Windows-Test-PC, pro Lauf ein frisches temporäres Projekt und temporäre HOME/TMPDIR/Caches, Skill installiert (Mit-Skill-Gruppe) oder nicht vorhanden (Kontrollgruppe) oder nicht vorhanden, aber mit der Kernanforderung des Skills als einem an den Prompt angehängten Satz (Ein-Satz-Gruppe), 2 Läufe pro Gruppe und Aufgabe, Netzwerk aus, Schreibzugriffe auf /tmp blockiert. Die Prompts nennen den Skill nie (außer der unten genannten Formulierung).

Drei Diffs (ein Pagination-Fix, ein neuer /health-Endpunkt, eine Umbenennung eines Konfigurationsschlüssels von timeout zu timeout_ms). Der Prompt verlangt nur eine Commit-Nachricht, gespeichert in COMMIT_MSG.txt, ohne Formatvorgabe. Der Ein-Satz-Prompt nennt das Conventional-Commits-Format und seine Regeln in einem Satz.

  1. Commit-Nachricht für einen kleinen Fix — Ich brauche eine Commit-Nachricht. Schreibe die Commit-Nachricht für die Änderung in change.diff und speichere sie in COMMIT_MSG.txt (nur die Nachricht).
  2. Commit-Nachricht für einen neuen Endpunkt — Bitte schreibe einen Commit. Schreibe die Commit-Nachricht für die Änderung in change.diff und speichere sie in COMMIT_MSG.txt (nur die Nachricht).
  3. Commit-Nachricht für eine Breaking Change — Schreibe eine Commit-Nachricht. Schreibe die Commit-Nachricht für die Änderung in change.diff und speichere sie in COMMIT_MSG.txt (nur die Nachricht).

Die Bewertung erfolgt programmatisch (versteckte Tests / Trefferquote bei eingebauten Problemen / Constraint-Prüfungen / Rendern+OCR, wo relevant), 0–5 pro Lauf. Kein LLM-Richter hat eine Punktzahl entschieden.

Ergebnisse

Der Ein-Satz-Prompt für die dritte Gruppe: "Schreibe eine Conventional-Commit-Nachricht: type(scope): imperative summary mit höchstens 50 Zeichen und ohne Punkt am Ende, einen Body nur, wenn das Warum nicht offensichtlich ist (Breaking Changes bekommen immer einen mit BREAKING CHANGE-Hinweis), und kein „this commit“, „I“, „we“, „now“, keine Emojis und keine KI-Attribution."

AufgabePunktzahl KontrolleEin-SatzMit SkillToken KontrolleToken Ein-SatzToken mit SkillSkill gelesen
t1-fix4.495.05.047k48k49k2/2
t2-feature4.495.05.054k48k55k2/2
t3-breaking3.074.865.056k48k67k2/2

Durchschnitt: 4.02 ohne vs. 5.0 mit Skill (Delta +0.98). Token pro Lauf: 53k vs. 58k (1.09x); Zeit 42s vs. 40s. Ein-Satz-Gruppe: 4.95 (Zuwachs des Skills gegenüber dem Ein-Satz-Prompt: +0.05; Zuwachs des Ein-Satz-Prompts gegenüber ohne Skill: +0.93); Token des Ein-Satz-Prompts 48k pro Lauf, der Skill kostet also 1.19x so viel wie der Ein-Satz-Prompt.

Was dabei herauskam

  • Kontrolle 4.02, Skill 5.0, Ein-Satz 4.95 (n=6 je Gruppe). Die Kontrolle schreibt in 6/6 Läufen einen schlichten Imperativsatz („Fix pagination offset for one-based page numbers“) ohne type(scope):-Präfix und scheitert damit jedes Mal an der Regel „konventioneller Typ“; die übrigen Regeln wurden meist eingehalten (in einem Lauf war zudem der Betreff länger als 50 Zeichen).
  • Aufgabe Breaking Change: Die Kontrolle hat die Breaking Change in 2/2 Läufen nicht gekennzeichnet (kein BREAKING CHANGE-Hinweis und kein !); der Body erwähnt die Migration jedoch. Der Skill erzielte in beiden Läufen 5.0: feat(config)!: mit BREAKING CHANGE-Footer. Der Ein-Satz-Prompt tat dasselbe in 2/2, aber in einem Lauf scheiterte die Nachricht an der Prüfung des konventionellen Typs.
  • Token: Skill 58k, Ein-Satz 48k, Kontrolle 53k pro Lauf (1.09x Kontrolle). Der Skill wurde in 6/6 Mit-Skill-Läufen gelesen.

Bewertung nach Dimensionen

DimensionPunktzahlBegründung
1_output_quality5.0

Durchschnitt 5.00/5 mit Skill (programmatische Prüfungen, siehe Tabelle pro Aufgabe).

2_lift_vs_no_skill2.98

+0.98 Punkte gegenüber 4.02 ohne Skill (n=2 pro Aufgabe; unter etwa 1 Punkt ist Rauschen).

3_trigger5.0Skill-Datei in 6/6 Mit-Skill-Läufen gelesen.
4_instructions_portability4Nur SKILL.md.
5_efficiency51.09x Token (58k vs. 53k pro Lauf) und 0.96x Zeit (40s vs. 42s).
6_safety_hygiene4Nur Prosa; siehe security.md.

Grenzen dieses Tests

  • Die Prüfungen sind regelbasiert auf COMMIT_MSG.txt (Typ-Präfix, Länge, Zeitform, Ton, verbotene Wörter, Breaking-Hinweis); ob die Nachricht den Diff gut beschreibt, wurde nur über die Prüfung auf Schlüsselbegriffe beurteilt.
  • Die Kontrolle wird dafür bestraft, dass sie die Conventional-Commit-Konvention nicht errät, die der Prompt nicht verlangt hat.
  • n=2 pro Zelle; drei kleine Diffs.
  • n = 2 pro Gruppe und Aufgabe: Unterschiede unter etwa 1 Punkt sind Rauschen.
  • Regelbasierte Bewertung misst nur, was die Prüfungen sehen können; Geschmack oder ob ein Ergebnis das bestmögliche ist, lässt sich so nicht beurteilen.

Sicherheit

Siehe security.md. Scan: 0 CRITICAL / 0 HIGH / 0 MEDIUM. Urteil: sicher ausführbar (Sandbox ohne Netzwerk). Ein sauberer Scan beweist nicht, dass ein Skill sicher ist.

Fazit

Eine verlässliche Möglichkeit, aus einem bloßen Prompt „Schreibe eine Commit-Nachricht“ Conventional-Commit-Nachrichten mit Breaking-Change-Kennzeichnung zu bekommen. Ein einzelner Satz, der das Format nennt, liefert dasselbe Ergebnis; der Skill erspart Ihnen also vor allem, diesen Satz selbst zu schreiben.

Transkript

Laufprotokoll: caveman-commit (Codex CLI, network off, per-run temp HOME/TMPDIR, one row per graded run.)
Spalten: Aufgabe, Gruppe-Lauf, Punktzahl (0-5), Tokens, Sekunden, bestandene Prüfungen, vom Agenten geöffnete Skill-Dateien.

t1-fix control-1: Punkte 4.49, Tokens 47722, Sek. 20.0, Prüfungen 2/3, nichts geöffnet
t1-fix control-2: Punkte 4.49, Tokens 47848, Sek. 20.8, Prüfungen 2/3, nichts geöffnet
t1-fix oneliner-1: Punkte 5.0, Tokens 47948, Sek. 29.4, Prüfungen 3/3, nichts geöffnet
t1-fix oneliner-2: Punkte 5.0, Tokens 48277, Sek. 21.1, Prüfungen 3/3, nichts geöffnet
t1-fix treatment-1: Punkte 5.0, Tokens 49540, Sek. 24.8, Prüfungen 3/3, geöffnet caveman-commit
t1-fix treatment-2: Punkte 5.0, Tokens 49614, Sek. 16.5, Prüfungen 3/3, geöffnet caveman-commit
t2-feature control-1: Punkte 4.49, Tokens 48133, Sek. 31.0, Prüfungen 2/3, nichts geöffnet
t2-feature control-2: Punkte 4.49, Tokens 60402, Sek. 101.3, Prüfungen 2/3, nichts geöffnet
t2-feature oneliner-1: Punkte 5.0, Tokens 48035, Sek. 107.1, Prüfungen 3/3, nichts geöffnet

18 Läufe, 3 Artefakte

Beispielausgabe

SOTA · With the skill: COMMIT_MSG.txt (t1-fix, run 1, Codex)

fix(api): correct offset for one-based pagination

Pro ansehen