APM-Packages/omos/skills/omos-setup/SKILL.md
Tobias J. Endres f0f1915251 feat(omos): example package, team profile, mapping and setup skill
- examples/package: copy of the job-application APM package with
  corentic.team-profile/v1 declaration (orchestrator, researcher,
  writer, checker, notifier)
- examples/model-mapping.yaml: user-side model class mapping with
  simple and extended entries
- skills/omos-setup: skill guiding users through
  resolve-validate-render and activation
2026-08-23 17:03:40 +02:00

2.8 KiB
Raw Blame History

name description allowed-tools
omos-setup Activate when the user wants to set up, render, or troubleshoot an omos team from an APM package. Use for omos render, team-profile, model-mapping, oh-my-opencode-slim preset, fehlende Modellklassen.
Bash(python3 omos/omos.py *)
Read
Write
Edit
Glob

OMOS Setup Skill

Führt den Nutzer durch: APM-Package mit Team-Profil → lokales Modell-Mapping → gerendertes oh-my-opencode-slim-Preset.

Der Ablauf (ResolveValidateRender)

1. Team-Profil finden

Prüfe, ob eine team-profile.yaml existiert (Package-Root oder omos/examples/team-profile.yaml). Lies sie und fasse dem Nutzer zusammen:

Profil: acme.job-applications
Rollen: orchestrator → strong-generalist, researcher → fast-research,
        writer → strong-writing, checker → high-reasoning, notifier → cheap-reliable
MCPs benötigt: openviking, sharelatex (+ websearch/webfetch als OpenCode-Native)

2. Mapping prüfen

Prüfe ~/.config/apm-team/model-mapping.yaml. Für jede im Profil verwendete Modellklasse muss ein Eintrag existieren.

Wenn eine Modellklasse fehlt, biete dem Nutzer konkrete Optionen an (verfügbare Modelle aus ~/.config/opencode/opencode.jsonc auflisten):

Für 'high-reasoning' ist kein Modell zugeordnet.
1. Vorhandenes Modell wählen (z. B. ollama/qwen3.6:35b-a3b-q4_K_M)
2. Neues Provider/Modell in opencode.jsonc konfigurieren
3. Abbrechen

Nach Auswahl schreibe das Mapping und markiere optional # selected_by: user.

3. MCPs prüfen

Vergleiche die im Profil genannten MCPs mit der Sektion mcp in ~/.config/opencode/opencode.jsonc. Fehlende dem Nutzer melden nicht stillschweigend ignorieren. Native OpenCode-Tools (websearch, webfetch) sind keine MCPs und brauchen keinen Eintrag.

4. Rendern

python3 omos/omos.py render --package <package-dir>

Zeige die Ausgabe inklusive Warnungen. Die Datei .opencode/oh-my-opencode-slim.json ist generiert nicht manuell editieren.

5. Aktivieren

Nutzer anleiten: opencode starten → /preset <team-id> → Reload. Preset-Wechsel greifen erst nach einem Reload (by Design).

Fehlerbehandlung

Fehler Lösung
„Modellklasse X ist nicht gemappt" Schritt 2: Mapping ergänzen
„MCP ... nicht in opencode.json konfiguriert" Schritt 3: MCP einrichten oder Rolle anpassen
„Kein Team-Profil gefunden" Pfad prüfen, --team-file verwenden
Ungültiges YAML Zeile aus Fehlermeldung zeigen

Regeln

  • Niemals selbst Modelle erraten oder zuordnen immer den Nutzer wählen lassen.
  • Niemals die generierte .opencode/oh-my-opencode-slim.json direkt editieren; Quelle sind Team-Profil + Mapping.
  • Sicherheitsgrenzen des Packages (MCP/Skill-Allowlists) nur verschärfen, nie aufweichen.