This commit is contained in:
team3
2026-07-24 11:23:18 +02:00
parent cb68cd671b
commit 1b054497ed
49 changed files with 935 additions and 408 deletions

28
skills/README.md Normal file
View File

@@ -0,0 +1,28 @@
# Skill-Vertrag (Lektion 106: ein Protokoll, keine Sonderfälle)
Komposition: 1 Rolle + 0..n Stile + 1 Aufgabe. Nur die Aufgabe definiert das
Ausgabeformat. Welche Skills ein Knoten nutzt, steht AUSSCHLIESSLICH in
pipeline.yaml (`skills:` + `extra_skills:`) — nie im Worker-Code.
## Prompt-Struktur (Parser und Fakes verlassen sich darauf)
- Eingabe-Abschnitte: `NAME:` in GROSSBUCHSTABEN am Zeilenanfang, Inhalt in
den Folgezeilen. Erlaubte Klammer-Zusätze klein dahinter.
- Nummerierte Mehrfach-Eingaben: `=== NAME <n> ===`-Zeilen.
- Der Format-Abschnitt beginnt mit einer Zeile, die mit `Ausgabeformat`
anfängt. Regeln stehen unter `Regeln:`.
## Ausgabe-Protokoll
- Blöcke: `===MARKE===`, Felder `FELD: wert` (GROSS, 2-20 Zeichen).
- Leere pro Eingabe-Element: genau EIN Marker projektweit — `===LEER===`
mit dem ID-Feld des Elements. Kein NICHTS, kein OK, kein Freitext.
- Leeres Einzel-Feld: genau EIN Wert projektweit — `KEINER`.
- Paar-Aufgaben rendern Eingaben einheitlich über `textkit.paar_liste`
(`PAAR n:` / `A:` / `B:`).
- Protokoll-Tokens (Urteile wie `dublette`, `mangel`) sind sprachneutrale
Enum-Marker und ändern sich bei Übersetzungen NICHT.
Sprachvorgabe für Prosa-Ausgaben liegt allein im Stil-Skill
(deutsch-praezise) — Aufgaben-Prompts enthalten keine sprachspezifischen
Beispiel-Floskeln.