44d1207b8d
Drei Skill-Manifeste angelegt — Rezepte die der mcp-gitea-Service (Phase
M5) auslesen wird um System-Prompts zu komponieren:
- composite/main-voice.md
Default-Skill beim Voice-Entry. Kein Trigger — wird direkt geladen.
17 Tools (volles Brick-Set + Sub-Agent-Dispatcher + Trace-Reducer).
required_prompt_modules: 6 (base/* + workflows/plan-before-action +
workflows/error-recovery + tools-context/brick-creation + persona).
- composite/kreuzwort-builder.md
Sub-Agent, Trigger ["kreuzwort", "kreuzwortraetsel", "crossword"].
5 atomic_* Tools. atomic_set_kreuzwort_solution bewusst NICHT exponiert
(nur via atomic_finalize_kreuzwort_layer erlaubt — verhindert
erfundene layerIds).
hop_budget: 12 (Self-Correction-Loop braucht mehrere Iterationen).
required_prompt_modules: 8 (inkl. workflows/self-correction +
tools-context/atomic-finalize).
- composite/lueckentext-builder.md
Sub-Agent, Trigger ["lueckentext", "vokabel-drill", "cloze"].
4 atomic_* Tools, strikt linear a→b→c→d.
hop_budget: 8 (kein Self-Correction).
required_prompt_modules: 8 (inkl. workflows/error-recovery +
tools-context/atomic-chain).
Plus README.md komplett umgeschrieben — erklaert was ein Skill ist,
die Ordner-Topologie (composite/ vs zukuenftiges atomic/), die
Compose-Order und den Cross-Repo-Bezug zu parsecapere-prompts +
parsecapere-knowledge.
Reference notes:
arch-flow/brainstorm/Sprache/
2026-06-02 — Master-Synthese — Prompt-Migration-Reihenfolge.md
2026-06-02 — Prompt-Modularisierung — Architektur und Composition.md
2026-06-02 — Skill-Discovery und Chain-of-Thought im Trace.md
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
86 lines
2.8 KiB
Markdown
86 lines
2.8 KiB
Markdown
---
|
|
skill_id: kreuzwort-builder
|
|
version: 0.1.0
|
|
description: Sub-Agent fuer Kreuzwort-Layer-Aufbau mit Self-Correction-Loop.
|
|
activation: keyword
|
|
trigger_keywords:
|
|
- kreuzwort
|
|
- kreuzwortraetsel
|
|
- crossword
|
|
|
|
persona: personas/kreuzwort-builder
|
|
|
|
required_prompt_modules:
|
|
# base/ — immer dabei
|
|
- base/identity
|
|
- base/style
|
|
- base/constraints
|
|
# workflows/ — Sub-Agent-spezifisch
|
|
- workflows/sub-agent-discipline # KEIN record_*, keine Voice-Tools
|
|
- workflows/tool-scope-lock # nur die 5 unten erlaubt
|
|
- workflows/self-correction # Validate-Loop (max 4 Versuche)
|
|
# tools-context/ — atomic-finalize statt atomic-chain
|
|
- tools-context/atomic-finalize
|
|
# persona zuletzt
|
|
- personas/kreuzwort-builder
|
|
|
|
required_tools:
|
|
- atomic_validate_crossword_grid
|
|
- atomic_create_crossword_grid_brick
|
|
- atomic_create_letter_palette_brick
|
|
- atomic_create_questions_block_brick
|
|
- atomic_finalize_kreuzwort_layer
|
|
|
|
max_tokens_estimate: 1500
|
|
hop_budget: 12 # Self-Correction-Loop kann mehrere Validation-Iterationen brauchen
|
|
|
|
source_orchestrator: llm-gateway/orchestrator/kreuzwort-orchestrator.js
|
|
spawned_by_tool: create_kreuzwort_task (Main-Voice)
|
|
---
|
|
|
|
# Skill: kreuzwort-builder
|
|
|
|
Sub-Agent der vom Main-LLM via `create_kreuzwort_task({thema, lang})` gespawned wird.
|
|
|
|
## Workflow auf einen Blick
|
|
|
|
```
|
|
1. Woerter ausdenken + im Grid positionieren
|
|
2. atomic_validate_crossword_grid ← Self-Correction-Loop (max 4 Versuche)
|
|
3. atomic_create_crossword_grid_brick
|
|
4. atomic_create_letter_palette_brick
|
|
5. atomic_create_questions_block_brick
|
|
6. atomic_finalize_kreuzwort_layer ← Layer + Solution ATOMAR
|
|
```
|
|
|
|
Details: `personas/kreuzwort-builder` + `workflows/self-correction`.
|
|
|
|
## Erfolgsmeldung
|
|
|
|
```
|
|
"Kreuzwort bereit: <N> Woerter zum Thema '<thema>'."
|
|
```
|
|
|
|
## Was bewusst NICHT im Tool-Set ist
|
|
|
|
- `atomic_set_kreuzwort_solution` — separates Solution-Tool. Wird im
|
|
Sub-Agent ausgefiltert damit Reihenfolge nicht kollidiert und keine
|
|
erfundenen `layerId`s entstehen (siehe Kommentar in
|
|
`kreuzwort-orchestrator.js` Zeile 21-25). Stattdessen ist nur das
|
|
All-in-One `atomic_finalize_kreuzwort_layer` exponiert.
|
|
|
|
- Alle Voice-Tools (`update_brick_text`, `delete_brick`, `clear_view_bricks`, ...)
|
|
— das ist Main-Voice-Sache, nicht Sub-Agent.
|
|
|
|
- `record_thought` / `record_reflection` — das ist Main-LLM-Sache. Sub-Agent
|
|
wird via `voice_tool_call` automatisch getraced.
|
|
|
|
## Was M5+ noch leisten muss
|
|
|
|
- Wenn `compose_prompt("kreuzwort-builder")` aufgerufen wird, MUSS der Composer
|
|
pruefen ob `self-correction` und `atomic-finalize` mit `applies_to` dieses
|
|
Skills kompatibel sind. Heute manuell verifiziert — spaeter via Frontmatter-Check.
|
|
- `hop_budget: 12` ist hoeher als die `6` der Main-Voice. Wenn der Composer
|
|
einem Sub-Agent ein anderes Hop-Limit als der Main-Voice setzt: das hier
|
|
ist der Wert.
|