SKILL.md Format

Die vollständige Spezifikation für das SKILL.md-Dateiformat.

Überblick

Eine SKILL.md-Datei verwendet Markdown mit YAML-Frontmatter, um einen Agent Skill zu definieren.

Dateistruktur

markdown
---
# YAML Frontmatter (Metadaten)
name: Skill-Name
description: Kurze Beschreibung
---

# Hauptinhalt
Ihre Skill-Anweisungen im Markdown-Format.

Frontmatter-Felder

Erforderliche Felder

| Feld | Typ | Beschreibung | |-------|------|-------------| | name | string | Skill-Name (max. 50 Zeichen) | | description | string | Kurze Beschreibung (max. 200 Zeichen) |

Optionale Felder

| Feld | Typ | Beschreibung | |-------|------|-------------| | version | string | Semantische Version (z.B. "1.0.0") | | author | string | Autorenname oder Organisation | | license | string | Lizenztyp (z.B. "MIT") | | platforms | array | Unterstützte Plattformen | | categories | array | Skill-Kategorien | | tags | array | Suchbegriffe | | repository | string | Quell-Repository-URL | | website | string | Dokumentationswebsite |

Beispiel-Frontmatter

yaml
---
name: React Best Practices
description: Richtlinien für das Schreiben sauberer React-Komponenten
version: 2.1.0
author: React Community
license: MIT
platforms:
  - claude-code
  - codex
  - chatgpt
categories:
  - development
  - frontend
tags:
  - react
  - javascript
  - components
---

Inhaltsstruktur

Empfohlene Abschnitte

markdown
# Skill-Name

## Kontext
Hintergrundinformationen und Fachwissen.

## Richtlinien
Spezifische Regeln und Best Practices.

## Dos und Don'ts
Klare Verhaltensanweisungen.

## Beispiele
Beispielinteraktionen oder Code-Snippets.

## Referenzen
Links zu zusätzlichen Ressourcen.

Formatierungstipps

  • Verwenden Sie Überschriften (#, ##, ###) zur Inhaltsorganisation
  • Verwenden Sie Aufzählungslisten für Richtlinien
  • Verwenden Sie Codeblöcke für Beispiele
  • Verwenden Sie Fettschrift zur Betonung wichtiger Punkte
  • Halten Sie Absätze prägnant

Plattformen-Feld

Geben Sie an, welche Plattformen Ihr Skill unterstützt:

yaml
platforms:
  - claude-code    # Claude Code CLI
  - codex          # Codex CLI
  - chatgpt        # ChatGPT Benutzerdefinierte Anweisungen

Kategorien

Wählen Sie aus verfügbaren Kategorien:

Technisch:

  • development - Allgemeine Entwicklung
  • frontend - Frontend/UI-Entwicklung
  • backend - Backend/API-Entwicklung
  • devops - DevOps/Infrastruktur
  • data - Data Science/Analytics
  • ai-ml - KI/Machine Learning

Beruflich:

  • marketing - Marketing/Inhalte
  • design - Design/UX
  • legal - Recht/Compliance
  • finance - Finanzen/Buchhaltung
  • hr - Personalwesen
  • education - Bildung/Schulung

Validierung

Ihre SKILL.md wird validiert auf:

  • Gültige YAML-Frontmatter-Syntax
  • Vorhandensein erforderlicher Felder
  • Feldlängenbegrenzungen
  • Gültige Kategorie-/Plattformwerte
  • Markdown-Formatierung

Vollständiges Beispiel

markdown
---
name: TypeScript Best Practices
description: Richtlinien für das Schreiben typsicheren, wartbaren TypeScript-Codes
version: 1.0.0
author: TypeScript Community
license: MIT
platforms:
  - claude-code
  - codex
categories:
  - development
  - frontend
  - backend
tags:
  - typescript
  - javascript
  - types
---

# TypeScript Best Practices

## Kontext
Dieser Skill bietet Richtlinien für das Schreiben von hochwertigem TypeScript-Code.

## Richtlinien

### Typsicherheit
- Definieren Sie immer explizite Typen für Funktionsparameter
- Vermeiden Sie die Verwendung des `any`-Typs
- Verwenden Sie Type Guards für Laufzeitprüfungen

### Code-Organisation
- Ein Export pro Datei für Hauptmodule
- Gruppieren Sie verwandte Typen in einer `types.ts`-Datei
- Verwenden Sie Barrel-Exporte für öffentliche APIs

## Dos und Don'ts

### Do
- Strict-Mode verwenden
- Interfaces für Objektformen definieren
- Generics für wiederverwendbaren Code verwenden

### Don't
- TypeScript-Fehler mit `@ts-ignore` unterdrücken
- `any` als schnelle Lösung verwenden
- JavaScript und TypeScript im selben Projekt mischen

## Beispiele

### Gut: Explizite Typen
\`\`\`typescript
function greet(name: string): string {
  return \`Hello, \${name}!\`;
}
\`\`\`

### Schlecht: Implizites Any
\`\`\`typescript
// Vermeiden Sie dies
function greet(name) {
  return \`Hello, \${name}!\`;
}
\`\`\`