Zum Inhalt springen

Eigene Skills erstellen

Das 6-Schritte-Framework

Einen guten Skill zu bauen ist wie ein gutes Rezept zu schreiben: Du brauchst die richtigen Zutaten, klare Anweisungen und ein paar Testläufe. Hier ist ein bewährtes Framework in sechs Schritten.

Schritt 1: Problem identifizieren

Frag dich: Was wiederhole ich ständig? Die besten Skills entstehen aus realer Frustration:

  • "Ich tippe jedes Mal die gleichen Setup-Schritte für neue Komponenten"
  • "Ich vergesse immer einen Schritt beim Deployment"
  • "Meine Code-Reviews folgen keiner einheitlichen Struktur"

*Dreimal-Regel

Wenn du eine Aufgabe zum dritten Mal manuell durchführst, ist es Zeit für einen Skill. Notiere dir wiederkehrende Muster in deinem Alltag -- das sind deine Skill-Kandidaten.

Schritt 2: Context Design

Bevor du die SKILL.md schreibst, kläre drei Fragen:

  1. Inputs -- Was braucht Claude, um die Aufgabe zu erledigen? Dateinamen, Parameter, Konfiguration?
  2. Constraints -- Welche Regeln müssen eingehalten werden? Namenskonventionen, Sicherheitsrichtlinien, Stil?
  3. Output-Format -- Was soll am Ende rauskommen? Code, Bericht, Datei, Terminal-Ausgabe?

Schritt 3: Trigger Design

Entscheide, wie der Skill ausgelöst werden soll:

  • Per /command -- Du rufst den Skill explizit auf
  • Automatisch -- Claude erkennt anhand der description, dass der Skill passt
  • Nur Claude-intern -- Als Hilfs-Skill für andere Skills (user-invocable: false)

!False Positives vermeiden

Eine zu allgemeine description führt dazu, dass der Skill bei unpassenden Aufgaben ausgelöst wird. "Helps with code" ist zu vage. "Generate React components following our design system with Storybook stories" ist präzise genug.

Schritt 4: SKILL.md schreiben

Jetzt kommt die eigentliche Datei. Struktur:

---
name: my-skill
description: Präzise Beschreibung, wann der Skill greifen soll
argument-hint: [parameter]
model: sonnet
---

# Skill-Name

## Kontext
Was Claude über die Aufgabe wissen muss.

## Schritte
1. Erster Schritt
2. Zweiter Schritt
3. Dritter Schritt

## Regeln
- Regel 1
- Regel 2

## Output
Beschreibung des erwarteten Ergebnisses.

Best Practices für die Anweisungen:

  • Schreibe klar und direkt -- keine Höflichkeitsfloskeln
  • Nummeriere Schritte -- Claude folgt nummerierten Listen zuverlässiger
  • Definiere Negativbeispiele -- "Tue NICHT X" ist oft klarer als "Tue Y"
  • Halte die Anweisungen unter 500 Zeilen -- kürzere Skills sind präziser

Schritt 5: Testen

Ein Skill ist erst gut, wenn er in der Praxis funktioniert. Teste mit mindestens 5 realen Prompts:

  1. Happy Path -- Der Standardfall, für den der Skill gebaut wurde
  2. Edge Case -- Ungewöhnliche Eingaben oder Randfälle
  3. Falscher Kontext -- Wird der Skill fälschlicherweise ausgelöst?
  4. Fehlende Eingaben -- Was passiert ohne Argumente?
  5. Komplexer Fall -- Eine realistische, anspruchsvolle Aufgabe
> /my-skill standard-component
> /my-skill edge-case-with-generics
> Eine völlig andere Aufgabe (sollte den Skill NICHT triggern)

Schritt 6: Iterieren

Nach den Tests wirst du fast immer Anpassungen brauchen:

  • Trigger zu breit? -- Description einschränken oder paths hinzufügen
  • Trigger zu eng? -- Description erweitern oder Keywords ergänzen
  • Ergebnis inkonsistent? -- Anweisungen präzisieren, Beispiele hinzufügen
  • Zu langsam? -- Auf model: sonnet oder model: haiku wechseln

Der Skill Creator

Du musst Skills nicht komplett von Hand bauen. Claude Code hat einen eingebauten Skill Creator:

> /skill-creator

Dieser interaktive Assistent führt dich durch den Erstellungsprozess:

  1. Fragt nach dem Ziel deines Skills
  2. Schlägt einen passenden Skill-Typ vor
  3. Generiert die SKILL.md mit Frontmatter
  4. Hilft beim Testen und Verfeinern

*Skill Creator als Startpunkt

Auch wenn du Skills lieber manuell schreibst -- der Skill Creator ist ein guter Startpunkt. Du bekommst ein solides Grundgerüst, das du dann anpassen kannst.

Evals und Trigger Tuning

Für wichtige Skills lohnt sich systematisches Qualitäts-Tracking:

  • Führe Evals durch -- Definiere Testfälle mit erwarteten Ergebnissen und prüfe regelmäßig
  • Tracke False Positives -- Wann wird der Skill fälschlicherweise ausgelöst?
  • Tracke False Negatives -- Wann wird er nicht ausgelöst, obwohl er sollte?
  • Iteriere die Description -- Das ist der wichtigste Hebel für Auto-Discovery

Entscheidungsmatrix: Skill vs. Plugin vs. Python

Nicht jede Automatisierung braucht einen Skill. Hier die Abgrenzung:

KriteriumSkillPython/BashPlugin
Claude-Reasoning nötig?JaNeinJa
Automatisches Triggern?JaNeinJa
Teilbar via Git?JaJaJa
100% deterministisch?NeinJaNein
Grosse Dateien (>1MB)?SchwierigJaMöglich
Externe APIs?Via ToolsDirektVia MCP
Mehrere Skills bündeln?NeinNeinJa
MCP-Server integrieren?NeinNeinJa

Faustregel:

  • Skill -- Wenn Claude nachdenken und entscheiden muss
  • Python/Bash -- Wenn das Ergebnis zu 100% vorhersagbar sein muss
  • Plugin -- Wenn du mehrere Skills, Agenten und MCP-Server bündeln willst

iPlugins im Detail

Plugins sind das Thema eines eigenen Moduls. Dort lernst du, wie du Skills, MCP-Server und Agent-Konfigurationen in einem teilbaren Paket zusammenfasst.

Du baust einen Skill, der fälschlicherweise bei fast jedem Prompt ausgelöst wird. Was ist die wahrscheinlichste Ursache?