Skip to main content
Inhaltsverzeichnis
Fortgeschritten14 Min.

Codex Skills für Einsteiger: So automatisieren Sie Workflows mit KI-Agenten

Ein praktischer Leitfaden zur Erstellung und Nutzung von Skills in Codex: Anatomie der SKILL.md, explizite und automatische Aktivierung, Unterschiede zwischen Skills, Skripten und Tools, die Skills API sowie die Konfiguration von Sicherheitsgrenzen.

Veröffentlicht:
FÜR KI-AGENTChatGPTClaude

1. Was ist ein Codex Skill: Der Übergang von einmaligen Prompts zu wiederholbaren Workflows

Bei der täglichen Entwicklung mit Codex wiederholen Ingenieure oft denselben Satz an Eingabeanweisungen: Welche Dateien sollen geprüft werden, nach welchen Kriterien soll das Audit erfolgen, welche Architekturrichtlinien sind einzuhalten und in welchem Format soll das Ergebnis zurückgegeben werden? Wenn diese Anforderungen in jeder Session erneut manuell eingegeben werden müssen, sinkt die Produktivität und es kommt zu zufälligen Fehlern.

Ein Codex Skill (Fähigkeit) ist ein gespeicherter, wiederverwendbarer Workflow für einen bestimmten Aufgabentyp. Die Erstellung eines Skills ist kein feines Nachtraining (Fine-Tuning) des Modells: Die Gewichte der KI bleiben unverändert. Stattdessen wird dem Agenten ein klar definierter prozeduraler Protokollrahmen bereitgestellt, den er dynamisch in sein Kontextfenster lädt, genau dann, wenn eine entsprechende Aufgabe auftritt.

mermaid
flowchart LR subgraph AdHoc ["Традиційний підхід (Ручний промптинг)"] User1["Користувач"] -->|Щоразу вводить довгі правила| Prompt["Великий разовий промпт"] Prompt --> Agent1["Codex"] end subgraph Modular ["Підхід на основі Skills"] User2["Користувач"] -->|Короткий запит: $code-review| Agent2["Codex"] SkillsDir["Репозиторій Skills (SKILL.md)"] -->|Автоматичне підвантаження інструкцій| Agent2 Agent2 --> Output["Стандартизований результат"] end
Hinweis

Im offiziellen OpenAI-Ökosystem werden Skills bereits als Standard für Automatisierung genutzt. Beispielsweise stellt OpenAI für die Migration einer Codebasis auf neue Modelle den fertigen Skill openai-docs bereit, der alle Nuancen des aktuellen SDK kennt, ohne dass die Dokumentation manuell hochgeladen werden muss.


2. Auswahlkriterien: Wann ein Skill nötig ist und wann ein normaler Prompt ausreicht

Skills sind primär für Prozesse gedacht, die eine ausgeprägte Wiederholbarkeit, eine stabile Abfolge von Schritten oder strenge Anforderungen an das Ausgabeformat haben.

KriteriumNormaler PromptCodex Skill
NutzungsfrequenzEinmalige, einzigartige AufgabeRegelmäßiger Workflow (täglich oder vor jedem Release)
Prozesskomplexität1–2 einfache SchritteMehrstufige, reglementierte Pipeline mit Validierung
Zusätzliche DateienNicht erforderlichErfordert begleitende Skripte, Referenzen oder Checklisten
FormatanforderungenFreie AntwortStrikte Berichtsstruktur (z. B. JSON oder feste Tabelle)
Rechte & EinschränkungenAktuelle Session-EinstellungenKlar definierte erlaubte und verbotene Aktionen

Typische Szenarien für die Erstellung eines Skills

  • Pre-Release-Repository-Prüfung: Ausführung von Lintern, Suche nach übrig gebliebenem Debugging-Code (console.log, TODO), Prüfung der Typ-Kompatibilität.
  • Standardisiertes Code-Review: Überprüfung der Einhaltung interner Architekturrichtlinien des Teams ohne eigenständige Änderungen.
  • Generierung von Release Notes: Extraktion der Liste gemergter PRs, deren Kategorisierung und Aktualisierung der CHANGELOG.md.
  • Komponenten-Migration: Schrittweises Refactoring veralteter Patterns anhand eines vorab genehmigten Templates.
Tipp

Praktische Ingenieursregel: Wenn Sie sich dabei erwischen, wie Sie Codex zum dritten Mal dieselbe Schrittfolge erklären („lies zuerst diese Datei, führe dann diesen Test aus, ändere nichts, gib das Ergebnis als Tabelle aus“) – dieser Workflow sollte jetzt in einen separaten Skill gepackt werden.


3. Aktivierungsmechanik: Expliziter Aufruf via $name vs. automatische Zuordnung

Codex unterstützt zwei komplementäre Methoden zur Aktivierung von Skills innerhalb einer Session: den direkten, deterministischen Aufruf durch den Benutzer und die automatische semantische Erkennung.

Expliziter Aufruf (Explicit Invocation)

Der Benutzer gibt den Namen des gewünschten Skills direkt über das Dollar-Zeichen-Präfix $ an:

bash
$code-review перевір останні зміни у гілці feature/auth

Diese Methode garantiert 100 % Vorhersagbarkeit: Codex aktiviert sofort den angegebenen Skill, nutzt dessen Anweisungen als Verhaltensgrundlage und wendet sie auf die Argumente Ihrer Anfrage an.

Automatische Aktivierung (Semantic Auto-Match)

Wenn das Präfix $name nicht angegeben wird, analysiert Codex die Benutzeranfrage und gleicht sie mit den Feldern description aller verbundenen Skills ab:

mermaid
flowchart TD Req["Запит: 'Підготуй релізні нотатки для v2.1.0'"] --> Router{"Аналіз семантичного збігу"} Router -->|Match: description release-notes| LoadSkill["Підвантаження .codex/skills/release-notes/SKILL.md"] Router -->|No Match| Standard["Звичайний діалог без підвантаження навичок"] LoadSkill --> Exec["Виконання регламентованого сценарію"]
text
Вдалий опис (висока ймовірність точного спрацювання): description: Перевіряє змінені файли проєкту на регресії, помилки типізації та стиль перед релізом. Використовуйте під час аудиту PR. Невдалий опис (розмиті межі): description: Допомагає розробнику краще писати код.

4. Anatomie eines Skills und Struktur der SKILL.md: Metadaten, Regeln und Ressourcen

Ein minimaler Skill besteht nur aus einer einzigen Datei – SKILL.md. Ausgereiftere Skills können eingebettete Automatisierungsskripte, Referenzhandbücher und Templates enthalten.

text
project-review/ ├── SKILL.md # Головний файл (метадані + інструкції) ├── scripts/ └── check-deps.sh # Виконуваний скрипт для швидких перевірок ├── references/ └── styleguide.md # Довідник: внутрішній код-стайл команди └── templates/ └── report-template.md # Шаблон підсумкового звіту

Struktur der Datei SKILL.md

Die Datei ist in zwei funktionale Teile untergliedert: einen technischen YAML-Frontmatter-Block am Anfang und Anweisungen im Markdown-Format.

markdown
--- name: project-review description: Проводить комплексний аудит коду перед релізом, перевіряє типи та формує звіт про помилки без внесення правок. --- Інструкції для аудиту: 1. Запустити "npm run typecheck" для виявлення помилок TypeScript. 2. Проаналізувати git diff відносно гілки main. 3. Згрупувати знайдені зауваження за категоріями: Critical, Warning, Suggestion. 4. Нічого не змінювати у вихідному коді автоматично. 5. Надати підсумковий звіт відповідно до templates/report-template.md.
Wichtig

Prinzip der Knappheit: Überladen Sie SKILL.md nicht mit langen philosophischen Erklärungen. Je kürzer und präziser der Text, desto weniger wertvollen Platz belegt er im Kontextfenster des Modells und desto strikter hält sich der Agent an das Reglement.


5. Speicherbereiche: Projekt-Skills vs. persönliche globale Skills

Codex unterscheidet Skills nach zwei Sichtbarkeitsbereichen je nach ihrem Zweck:

mermaid
flowchart TD subgraph GlobalScope ["Глобальні навички (~/.codex/skills/)"] G1["Особистий стиль комітів"] G2["Швидкий генератор ліцензій"] end subgraph ProjectScope ["Проєктні навички (.codex/skills/)"] P1["Архітектурний лінтер проєкту"] P2["Генератор DTO та міграцій БД"] P3["Чек-лист релізу сервісу"] end Dev["Розробник"] -->|Власні уподобання| GlobalScope Team["Команда в Git"] -->|Спільні стандарти| ProjectScope

Projekt-Skills (.codex/skills/ oder .agents/skills/)

Werden im Wurzelverzeichnis des Projekt-Repositories gespeichert und in Git versioniert.

  • Zweck: Standardisierung von Prozessen für das gesamte Entwicklungsteam.
  • Vorteil: Jeder Ingenieur (oder CI/CD-Runner), der das Repository klonnt, erhält sofort den identischen Satz an Agenten-Skills.

Persönliche Skills (~/.codex/skills/)

Befinden sich im Home-Verzeichnis des aktuellen Benutzers des Betriebssystems.

  • Zweck: Individuelle Werkzeuge, spezifisch für einen bestimmten Entwickler (z. B. persönlicher Assistent für die Notation in der Entwicklung).
  • Vorteil: Verfügbar in jedem Terminal, unabhängig vom aktiven Projekt.

6. Praktischer Workshop: Erstellung eines Code-Prüfungs-Skills mit $skill-creator

Der einfachste und schnellste Weg, einen neuen Skill zu erstellen, ist die Nutzung des systemseitigen Meta-Tools $skill-creator, das in Codex integriert ist.

Schritt 1. Initialisierung des Generators

Im Codex-Dialogfeld rufen wir den Befehl auf:

bash
$skill-creator

Danach beschreiben wir den gewünschten Workflow in natürlicher Sprache:

text
Створи для мене проєктний скіл із назвою "pr-validator". Ціль: перевірити змінені файли у поточному pull request. Правила: 1. Запустити npm run lint та npm test. 2. Перевірити, чи додані unit-тести для нових модулів. 3. Заборонити агенту самостійно виправляти знайдені дефекти. 4. Результат вивести у вигляді таблиці з колонками: Файл, Рядок, Проблема, Рівень ризику.

Schritt 2. Überprüfung des generierten Artefakts

Der Generator erstellt das Verzeichnis .codex/skills/pr-validator/ und generiert die Datei SKILL.md:

markdown
--- name: pr-validator description: Validates pull request changes by running lint and test suites, checking test coverage for new modules, and returning an issue table without modifying code. --- Execution Steps: 1. Identify modified files using git diff against the target branch. 2. Execute "npm run lint" and capture any linter warnings or errors. 3. Execute "npm test" to ensure regression safety. 4. Verify whether newly created source files in src/ have corresponding test files in tests/. 5. Strict constraint: Do NOT modify any project files under any circumstances. 6. Present the audit findings in a markdown table: | File | Line | Issue | Severity |

Schritt 3. Testen des erstellten Skills in einer realen Session

Öffnen Sie eine neue Codex-Session und testen Sie die Funktionsweise des erstellten Skills:

bash
$pr-validator перевір мою поточну гілку перед відкриттям PR

Stellen Sie sicher, dass der Agent den Linter ausgeführt hat, nicht versucht hat, Quellcodedateien zu bearbeiten, und eine Tabelle mit den Ergebnissen zurückgegeben hat.


7. Die Triade der Agenten-Fähigkeiten: Skill, Script und Tool

Anfänger verwechseln häufig die Konzepte von Skill, Script und Tool (MCP). Sie ergänzen einander, lösen aber grundlegend unterschiedliche ingenieurtechnische Aufgaben.

mermaid
flowchart TD subgraph Triad ["Тріада архітектури автономного агента"] Skill["SKILL (Навичка)<br><i>'Мозок і регламент'</i><br>Пояснює послідовність, контекст та логіку"] Script["SCRIPT (Скрипт)<br><i>'Точний алгоритм'</i><br>Виконує детерміновану операцію на диску"] Tool["TOOL (Інструмент / MCP)<br><i>'Органи чуття та руки'</i><br>Надає доступ до API, терміналу, баз даних"] end Skill -->|Керує викликом| Script Skill -->|Використовує| Tool Script -->|Викликається через| Tool

Vergleichsmatrix der Triade

KomponenteRolle im SystemAusführungsweiseBeispiel
Skill (Fähigkeit)Reglement & DenkenWird vom Modell gelesen und interpretiertAnleitung zur Durchführung eines Sicherheitsaudits
Script (Skript)Deterministische RechenoperationWird im OS über das Terminal ausgeführtBash-Skript zum Parsen von Git-Tags
Tool (Werkzeug)Schnittstelle zum Zugriff auf die UmgebungWird über den Mechanismus Tool Calling aufgerufenMCP-Server zur Verbindung mit der GitHub API
Hinweis

Ein Skill erklärt dem Agenten, was und in welcher Reihenfolge getan werden muss. Ein Script führt mathematische oder Dateibearbeitungsvorgänge schnell und garantiert aus. Ein Tool gewährt Berechtigungen zur Interaktion mit der Außenwelt.


8. Programmatic Control via Skills API and Versioning

Neben der lokalen Arbeit mit Dateien bietet OpenAI eine spezialisierte Skills API zur programmatischen Steuerung von Skills in Cloud-Anwendungen und Backend-Systemen.

bash
# Створення нової навички через HTTP API curl https://api.openai.com/v1/skills \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "schema-migrator", "description": "Автоматична валідація та створення міграцій бази даних", "instructions": "Перевір схему Prisma, переконайся у відсутності drop column..." }'

Warum Skills-Versionierung wichtig ist

  1. Unveränderlichkeit der Produktionsumgebung (Immutability): Jedes Update eines Skills erzeugt eine neue Version (v1, v2). Produktions-Pipelines binden sich an eine spezifische, fixierte Version, was unerwartete Ausfälle durch zufällige Änderungen verhindert.
  2. Sicheres Rollback: Wenn eine aktualisierte Beschreibung zu Regressionen oder einer schlechteren Codegenerierungsqualität geführt hat, kann das Team sofort zur vorherigen Versionsnummer zurückkehren.
  3. A/B-Testing von Anweisungen: Die Möglichkeit, gleichzeitig die Leistung zweier alternativer Skill-Revisionen bei realen Aufgaben zu vergleichen.

9. Sicherheit, Autonomiegrenzen und Bestätigungsregeln für Aktionen

Ein Skill beeinflusst direkt, welche Operationen der Agent in Ihrem System ausführt. Daher müssen im Rumpf des Skills autonome und kontrollierte Aktionen klar voneinander getrennt sein.

mermaid
flowchart LR Action["Дія агента"] --> Decision{"Тип операції"} Decision -->|Безпечна: Read-Only| Auto["Автономне виконання без пауз<br><i>(Читання коду, запуск лінтера)</i>"] Decision -->|Критична: Write / Network| Confirm["Запит підтвердження в інженера<br><i>(Видалення файлів, деплой)</i>"]

Vertrauensstufen-Matrix

Warnung

Verbote nicht mehrfach duplizieren: Vermeiden Sie die mehrfache Wiederholung von Phrasen wie „ändere nichts“ in jedem einzelnen Punkt. Es reicht aus, einmal zu Beginn des Abschnitts über Einschränkungen die verbotenen Operationen klar zu fixieren. Andernfalls wird der Agent übermäßig passiv und fragt selbst vor dem Lesen einer normalen Datei um Erlaubnis.


10. Zusammenfassende Cheatsheet und Checkliste für die Erstellung eines robusten Skills

Speichern Sie diese Checkliste und orientieren Sie sich daran beim Design jedes neuen Skills.

Schnelles Ingenieurs-Cheatsheet

bash
# ─── Робота з навичками в Codex ────────────────────────────────── $skill-creator # Запуск вбудованого майстра створення навичок $<skill-name> <ваше завдання> # Явний детермінований виклик навички /skills # Перегляд списку доступних навичок у сесії # ─── Файлова структура проєкту ─────────────────────────────────── .codex/skills/<name>/SKILL.md # Проєктна навичка (для всієї команди) ~/.codex/skills/<name>/SKILL.md # Персональна навичка (для поточної машини)

Checkliste für die Release-Bereitschaft eines Skills

  • Klarer Name: Bis zu 64 Zeichen, Kleinschreibung, lateinische Buchstaben, mit Bindestrich (kebab-case).
  • Informative Beschreibung: Das Feld description enthält eine klare Formel für „Was macht der Skill“ und „Wann sollte er ausgeführt werden“.
  • Knapper Rumpf: Der Text der SKILL.md überschreitet 500 Zeilen nicht und enthält nur Projektspezifika.
  • Schrittweise Pipeline: Anweisungen sind in nummerierte Schritte ohne Mehrdeutigkeiten unterteilt.
  • Sicherheitshorizont definiert: Festgelegt, welche Dateien gelesen werden dürfen und für welche Aktionen zwingend eine Benutzerbestätigung erforderlich ist.
  • Getestet in sauberer Session: Der Skill wurde sowohl über den expliziten Aufruf $name als auch über die automatische Beschreibungszuordnung getestet.
Dieser Leitfaden ist komplett kostenlos. Wenn er Ihnen einen Abend erspart hat, können Sie das Wachstum des Projekts unterstützen.
Autor unterstützen