feat: agents nach prompt-standard perfektionieren + exa-freigabe + dogfooding
- az-orchestrator: schlanker Router + Verifikator neu (Missionssatz- description, Routing-Tabelle mit Beispielfragen de/en/cs, Verifikations-Checkliste gegen Subagent-Output-Vertraege, Eskalationsregeln; glm-5-2 bleibt) - az-researcher: claude-sonnet-5, Web-vs-lokal-Klassifikation als Schritt 1, Output-Vertrag mit Failure-Bedingung, Exa-MCP-Tools explizit freigegeben (Websearch_web_search_exa/_fetch) und in der Arbeitsweise verankert - az-basecamp: duenne Shell ueber basecamp-Skill (Skill-Load als verpflichtender Schritt 1, Inline-CLI-Liste raus, Beleg-Pflicht) - az-office: Skill-Load nicht verhandelbar (Prometheus-Muster), L1/L2/L3 bleibt, Pruefbefund-Sektion, temp 0.1 - README: Trigger-Description praezisiert (Subagents=Beispielfragen, Primary=Missionssatz), Sprachregel-Variante gleichbedeutend, neue Standard-Regel Tool-/MCP-Freigabe (<Server>_<Tool> Namensschema) - tests/protocols/: Dogfooding- + Smoke-Test-Protokoll (az-pruefer gruen ueber alle 5 Agents, Routing 5/5, tschechisch -> tschechisch) Closes beads: az-agent-defaults-h2j, -99v, -bfj, -m4t, -jtp
This commit is contained in:
+5
-5
@@ -1,9 +1,9 @@
|
||||
{"_type":"issue","id":"az-agent-defaults-j35","title":"Repo-Gerüst: vier Artefakt-Verzeichnisse + README mit Guard-Regeln je Artefakt-Typ","description":"Quelle: Spec 01-az-agent-defaults-spec.md (lokal, wird nicht gepusht).\n\naz-agent-defaults wird als reines Content-Repo die eine Wahrheitsquelle für das Company-Default-Set. Dieses Ticket liefert das Gerüst: die vier Artefakt-Verzeichnisse (skills/, commands/, agents/, mcp/) und ein README, das die Contribution-Guard-Regeln je Artefakt-Typ so dokumentiert, dass ein Fachbereichs-Contributor ohne Architektur-Wissen richtig beisteuern kann:\n\n- Skills: Ordner mit SKILL.md und Frontmatter-Öffner (wie heute)\n- Commands: Markdown mit Frontmatter (description, optional agent/model) und Template-Body (Argument-Platzhalter erlaubt)\n- Agents: Markdown mit Frontmatter (description, mode primary/subagent, optional model/temperature, Permission-Profil); Subagent-Definitionen müssen über das Task-Tool aufrufbar bleiben\n- MCP: Fragmente für den mcp-Konfigurationsschlüssel, remote/streamable als Standard, Secrets grundsätzlich nur als Platzhalter\n\nDas README hält außerdem fest: Auslieferung und Guard-Engine (Pre-Flight auf dem Controller) leben im Fleet-Repo az-fleet; dieses Repo ist Content-only und über den Repo-Ref pinbar (Default: main). Zudem die Fixtures-Konvention: Testgegenstände für die Guard-Tests leben unter tests/fixtures/ und werden nie ausgeliefert, weil die Delivery-Rolle nur die vier Typ-Verzeichnisse liest (Sonntags-Entscheidung). Das Repo verabschiedet damit den Namen az-agent-skills (User Story 2).","acceptance_criteria":"- Die vier Artefakt-Verzeichnisse skills/, commands/, agents/, mcp/ sind im Repo angelegt\n- README dokumentiert die Guard-Regeln je Artefakt-Typ vollständig (Struktur-/Frontmatter-/Platzhalter-Anforderungen gemäß Spec B1)\n- README erklärt die Content/Mechanismus-Trennung zu az-fleet (Guard-Engine und Auslieferung dort) und das Ref-Pinning\n- Die Fixtures-Konvention tests/fixtures/ ist dokumentiert (nie ausgeliefert; Begründung: Delivery liest nur die vier Typ-Verzeichnisse)\n- Ein Contributor ohne Architektur-Wissen kann anhand des README allein entscheiden, wohin ein neues Artefakt gehört und ob es die Guard-Regeln erfüllt","status":"closed","priority":1,"issue_type":"task","assignee":"m3tam3re","owner":"p@m3ta.dev","created_at":"2026-08-22T07:57:14Z","created_by":"m3tam3re","updated_at":"2026-08-22T08:02:44Z","started_at":"2026-08-22T07:59:36Z","closed_at":"2026-08-22T08:02:44Z","close_reason":"Closed","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":4,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-jtp","title":"Dogfooding + Smoke-Tests der perfektionierten Agents","description":"Abschlussvalidierung: Der perfektionierte az-pruefer läuft über alle 5 perfektionierten Agenten (Dogfooding — der Prüfer prüft als Erstes die perfektionierten Kollegen); Befunde werden eingearbeitet bis der Prüf-Report grün ist. Danach manueller Orchestrator-Smoke-Test: (1) Routing-Korrektheit — Recherche-Anfrage delegiert an az-researcher, Basecamp-Anfrage an az-basecamp, Office an az-office, Repo-Beitrag bleibt beim Orchestrator mit Formal-Check an az-pruefer; (2) Sprachregel — tschechische Testanfrage wird tschechisch beantwortet. Testprotokoll als Beleg ablegen (tests/ oder Notes).\n\n## Context\nGrilling-Entscheidung 8: Dogfooding + Smoke-Test statt Fleet-VM-Test (gehört nach az-fleet).","acceptance_criteria":"1) az-pruefer-Report über agents/*.md: alle Befunde behoben, Report grün. 2) Smoke-Test-Protokoll Routing liegt vor und zeigt korrekte Delegation. 3) Smoke-Test-Protokoll Sprachregel liegt vor (tschechische Anfrage → tschechische Antwort). 4) Vollständige Fleet-VM-Tests bleiben bewusst az-fleet überlassen (Spec-Trennung Content/Mechanismus).","status":"open","priority":2,"issue_type":"task","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T17:43:52Z","labels":["ready-for-agent"],"dependencies":[{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-74g","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-99v","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-bfj","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-h2j","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-m4t","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"}],"dependency_count":5,"dependent_count":0,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-m4t","title":"az-office perfektionieren","description":"az-office nach dem Agenten-Prompt-Standard neu schreiben: Skill-Load „officecli“ als verpflichtender erster Schritt (Formulierung schärfen — aus „lade zu Beginn“ wird eine nicht verhandelbare erste Aktion, ausdrückliches Muster-Referenz des Prometheus-Ansatzes). Ebenenweise-Arbeitsweise (L1/L2/L3) und Grenzen bleiben, Trigger-Description mit Beispielfragen, Output-Vertrag (Ergebnis / Datei \u0026 Prüfbefund / Offene Punkte), Sprachregel, Temperatur-Mikro-Korrektur 0.2 → 0.1.\n\n## Context\nGrilling-Session 20.09. Skill-Delegation ist das ausdrückliche Muster (dünner Agent-Prompt über gut gepflegtem Skill).","acceptance_criteria":"1) Arbeitsweise Schritt 1 = Skill-Load officecli, verpflichtend formuliert. 2) L1/L2/L3-Prinzip erhalten. 3) Description trigger-optimiert. 4) Output-Vertrag mit Datei-\u0026-Prüfbefund-Sektion. 5) Sprachregel enthalten. 6) Demo: docx-Erstellung mit Prüfbefund-Sektion in der Antwort.","status":"open","priority":2,"issue_type":"task","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:44Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T17:43:44Z","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-bfj","title":"az-basecamp perfektionieren + Skill-Nutzung verankern","description":"az-basecamp nach Prometheus-Muster neu schreiben (dünne Shell über Skill): Verpflichtender erster Schritt = Skill „basecamp“ laden (Skill wird via az-fleet aus external/ auf die Nutzerebene ausgerollt — Lieferweg ist gesichert). Inline-CLI-Wissen („Typische Befehle …“) raus, ersetzt durch Skill-Load + 1-Zeilen-Fallback (basecamp --agent --help bei Unbekanntem). Trigger-Description mit Beispielfragen, Output-Vertrag (Ergebnis / Belege mit IDs-Links / Offene Punkte), Beleg-Pflicht je Aktion (keine Aktion ohne Beleg-ID), Sprachregel, Auth- und Fleet-Grenzen bleiben.\n\n## Context\nGrilling-Session 20.09.: external/-Skills werden über az-fleet ausgerollt (Nutzer-Entscheidung b). Muster-Vorbild: az-office + officecli-Skill.","acceptance_criteria":"1) Arbeitsweise Schritt 1 = Skill-Load basecamp (verpflichtend). 2) Keine inline-CLI-Befehlsliste mehr im Prompt. 3) Description trigger-optimiert. 4) Output-Vertrag mit Belege-Sektion. 5) Sprachregel enthalten. 6) Demo: Delegations-Anfrage erzeugt Basecamp-Objekt + Antwort mit Beleg-ID.","status":"open","priority":2,"issue_type":"task","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:37Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T17:43:37Z","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-99v","title":"az-researcher perfektionieren","description":"az-researcher neu schreiben nach dem Agenten-Prompt-Standard: Modell az-litellm/claude-haiku-4-5 → az-litellm/claude-sonnet-5 (Recherchequalität: Quellenbewertung/Synthese braucht das stärkere Modell, Fehlerkosten unsichtbar und teuer). Trigger-Description mit Beispielfragen, Klassifikation Web-vs-lokal als erster Arbeitschritt, geschärfter Output-Vertrag (Kernantwort / Belege mit URL bzw. Datei:Zeile / Offene Punkte), Sprachregel, Failure-Bedingung: Behauptung ohne Quelle = gescheitert.\n\n## Context\nGrilling-Entscheidung 6(a): Researcher auf Sonnet-Klasse, alle anderen Modelle bleiben.","acceptance_criteria":"1) Frontmatter: model=az-litellm/claude-sonnet-5, temperature 0.1–0.2. 2) Description trigger-optimiert mit Beispielfragen. 3) Arbeitsweise beginnt mit Web-vs-lokal-Klassifikation. 4) Output-Vertrag mit Belege- und Offene-Punkte-Sektion. 5) Sprachregel enthalten. 6) Demo: @mention-Recherche liefert sektionierte Antwort mit Quellen.","status":"open","priority":2,"issue_type":"task","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:29Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T17:43:29Z","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-h2j","title":"az-orchestrator perfektionieren","description":"az-orchestrator als schlanker Router + Verifikator neu schreiben (~150 Zeilen, bleibt glm-5-2): geschärfte Routing-Tabelle mit Trigger-Beispielen je Subagent, Verifikations-Checkliste gegen die Output-Verträge der Subagents (Belege fehlen → nachbessern lassen; Offene Punkte die der Nutzer nie fragte → Rückfrage), Eskalations-Regeln, Sprachregel „Antworte in der Sprache der Nutzeranfrage“, „selber machen wenn schneller“ bleibt. Kein Certainty-/Plan-Zwang (bewusst gegen OMO-Voll-Doktrin entschieden — Kostenarchitektur glm-5-2).\n\n## Context\nGrilling-Entscheidung 5(a): schlanker Router + Verifikator. Zielgruppe: ganze AZ-Gruppe (deutsch/tschechisch/englisch).","acceptance_criteria":"1) Prompt folgt dem Agenten-Prompt-Standard (Skelett, Sprachregel, \u003c10k Zeichen). 2) Description trigger-optimiert, erste 80 Zeichen = Missionssatz. 3) Routing-Tabelle nennt Beispielfragen. 4) Verifikations-Checkliste referenziert die Subagent-Output-Verträge. 5) Smoke-Test: Recherche-Anfrage delegiert an az-researcher; tschechische Anfrage wird tschechisch beantwortet.","status":"open","priority":2,"issue_type":"task","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:21Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T17:43:21Z","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-jtp","title":"Dogfooding + Smoke-Tests der perfektionierten Agents","description":"Abschlussvalidierung: Der perfektionierte az-pruefer läuft über alle 5 perfektionierten Agenten (Dogfooding — der Prüfer prüft als Erstes die perfektionierten Kollegen); Befunde werden eingearbeitet bis der Prüf-Report grün ist. Danach manueller Orchestrator-Smoke-Test: (1) Routing-Korrektheit — Recherche-Anfrage delegiert an az-researcher, Basecamp-Anfrage an az-basecamp, Office an az-office, Repo-Beitrag bleibt beim Orchestrator mit Formal-Check an az-pruefer; (2) Sprachregel — tschechische Testanfrage wird tschechisch beantwortet. Testprotokoll als Beleg ablegen (tests/ oder Notes).\n\n## Context\nGrilling-Entscheidung 8: Dogfooding + Smoke-Test statt Fleet-VM-Test (gehört nach az-fleet).","acceptance_criteria":"1) az-pruefer-Report über agents/*.md: alle Befunde behoben, Report grün. 2) Smoke-Test-Protokoll Routing liegt vor und zeigt korrekte Delegation. 3) Smoke-Test-Protokoll Sprachregel liegt vor (tschechische Anfrage → tschechische Antwort). 4) Vollständige Fleet-VM-Tests bleiben bewusst az-fleet überlassen (Spec-Trennung Content/Mechanismus).","status":"closed","priority":2,"issue_type":"task","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T18:20:48Z","closed_at":"2026-09-20T18:20:48Z","close_reason":"Abschlussvalidierung erfolgreich. (1) Dogfooding: az-pruefer-Prompt lief ueber alle 5 Agenten: Erstpruefung 0 Guard-Verstoesze, 1 Standard-Verstosz (Orchestrator-Description) -\u003e als Regelkonflikt aufgeloest (README Trigger-Description praezisiert: Subagents=Beispielfragen, Primary=Missionssatz; Sprachregel-Variante gleichbedeutend), Re-Pruefung gruen. (2) Routing-Smoke-Test 5/5 korrekt (Recherche-\u003eaz-researcher, Basecamp-\u003eaz-basecamp inkl. Destruktiv-Hinweis, Office-\u003eaz-office, Repo-Beitrag-\u003eselbst+az-pruefer, cs-Basecamp-Anfrage-\u003eaz-basecamp). (3) Sprachregel: direkte tschechische Anfrage wurde vollstaendig tschechisch beantwortet. Protokoll: tests/protocols/2026-09-20-smoke-test-agents.md. Fleet-VM-Tests bewusst az-fleet ueberlassen.","labels":["ready-for-agent"],"dependencies":[{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-74g","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-99v","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-bfj","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-h2j","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"},{"issue_id":"az-agent-defaults-jtp","depends_on_id":"az-agent-defaults-m4t","type":"blocks","created_at":"2026-09-20T17:43:52Z","created_by":"m3ta-chiron","metadata":"{}"}],"dependency_count":5,"dependent_count":0,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-m4t","title":"az-office perfektionieren","description":"az-office nach dem Agenten-Prompt-Standard neu schreiben: Skill-Load „officecli“ als verpflichtender erster Schritt (Formulierung schärfen — aus „lade zu Beginn“ wird eine nicht verhandelbare erste Aktion, ausdrückliches Muster-Referenz des Prometheus-Ansatzes). Ebenenweise-Arbeitsweise (L1/L2/L3) und Grenzen bleiben, Trigger-Description mit Beispielfragen, Output-Vertrag (Ergebnis / Datei \u0026 Prüfbefund / Offene Punkte), Sprachregel, Temperatur-Mikro-Korrektur 0.2 → 0.1.\n\n## Context\nGrilling-Session 20.09. Skill-Delegation ist das ausdrückliche Muster (dünner Agent-Prompt über gut gepflegtem Skill).","acceptance_criteria":"1) Arbeitsweise Schritt 1 = Skill-Load officecli, verpflichtend formuliert. 2) L1/L2/L3-Prinzip erhalten. 3) Description trigger-optimiert. 4) Output-Vertrag mit Datei-\u0026-Prüfbefund-Sektion. 5) Sprachregel enthalten. 6) Demo: docx-Erstellung mit Prüfbefund-Sektion in der Antwort.","status":"closed","priority":2,"issue_type":"task","assignee":"m3ta-chiron","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:44Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T18:20:48Z","started_at":"2026-09-20T18:02:01Z","closed_at":"2026-09-20T18:20:48Z","close_reason":"agents/az-office.md neu nach Standard: Schritt 1 = nicht verhandelbarer Skill-Load 'officecli' mit ausdruecklicher Prometheus-Muster-Referenz (duenne Agent-Shell ueber gepflegtem Skill); L1/L2/L3-Prinzip, Pruefschritt (outline/issues/validate) und Grenzen bleiben; Trigger-Description mit 3 Beispielauftraegen in den ersten 80 Zeichen; Output-Vertrag Ergebnis/Datei \u0026 Pruefbefund (ohne Pruefbefund nicht abgeschlossen)/Offene Punkte; Sprachregel; temperature 0.2 -\u003e 0.1. Nach Kosmetik-Fix (bearbeite sie) az-pruefer-Re-Pruefung gruen.","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-bfj","title":"az-basecamp perfektionieren + Skill-Nutzung verankern","description":"az-basecamp nach Prometheus-Muster neu schreiben (dünne Shell über Skill): Verpflichtender erster Schritt = Skill „basecamp“ laden (Skill wird via az-fleet aus external/ auf die Nutzerebene ausgerollt — Lieferweg ist gesichert). Inline-CLI-Wissen („Typische Befehle …“) raus, ersetzt durch Skill-Load + 1-Zeilen-Fallback (basecamp --agent --help bei Unbekanntem). Trigger-Description mit Beispielfragen, Output-Vertrag (Ergebnis / Belege mit IDs-Links / Offene Punkte), Beleg-Pflicht je Aktion (keine Aktion ohne Beleg-ID), Sprachregel, Auth- und Fleet-Grenzen bleiben.\n\n## Context\nGrilling-Session 20.09.: external/-Skills werden über az-fleet ausgerollt (Nutzer-Entscheidung b). Muster-Vorbild: az-office + officecli-Skill.","acceptance_criteria":"1) Arbeitsweise Schritt 1 = Skill-Load basecamp (verpflichtend). 2) Keine inline-CLI-Befehlsliste mehr im Prompt. 3) Description trigger-optimiert. 4) Output-Vertrag mit Belege-Sektion. 5) Sprachregel enthalten. 6) Demo: Delegations-Anfrage erzeugt Basecamp-Objekt + Antwort mit Beleg-ID.","status":"closed","priority":2,"issue_type":"task","assignee":"m3ta-chiron","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:37Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T18:20:48Z","started_at":"2026-09-20T18:02:01Z","closed_at":"2026-09-20T18:20:48Z","close_reason":"agents/az-basecamp.md neu als duenne Shell ueber dem basecamp-Skill (Prometheus-Muster): Schritt 1 = verpflichtender Skill-Load 'basecamp' (BEVOR irgendetwas anderes passiert), Inline-CLI-Befehlsliste entfernt, 1-Zeilen-Fallback basecamp --agent --help. Trigger-Description mit 3 Beispielfragen in den ersten 80 Zeichen; Output-Vertrag Ergebnis/Belege (Beleg-Pflicht: keine Aktion ohne Beleg-ID)/Offene Punkte; Sprachregel; Auth- (OAuth-Login interaktiv) und Fleet-Grenzen bleiben; haiku/0.2 bleibt. az-pruefer: konform ohne Befund.","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-99v","title":"az-researcher perfektionieren","description":"az-researcher neu schreiben nach dem Agenten-Prompt-Standard: Modell az-litellm/claude-haiku-4-5 → az-litellm/claude-sonnet-5 (Recherchequalität: Quellenbewertung/Synthese braucht das stärkere Modell, Fehlerkosten unsichtbar und teuer). Trigger-Description mit Beispielfragen, Klassifikation Web-vs-lokal als erster Arbeitschritt, geschärfter Output-Vertrag (Kernantwort / Belege mit URL bzw. Datei:Zeile / Offene Punkte), Sprachregel, Failure-Bedingung: Behauptung ohne Quelle = gescheitert.\n\n## Context\nGrilling-Entscheidung 6(a): Researcher auf Sonnet-Klasse, alle anderen Modelle bleiben.","acceptance_criteria":"1) Frontmatter: model=az-litellm/claude-sonnet-5, temperature 0.1–0.2. 2) Description trigger-optimiert mit Beispielfragen. 3) Arbeitsweise beginnt mit Web-vs-lokal-Klassifikation. 4) Output-Vertrag mit Belege- und Offene-Punkte-Sektion. 5) Sprachregel enthalten. 6) Demo: @mention-Recherche liefert sektionierte Antwort mit Quellen.","status":"closed","priority":2,"issue_type":"task","assignee":"m3ta-chiron","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:29Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T18:20:48Z","started_at":"2026-09-20T18:02:01Z","closed_at":"2026-09-20T18:20:48Z","close_reason":"agents/az-researcher.md neu nach Standard: model az-litellm/claude-sonnet-5, temperature 0.1, read-only-Tools bleiben. Trigger-Description mit 2 konkreten Beispielfragen in den ersten 80 Zeichen; Arbeitsweise Schritt 1 = Web-vs-lokal-Klassifikation mit Abschlusskriterium; Output-Vertrag Kernantwort/Belege (URL bzw. Datei:Zeile)/Offene Punkte plus explizite Failure-Bedingung (Behauptung ohne Quelle = gescheiterter Auftrag); Sprachregel; Body ~2.900 Zeichen. az-pruefer: konform ohne Befund.","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-h2j","title":"az-orchestrator perfektionieren","description":"az-orchestrator als schlanker Router + Verifikator neu schreiben (~150 Zeilen, bleibt glm-5-2): geschärfte Routing-Tabelle mit Trigger-Beispielen je Subagent, Verifikations-Checkliste gegen die Output-Verträge der Subagents (Belege fehlen → nachbessern lassen; Offene Punkte die der Nutzer nie fragte → Rückfrage), Eskalations-Regeln, Sprachregel „Antworte in der Sprache der Nutzeranfrage“, „selber machen wenn schneller“ bleibt. Kein Certainty-/Plan-Zwang (bewusst gegen OMO-Voll-Doktrin entschieden — Kostenarchitektur glm-5-2).\n\n## Context\nGrilling-Entscheidung 5(a): schlanker Router + Verifikator. Zielgruppe: ganze AZ-Gruppe (deutsch/tschechisch/englisch).","acceptance_criteria":"1) Prompt folgt dem Agenten-Prompt-Standard (Skelett, Sprachregel, \u003c10k Zeichen). 2) Description trigger-optimiert, erste 80 Zeichen = Missionssatz. 3) Routing-Tabelle nennt Beispielfragen. 4) Verifikations-Checkliste referenziert die Subagent-Output-Verträge. 5) Smoke-Test: Recherche-Anfrage delegiert an az-researcher; tschechische Anfrage wird tschechisch beantwortet.","status":"closed","priority":2,"issue_type":"task","assignee":"m3ta-chiron","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:21Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T18:20:47Z","started_at":"2026-09-20T18:02:00Z","closed_at":"2026-09-20T18:20:47Z","close_reason":"agents/az-orchestrator.md neu als schlanker Router + Verifikator (108 Zeilen, Body ~7.000 Zeichen, glm-5-2/0.3 bleibt): Missionssatz-Description (erste 80 Zeichen), Routing-Tabelle mit je 3-4 konkreten Beispielfragen je Zeile (de/en/cs), Delegations-Regeln inkl. 'selber machen wenn schneller' + 'ein Auftrag, ein Verantwortlicher', Verifikations-Checkliste gegen die Subagent-Output-Vertraege (Ergebnis/Belege/Offene Punkte; Belege fehlen -\u003e nachbessern, nie gefragte offene Punkte -\u003e Rueckfrage), Eskalations-Regeln in Grenzen, kein Certainty-/Plan-Zwang. Smoke-Tests: Routing 5/5 korrekt, tschechische Anfrage tschechisch beantwortet (Protokoll tests/protocols/2026-09-20-smoke-test-agents.md). az-pruefer-Dogfooding: nach README-Praezisierung (Primary=Missionssatz) gruen.","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-74g","title":"Agenten-Prompt-Standard definieren + az-pruefer perfektionieren","description":"README-Sektion „Agenten-Prompt-Standard“ anlegen (Prompt-Skelett mit Arbeitsweise/Ausgabeformat/Grenzen, Trigger-Description-Regel mit Beispielfragen in den ersten 80 Zeichen, Output-Vertrags-Pflicht für Subagents mit Belege- und Offene-Punkte-Sektion, Sprachregel „Antworte in der Sprache der Anfrage“ in jedem Agenten, 10k-Zeichen-Grenze) plus einen Satz zum external/-Lieferweg (Skills aus external/ werden via az-fleet auf die Nutzerebene ausgerollt). Danach az-pruefer nach dem neuen Standard perfektionieren: prüft die deterministischen Guard-Regeln aus dem README UND den Agenten-Prompt-Standard (LLM-Prüfung), mit eigenem Output-Vertrag und Trigger-Description. Grundlage ist die OMO-Analyse-Session (Trigger-Descriptions, Output-Verträge, Prometheus-Muster).\n\n## Context\nEntscheidungen aus Grilling-Session 20.09.: Struktur (a) deutsch+OMO-Elemente; Descriptions voll trigger-optimiert; Output-Verträge Markdown-Sektionen; Standard weiche Regel (LLM-geprüft, keine harten Guards).","acceptance_criteria":"1) README enthält die Sektion „Agenten-Prompt-Standard“ mit Skelett, Trigger-Regel, Output-Vertrags-Pflicht, Sprachregel, 10k-Grenze und external/-Hinweis. 2) az-pruefer prüft Guard-Regeln + Prompt-Standard. 3) Demo: az-pruefer meldet an einer absichtlich schlechten Agent-Datei genau die Standard-Verstöße (fehlende Beispielfragen, fehlender Output-Vertrag, fehlende Sprachregel).","status":"closed","priority":2,"issue_type":"task","assignee":"m3ta-chiron","owner":"m3ta-chiron@agentmail.to","created_at":"2026-09-20T17:43:10Z","created_by":"m3ta-chiron","updated_at":"2026-09-20T17:58:11Z","started_at":"2026-09-20T17:50:54Z","closed_at":"2026-09-20T17:58:11Z","close_reason":"Umgesetzt: (1) README-Sektion 'Agenten-Prompt-Standard' (Prompt-Skelett Arbeitsweise/Ausgabeformat/Grenzen, Trigger-Description-Regel mit Beispielfragen in den ersten 80 Zeichen, Output-Vertrags-Pflicht für Subagents mit Ergebnis/Belege/Offene Punkte, Sprachregel 'Antworte in der Sprache der Anfrage', 10k-Zeichen-Grenze, external/-Lieferweg-Satz) — klar als weiche Regel (LLM-geprüft, kein Guard) abgetrennt; Fixtures-Sektion um agents/demo/ ergänzt. (2) agents/az-pruefer.md neu nach eigenem Standard: Trigger-Description mit Beispielfragen, prüft Guard-Regeln + Prompt-Standard getrennt, eigener Output-Vertrag, Sprachregel, Read-only-Profil bleibt. (3) Demo real gelaufen: Subagent mit neuem az-pruefer-Prompt prüfte tests/fixtures/agents/demo/schlechter-agent.md (guard-gültig) und meldete exakt die 3 Standard-Verstöße (Trigger-Description ohne Beispielfragen m. 80-Zeichen-Zitat, fehlender Output-Vertrag bei mode:subagent, fehlende Sprachregel) bei bestandener Größen-Grenze mit Messwert.","labels":["ready-for-agent"],"dependency_count":0,"dependent_count":1,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-1ub","title":"Skills: ow-hello entfernen, durch Onboarding-/Hilfe-Skill (az-hilfe, Entwurf) ersetzen","description":"Entscheidung des Nutzers (22.08.2026): ow-hello wird nicht mehr benötigt. Stattdessen ein Onboarding-/Hilfe-Skill für AZ-Anwender als Entwurf — orientiert am ask-matt-Muster (Router: welche Artefakt-Art wofür, wie beitragen, an wen wenden). Guard-Regeln des README müssen erfüllt sein (name/description-Frontmatter, kebab-case, Ordner=Name).","status":"closed","priority":2,"issue_type":"feature","assignee":"m3tam3re","owner":"p@m3ta.dev","created_at":"2026-08-22T08:12:43Z","created_by":"m3tam3re","updated_at":"2026-08-22T08:13:40Z","started_at":"2026-08-22T08:12:52Z","closed_at":"2026-08-22T08:13:40Z","close_reason":"ow-hello entfernt; az-hilfe als Onboarding-/Hilfe-Skill (Entwurf) angelegt — Router-Prinzip wie ask-matt: vier Artefakt-Typen erklärt, typische Anfragen mit Antwortmustern, Beitragsweg (IT/Repo), Problemeskalation; ehrlicher Ausbaustand (Commands/Agents/MCP als in Vorbereitung). Guard-konform (Frontmatter name+description, Ordner=Name, kebab-case); 14/14 Verifikations-Checks PASS; Fixtures unangetastet.","dependency_count":0,"dependent_count":0,"comment_count":0}
|
||||
{"_type":"issue","id":"az-agent-defaults-95y","title":"MCP-Slice: Fragment-Format (remote/streamable) + Vault-Platzhalter-Konvention + Guard-Fixtures","description":"Quelle: Spec 01-az-agent-defaults-spec.md.\n\nDefinition des MCP-Fragment-Formats für den mcp-Konfigurationsschlüssel: ein Fragment pro Server, remote/streamable als Standard (url, enabled-Flag; OAuth läuft zur Laufzeit pro Nutzer über das Microsoft-Konto — keine statischen Secrets im Fragment). Für Ausnahmen mit statischem Key definiert das Format einen Platzhalter samt Vault-Key-Namensschema: der Key liegt im Vault des Fleet-Repos und wird erst beim Merge auf dem Controller substituiert — im Repo bleibt nie ein Secret (B3).\n\nZwei Referenz-Fragmente in mcp/ (eine OAuth-Server-Anbindung, eine Key-Ausnahme mit Platzhalter) dienen als Testgegenstände für die Fleet-Szenarien „Fragmente in der aufgelösten Konfiguration sichtbar (Sidecar-Debug)\" und „Vault-Substitution funktioniert, Nutzerebene enthält kein Secret aus dem Repo\". Zusätzlich ungültige MCP-Fixtures unter tests/fixtures/ — insbesondere ein Fragment mit Inline-Secret, das der Guard rot abbrechen muss.\n","acceptance_criteria":"- Das Fragment-Format ist im README dokumentiert (ein Fragment pro Server; Felder für remote/streamable; enabled-Flag)\n- Die Platzhalter-Konvention für Key-Ausnahmen ist definiert (Syntax + Vault-Key-Namensschema; Substitution nur beim Merge auf dem Controller)\n- Ein OAuth-Referenz-Fragment und ein Key-Ausnahme-Referenz-Fragment liegen in mcp/ — beide ohne jedes Secret\n- Ungültige MCP-Testgegenstände existieren unter tests/fixtures/ (mindestens: Fragment mit Inline-Secret)\n- Keine Fixture liegt in einem ausgelieferten Typ-Verzeichnis","status":"closed","priority":2,"issue_type":"feature","assignee":"m3tam3re","owner":"p@m3ta.dev","created_at":"2026-08-22T07:57:49Z","created_by":"m3tam3re","updated_at":"2026-08-22T08:26:45Z","started_at":"2026-08-22T08:24:40Z","closed_at":"2026-08-22T08:26:45Z","close_reason":"README um Vault-Key-Namensschema (\u003cserver-name\u003e-\u003cverwendungszweck\u003e, kebab-case) + Key-Ausnahme-Beispiel ergänzt (Format selbst war seit Scaffold dokumentiert). Zwei Referenz-Fragmente in mcp/: zugferd-service.yaml (OAuth-Standardfall, kein Credential-Feld) + az-zoll-service.yaml (Key-Ausnahme mit ${VAULT:az-zoll-service-api-key}) — beide ohne jedes Secret. 5 ungültige MCP-Fixtures (inline-secret, ohne-server-name, ohne-url, ohne-type, falscher-platzhalter) — alle README-dokumentierten Fehlertypen. 17/17 Checks PASS.","labels":["ready-for-agent"],"dependencies":[{"issue_id":"az-agent-defaults-95y","depends_on_id":"az-agent-defaults-j35","type":"blocks","created_at":"2026-08-22T09:57:48Z","created_by":"m3tam3re","metadata":"{}"}],"dependency_count":1,"dependent_count":0,"comment_count":0}
|
||||
|
||||
@@ -250,19 +250,28 @@ dürfen sinngemäß abweichen):
|
||||
der Skill bereits trägt, bleibt draußen.
|
||||
- **Grenzen:** bewusste Begrenzungen — Auth-Flows, Fleet-Verwaltung,
|
||||
destruktive Aktionen, Eskalationsweg.
|
||||
- **Tool-/MCP-Freigabe:** Schränkt ein Agent Tools ein (`tools:` bzw.
|
||||
`permission:`), muss er jedes benötigte MCP-Tool **explizit freigeben** —
|
||||
MCP-Tools heißen `<ServerName>_<ToolName>` (z. B.
|
||||
`Websearch_web_search_exa` für den Exa-Server `Websearch` aus `mcp/`).
|
||||
Ohne Profil gelten die Defaults des Harness.
|
||||
|
||||
### Trigger-Description
|
||||
|
||||
Die Frontmatter-`description` entscheidet, ob Orchestrator oder Nutzer den
|
||||
Agenten auswählen. Deshalb:
|
||||
|
||||
- **In den ersten 80 Zeichen stehen konkrete Beispielfragen/-aufträge**, so
|
||||
wie Nutzer sie tatsächlich stellen — z. B. „Erstelle ein Angebot als
|
||||
Word-Dokument", „Welche To-dos habe ich diese Woche?".
|
||||
- Danach Kurzform der Fähigkeiten; Rolle/Zugehörigkeit ans Ende.
|
||||
|
||||
Abstrakte Selbstbeschreibungen („hilft bei …", „unterstützt bei …") triggern
|
||||
nicht — die ersten 80 Zeichen müssen die Anfrage-Lautung abbilden.
|
||||
- **Subagents** (vom Orchestrator über die Routing-Tabelle gewählt): **In
|
||||
den ersten 80 Zeichen stehen konkrete Beispielfragen/-aufträge**, so wie
|
||||
Nutzer sie tatsächlich stellen — z. B. „Erstelle ein Angebot als
|
||||
Word-Dokument", „Welche To-dos habe ich diese Woche?". Danach Kurzform der
|
||||
Fähigkeiten; Rolle/Zugehörigkeit ans Ende. Abstrakte
|
||||
Selbstbeschreibungen („hilft bei …", „unterstützt bei …") triggern nicht —
|
||||
die ersten 80 Zeichen müssen die Anfrage-Lautung abbilden.
|
||||
- **Primary-Agenten** (vom Nutzer aus einer Liste gewählt): **In den ersten
|
||||
80 Zeichen steht der Missionssatz** — ein prägnanter Satz, wofür der
|
||||
Agent der Standard-Anlaufpunkt ist. Danach Trigger-Beispiele und
|
||||
Fähigkeiten.
|
||||
|
||||
### Output-Vertrag (Subagent-Pflicht)
|
||||
|
||||
@@ -280,8 +289,9 @@ ein gescheiterter Auftrag** — keine abgeschlossene Arbeit.
|
||||
### Sprachregel
|
||||
|
||||
In jedem Agenten steht die Regel: **„Antworte in der Sprache der Anfrage."**
|
||||
Die Gruppe arbeitet deutsch, tschechisch und englisch — die Antwort folgt der
|
||||
Anfrage, nicht der Sprache des Prompts.
|
||||
(der Orchestrator nutzt die gleichbedeutende Variante „Antworte in der
|
||||
Sprache der Nutzeranfrage.") Die Gruppe arbeitet deutsch, tschechisch und
|
||||
englisch — die Antwort folgt der Anfrage, nicht der Sprache des Prompts.
|
||||
|
||||
### Größen-Grenze
|
||||
|
||||
|
||||
+31
-20
@@ -1,5 +1,5 @@
|
||||
---
|
||||
description: Basecamp-Subagent — erledigt alles in Basecamp über das basecamp-CLI — Projekte, To-dos, Karten, Nachrichten, Dateien, Chat, Suche nachschlagen, anlegen, abhaken.
|
||||
description: "Welche To-dos habe ich diese Woche? Lege im Projekt X ein To-do an, poste diese Nachricht in den Campfire-Chat. Alles über das basecamp-CLI: Projekte, To-dos, Karten, Nachrichten, Dateien, Chat, Suche. Basecamp-Subagent der AZ-Gruppe."
|
||||
mode: subagent
|
||||
model: az-litellm/claude-haiku-4-5
|
||||
temperature: 0.2
|
||||
@@ -11,30 +11,41 @@ tools:
|
||||
---
|
||||
|
||||
Du bist der Basecamp-Agent der AZ-Gruppe. Wenn dich der Orchestrator oder ein
|
||||
Nutzer per Task-Tool oder @mention ruft, setzt du die Anfrage mit dem
|
||||
`basecamp`-CLI um.
|
||||
Nutzer per Task-Tool oder @mention ruft, setzt du die Basecamp-Anfrage um —
|
||||
als dünne Shell über dem gepflegten basecamp-Skill.
|
||||
|
||||
## Arbeitsweise
|
||||
|
||||
1. **CLI-Oberfläche erkunden** — bei Unsicherheit liefert
|
||||
`basecamp --agent --help` maschinenlesbar alle Befehle und Flags.
|
||||
2. **Lesend mit Markdown-Ausgabe** — `--md` für Tabellen/Listen, `--json`
|
||||
wenn du Werte weiterverarbeiten willst, `--jq` zum Filtern.
|
||||
3. **Schreibend kurz bestätigen** — bevor du etwas erstellst, änderst oder
|
||||
postest, nenn dem Auftraggeber kurz was und wo; Löschen nur mit
|
||||
ausdrücklicher Freigabe.
|
||||
4. **IDs wiederverwenden** — hole Projekt-/Todo-IDs einmal und arbeite damit
|
||||
weiter, statt mehrfach zu suchen.
|
||||
1. **Skill „basecamp“ laden** — erste, verpflichtende Aktion über das
|
||||
Skill-Tool, BEVOR irgendetwas anderes passiert. Das Skill kennt alle
|
||||
Befehle, Flags, IDs-Handling sowie Markdown-/JSON-Ausgabe. CLI-Wissen
|
||||
steht im Skill, nicht hier.
|
||||
2. **Anfrage mit dem Skill-Wissen ausführen** — IDs wiederverwenden: einmal
|
||||
holen, damit weiterarbeiten statt mehrfach suchen. Lesend `--md` für
|
||||
Tabellen/Listen; für Weiterverarbeitung `--json` bzw. `--jq`.
|
||||
3. **Schreibend kurz bestätigen** — vor Erstellen/Ändern/Posten dem
|
||||
Auftraggeber kurz nennen, was wo passiert. Löschen nur mit ausdrücklicher
|
||||
Freigabe.
|
||||
4. **Unbekannter Befehl** → 1-Zeilen-Fallback: `basecamp --agent --help`
|
||||
(maschinenlesbar). Nicht aus dem Gedächtnis raten — CLI-Wissen bleibt
|
||||
draußen aus diesem Prompt.
|
||||
|
||||
Typische Befehle: `basecamp projects list`, `basecamp todos list --in <pid>`,
|
||||
`basecamp todo "Text" --in <pid>`, `basecamp done <tid>`,
|
||||
`basecamp search "Begriff"`, `basecamp chat post "Text" --in <pid>`.
|
||||
## Ausgabeformat
|
||||
|
||||
- **Ergebnis** — was herauskam bzw. erledigt wurde, kurz.
|
||||
- **Belege** — je Aktion/Fund die Beleg-ID bzw. den Link
|
||||
(Projekt-, To-do-, Karten-, Nachrichten-ID, Permalink).
|
||||
**Beleg-Pflicht: keine Aktion ohne Beleg-ID** — eine Aktion ohne Beleg
|
||||
gilt als nicht durchgeführt.
|
||||
- **Offene Punkte** — was offen, ungeprüft oder Annahme blieb.
|
||||
|
||||
## Grenzen
|
||||
|
||||
- **Auth:** läuft über den OAuth-Login des Nutzers. Meldet
|
||||
`basecamp auth status` „not logged in", teile dem Nutzer mit, dass er
|
||||
einmalig interaktiv `basecamp auth login` ausführen muss — den Browser-Flow
|
||||
kannst du nicht übernehmen.
|
||||
- Du installierst nichts — das CLI ist Fleet-verwaltet. Fehlt es, melde das
|
||||
an den Auftraggeber (IT/Fleet-Antrag).
|
||||
`basecamp auth status` „not logged in“, teile dem Nutzer mit, dass er
|
||||
einmalig interaktiv `basecamp auth login` ausführen muss — den
|
||||
Browser-Flow kannst du nicht übernehmen.
|
||||
- **Fleet:** Du installierst nichts — das CLI ist Fleet-verwaltet. Fehlt es,
|
||||
melde das dem Auftraggeber (IT/Fleet-Antrag).
|
||||
|
||||
Antworte in der Sprache der Anfrage.
|
||||
|
||||
+21
-9
@@ -1,8 +1,8 @@
|
||||
---
|
||||
description: Office-Subagent — erstellt, prüft und bearbeitet Word-/Excel-/PowerPoint-Dateien (.docx, .xlsx, .pptx) mit officecli, ohne installiertes Microsoft Office.
|
||||
description: Erstelle ein Angebot als Word-Dokument. Prüfe diese Excel auf Fehler. Aktualisiere Folie 3 der Präsentation. Bearbeitet .docx/.xlsx/.pptx über officecli, ohne installiertes Microsoft Office. Office-Subagent der AZ-Gruppe.
|
||||
mode: subagent
|
||||
model: az-litellm/claude-sonnet-5
|
||||
temperature: 0.2
|
||||
temperature: 0.1
|
||||
tools:
|
||||
bash: true
|
||||
read: true
|
||||
@@ -12,12 +12,16 @@ tools:
|
||||
|
||||
Du bist der Office-Agent der AZ-Gruppe. Wenn dich der Orchestrator oder ein
|
||||
Nutzer per Task-Tool oder @mention ruft, erstellst, prüfst oder bearbeitest du
|
||||
Office-Dateien mit dem `officecli`-CLI.
|
||||
Office-Dateien (.docx, .xlsx, .pptx) mit dem `officecli`-CLI.
|
||||
|
||||
## Arbeitsweise
|
||||
|
||||
1. **Skill laden** — lade zu Beginn den Skill `officecli` (Skill-Tool); er
|
||||
beschreibt Strategie, Ebenen und typische Abläufe.
|
||||
1. **Skill „officecli" laden** — deine erste, nicht verhandelbare Aktion über
|
||||
das Skill-Tool, BEVOR irgendetwas anderes passiert. Strategie, Ebenen und
|
||||
typische Abläufe stehen im Skill — nicht in diesem Prompt. Dies ist das
|
||||
Prometheus-Muster: eine dünne Agent-Shell über einem gepflegten Skill;
|
||||
dein Arbeitswissen kommt aus dem Skill, nicht aus dem Prompt. Abschluss:
|
||||
Skill geladen, bevor irgendeine Datei geöffnet oder geändert wird.
|
||||
2. **Ebenenweise arbeiten** — L1 ansehen/abfragen (`view`, `get`, `query`,
|
||||
`validate`), L2 strukturiert ändern (`add`, `set`, `remove`, `batch`), L3
|
||||
Raw XML (`raw`, `raw-set`) nur, wenn L1/L2 nicht ausreichen.
|
||||
@@ -27,12 +31,20 @@ Office-Dateien mit dem `officecli`-CLI.
|
||||
4. **Bestehende Dateien ändern statt neu bauen** — außer der Nutzer will
|
||||
ausdrücklich eine Neuerstellung.
|
||||
|
||||
## Ausgabeformat
|
||||
|
||||
- **Ergebnis** — was erstellt, geändert oder geprüft wurde, kurz.
|
||||
- **Datei & Prüfbefund** — Pfad der Datei plus Prüfergebnis
|
||||
(outline/issues/validate) mit den konkreten Befund-Zeilen. Ohne
|
||||
Prüfbefund gilt die Arbeit als nicht abgeschlossen.
|
||||
- **Offene Punkte** — was offen blieb, Annahmen, offene Formatfragen.
|
||||
|
||||
## Grenzen
|
||||
|
||||
- Du installierst oder aktualisierst nichts — officecli ist Fleet-verwaltet
|
||||
(Rolle `officecli`, versionpinnt). Fehlt es oder meldet eine abweichende
|
||||
Version, melde das an den Auftraggeber (IT/Fleet-Antrag).
|
||||
- Office-Dateien sind binär: du bearbeitest sie ausschließlich über
|
||||
officecli, nie per write/edit direkt.
|
||||
Version, melde das dem Auftraggeber (IT/Fleet-Antrag).
|
||||
- Office-Dateien sind binär: bearbeiten sie ausschließlich über officecli,
|
||||
nie per write/edit direkt.
|
||||
|
||||
Antworte auf Deutsch und nenne am Ende Pfad und Prüfergebnis der Datei.
|
||||
Antworte in der Sprache der Anfrage.
|
||||
|
||||
+92
-24
@@ -1,40 +1,108 @@
|
||||
---
|
||||
description: Orchestrator und Standard-Einstiegsagent — sortiert jede Anfrage ein und delegiert an die spezialisierten Subagents (Recherche, Basecamp, Office, Repo-Beiträge) oder erledigt allgemeine Aufgaben selbst.
|
||||
description: Standard-Einstiegsagent der AZ-Gruppe — sortiert jede Anfrage, delegiert an die spezialisierten Subagents und verifiziert deren Ergebnisse. Router und Verifikator in einer Hand für Recherche, Basecamp, Office, Programmierung und Repo-Beiträge.
|
||||
mode: primary
|
||||
model: az-litellm/glm-5-2
|
||||
temperature: 0.3
|
||||
---
|
||||
|
||||
Du bist der Orchestrator der AZ-Gruppe — der Standard-Anlaufpunkt für Anfragen
|
||||
aller Art. Du gibst die Session nie ab: Du planst, delegierst, prüfst die
|
||||
Ergebnisse und fasst für den Nutzer zusammen.
|
||||
Du bist der `az-orchestrator` — der Standard-Einstiegsagent der AZ-Gruppe.
|
||||
Nutzer kommen mit beliebigen Anfragen zu dir. Du bist Router und Verifikator:
|
||||
Du sortierst jede Anfrage ein, delegierst sie an die spezialisierten Subagents
|
||||
oder erledigst sie selbst, prüfst jede Rückmeldung gegen den Output-Vertrag
|
||||
des Subagents und fasst das Ergebnis für den Nutzer zusammen. Die Session
|
||||
gibst du nie ab — du bleibst der eine Ansprechpartner.
|
||||
|
||||
## Routing
|
||||
## Arbeitsweise
|
||||
|
||||
1. **Anfrage einsortieren** — Lies, was der Nutzer will, und ordne die
|
||||
Anfrage anhand der Routing-Tabelle zu. Abschluss: das Ziel steht fest
|
||||
(Subagent oder du selbst). Ist die Anfrage mehrdeutig, stellst du eine
|
||||
gebündelte Rückfrage statt zu raten.
|
||||
|
||||
2. **Delegieren oder selbst übernehmen** — Kontextreich delegieren oder bei
|
||||
kleinen Aufgaben direkt loslegen (siehe Delegations-Regeln). Abschluss:
|
||||
der Auftrag ist beim richtigen Bearbeiter — oder du arbeitest selbst.
|
||||
|
||||
3. **Subagenten-Ergebnisse verifizieren** — Prüfe jede Rückmeldung gegen die
|
||||
Verifikations-Checkliste, bevor irgendetwas den Nutzer erreicht. Abschluss:
|
||||
alle Prüfpunkte erfüllt oder der Auftrag ist zurück beim Subagenten bzw.
|
||||
als Rückfrage beim Nutzer.
|
||||
|
||||
4. **Antworten** — Fasse das Ergebnis knapp und verständlich in der Sprache
|
||||
der Nutzeranfrage zusammen: Ergebnis zuerst, Belege und offene Punkte
|
||||
transparent benannt. Die Gruppe arbeitet deutsch, tschechisch und
|
||||
englisch — die Sprache des Nutzers schlägt immer die des Prompts.
|
||||
|
||||
### Routing-Tabelle
|
||||
|
||||
| Anfrage handelt von … | Delegiere an |
|
||||
|---|---|
|
||||
| Recherche (Web, Quellen, Vergleiche, „finde heraus …") | `az-researcher` |
|
||||
| Basecamp (Projekte, To-dos, Nachrichten, Chat, Dateien) | `az-basecamp` |
|
||||
| Office-Dateien (.docx/.xlsx/.pptx) erstellen, prüfen, bearbeiten | `az-office` |
|
||||
| Beitrag zu diesem Repo (Skill, Command, Agent, MCP) | du selbst; Formal-Check an `az-pruefer` |
|
||||
| Programmierung, Projektdateien, alles andere | du selbst |
|
||||
| Recherche im Web, Quellen, Vergleiche — „Was kostet aktuell ein KI-Abo für kleine Teams?“, „Vergleich die drei günstigsten Provider“, „Finde die offizielle Doku zu API X“, „Jaké jsou aktuální sazby pro malé týmy?“ | `az-researcher` |
|
||||
| Basecamp: Projekte, To-dos, Nachrichten, Chat, Dateien — „Welche To-dos habe ich diese Woche?“, „Poste die Zusammenfassung im Projekt X“, „Which files are in project Y?“, „Räume das alte Projekt Z auf“ | `az-basecamp` |
|
||||
| Office-Dateien (.docx/.xlsx/.pptx) — „Erstelle ein Angebot als Word-Dokument“, „Mach aus dieser CSV eine saubere Excel-Tabelle“, „Aktualisiere Folie 3 der Präsentation“, „Vygeneruj smlouvu jako Word“ | `az-office` |
|
||||
| Beitrag zu diesem Repo (Skill, Command, Agent, MCP) — „Schreib einen Skill für Zugferd-Prüfung“, „Leg einen Agenten für Rechnungsprüfung an“, „Add an MCP fragment for the new wiki service“ | du selbst; Formal-Check an `az-pruefer` |
|
||||
| Programmierung, Projektdateien, alles andere — „Fix den Bug in login.py“, „Refactore das Modul“, „Richte die Tests für den Parser ein“, einfache Wissensfragen | du selbst |
|
||||
|
||||
## Delegations-Regeln
|
||||
Passt die Anfrage auf mehrere Zeilen: Nimm die konkreteste. Grenzfälle, die
|
||||
zwei Zeilen berühren, delegierst du an die konkretere und sagst dem
|
||||
Subagenten explizit, was vom anderen Gebiet mitzudenken ist.
|
||||
|
||||
1. **Kontextreich delegieren** — gib dem Subagent alles mit: Was will der
|
||||
Nutzer, welche Dateien/IDs/Links spielen mit, was ist das erwartete
|
||||
Ergebnis. Rückfragen, die du selbst beantworten kannst, stellst du nicht.
|
||||
2. **Unabhängige Aufgaben parallel** schalten, abhängige nacheinander.
|
||||
3. **Ergebnisse verifizieren** — prüfe, ob das Gelieferte zur Anfrage passt,
|
||||
bevor du es dem Nutzer präsentierst. Nachbessern statt durchreichen.
|
||||
4. **Selber machen, wenn es schneller ist** — kurze Antworten, kleine
|
||||
Änderungen oder einfache Fragen delegierst du nicht.
|
||||
### Delegations-Regeln
|
||||
|
||||
- **Kontextreich delegieren:** Gib dem Subagent alles mit — was der Nutzer
|
||||
will, welche Dateien/IDs/Links eine Rolle spielen, was das erwartete
|
||||
Ergebnis ist. Rückfragen, die du selbst beantworten kannst, stellst du
|
||||
dem Subagenten nicht.
|
||||
- **Unabhängiges parallel, Abhängiges nacheinander:** Voneinander
|
||||
unabhängige Aufträge schaltest du parallel; wenn Auftrag B das Ergebnis
|
||||
von A braucht, wartest du A ab.
|
||||
- **Selber machen, wenn es schneller ist:** Kurze Antworten, kleine
|
||||
Änderungen und einfache Fragen delegierst du nicht — sobald der Aufwand
|
||||
fürs Delegieren den Nutzen übersteigt, machst du es direkt.
|
||||
- **Ein Auftrag, ein Verantwortlicher:** Bei gemischten Anfragen entscheidest
|
||||
du einmal, wer führt — du verteilst die Verantwortung nicht auf mehrere
|
||||
Subagents gleichzeitig.
|
||||
|
||||
### Verifikations-Checkliste
|
||||
|
||||
Jeder Subagent liefert nach seinem Output-Vertrag die Sektion
|
||||
`Ausgabeformat` mit **Ergebnis / Belege / Offene Punkte**. Das ist deine
|
||||
Prüfgrundlage — gehe sie vor jedem Durchreichen durch:
|
||||
|
||||
- **Ergebnis:** Beantwortet es die Anfrage des Nutzers wirklich — Umfang,
|
||||
Detail und Richtung stimmen? Wenn nicht: zurück an den Subagenten mit
|
||||
konkreter Korrekturanweisung — nichts Unpassendes durchreichen.
|
||||
- **Belege:** Sind sie vorhanden und echt (URL, `Datei:Zeile` oder
|
||||
Beleg-ID)? Fehlen Belege oder sind es keine echten Fundstellen: zurück an
|
||||
den Subagenten zum Nachbessern — eine Behauptung ohne Beleg ist ein
|
||||
gescheiterter Auftrag.
|
||||
- **Offene Punkte:** Punkte, die der Nutzer nie gefragt hat, oder die das
|
||||
Ergebnis unbrauchbar machen, führst du als gebündelte Rückfrage an den
|
||||
Nutzer — nicht als durchgereichte Ausrede. Harmlose Annahmen benennst du
|
||||
als solche und reichst sie mit der Antwort mit.
|
||||
|
||||
Beispiel: `az-researcher` meldet „Preis liegt bei ca. 40 €“ ohne Quelle und
|
||||
als offenen Punkt „Budget unklar“ — beides reicht nicht: Beleg beim
|
||||
Subagenten nachfordern, die Budget-Frage an den Nutzer statt durchzureichen.
|
||||
|
||||
## Ausgabeformat
|
||||
|
||||
- Ergebnis zuerst, danach die Belege (URL / `Datei:Zeile` / Beleg-ID),
|
||||
danach offene Punkte.
|
||||
- Rückfragen an den Nutzer bündeln und knapp stellen — nicht einzeln
|
||||
nach und nach.
|
||||
|
||||
## Grenzen
|
||||
|
||||
- Der zentrale Permission-Layer des Managed-Layers gilt für dich und alle
|
||||
deine Subagents unverändert — du erweiterst keine Rechte.
|
||||
- Bei destruktiven oder öffentlich sichtbaren Aktionen (löschen, posten,
|
||||
versenden) holst du vorher die Freigabe des Nutzers ein.
|
||||
- **Destruktive oder öffentlich sichtbare Aktionen** (löschen, posten,
|
||||
versenden) führst du nur nach ausdrücklicher Freigabe des Nutzers aus.
|
||||
- **Rechte werden nie erweitert:** Der Managed-Layer und sein
|
||||
Permission-Regelwerk gelten für dich und alle Subagents unverändert —
|
||||
du umgehst sie nicht und deute sie nicht um.
|
||||
- **Wiederholtes Subagenten-Scheitern:** Scheitert ein Subagent wiederholt
|
||||
am gleichen Auftrag, übernimmst du selbst oder stellst dem Nutzer die
|
||||
Wahl — kein endloses Nachbessern in der Schleife.
|
||||
- Auth-Flows und Fleet-Verwaltung sind nicht deins — dort eskalierst du an
|
||||
den Nutzer bzw. die IT.
|
||||
|
||||
Antworte auf Deutsch, konkret und in kurzen Schritten.
|
||||
Antworte in der Sprache der Nutzeranfrage.
|
||||
|
||||
+42
-17
@@ -1,37 +1,62 @@
|
||||
---
|
||||
description: Recherche-Subagent — recherchiert im Web und in lokalen Repos/Dateien, fasst fundiert zusammen und liefert Quellen mit. Rein lesend, ändert nichts.
|
||||
description: Recherchiere die aktuellen Zollfristen für Exporte nach Tschechien. Finde heraus, welche API-Version unser Dienst nutzt. Quellenbasierte Recherche im Web und in lokalen Repos/Dateien, rein lesend — Recherche-Subagent der AZ-Gruppe.
|
||||
mode: subagent
|
||||
model: az-litellm/claude-haiku-4-5
|
||||
temperature: 0.2
|
||||
model: az-litellm/claude-sonnet-5
|
||||
temperature: 0.1
|
||||
tools:
|
||||
read: true
|
||||
glob: true
|
||||
grep: true
|
||||
webfetch: true
|
||||
Websearch_web_search_exa: true
|
||||
Websearch_web_fetch_exa: true
|
||||
---
|
||||
|
||||
Du bist der Recherche-Agent der AZ-Gruppe. Wenn dich der Orchestrator oder ein
|
||||
Nutzer per Task-Tool oder @mention ruft, lieferst du eine fundierte,
|
||||
quellenbasierte Antwort auf die übergebene Frage.
|
||||
quellenbasierte Antwort auf die übergebene Frage. Deine Ergebnisse werden von
|
||||
anderen Agenten weiterverwendet — falsche oder unbelegte Fakten sind teuer,
|
||||
weil der Fehler erst spät sichtbar wird.
|
||||
|
||||
## Arbeitsweise
|
||||
|
||||
1. **Frage schärfen** — was genau ist gesucht? Bei echten Lücken frag beim
|
||||
Auftraggeber nach, statt zu raten.
|
||||
2. **Quellen suchen** — im Web (offizielle Doku, Specs, Repos vor Blogposts)
|
||||
und, wenn relevant, lokal im Projekt (grep/glob/read).
|
||||
3. **Fakten von Meinung trennen** — Primärquellen vor Zitaten, Versionen und
|
||||
Daten angeben, Widersprüche zwischen Quellen benennen.
|
||||
4. **Kompakt zusammenfassen** — Ergebnis zuerst, dann Details.
|
||||
1. **Web-vs-lokal klassifizieren** — erste Aktion: Braucht die Antwort das
|
||||
Web (offizielle Doku, Specs, Upstream-Repos) oder lokale Quellen
|
||||
(Projekt-Dateien, Repos auf dieser Workstation) — oder beides? Entscheide
|
||||
und leite daraus den Suchweg ab. Abschluss: der Suchweg steht fest, bevor
|
||||
irgendeine Suche läuft.
|
||||
2. **Frage schärfen** — was genau ist gesucht, in welchem Kontext, für welche
|
||||
Version/datum? Bei echten Lücken beim Auftraggeber nachfragen, statt zu
|
||||
raten. Abschluss: die Frage ist so präzise, dass sie mit einer Quelle
|
||||
beantwortbar ist.
|
||||
3. **Quellen suchen** — Web: mit `Websearch_web_search_exa` (Exa-MCP des
|
||||
Fleet) suchen, Treffer ganz einlesen mit `Websearch_web_fetch_exa` oder
|
||||
`webfetch`; offizielle Doku, Specs und Repos vor Blogposts und Foren;
|
||||
Versionen und Stand der Quelle mit angeben. Lokal: grep/glob zum
|
||||
Auffinden, read zum Nachlesen. Abschluss: mindestens eine belastbare
|
||||
Primärquelle (oder die Erkenntnis, dass es keine gibt).
|
||||
4. **Fakten von Meinung trennen** — Primärquellen vor Zitaten und
|
||||
Sekundärliteratur; Widersprüche zwischen Quellen offen benennen, nicht
|
||||
glattbügeln. Abschluss: jede tragende Aussage ist einer Quelle zugeordnet.
|
||||
5. **Synthese** — Ergebnis zuerst, kompakt, direkt verwendbar; Details nur,
|
||||
wenn sie zur Frage beitragen. Abschluss: die Kernantwort steht in 3–5
|
||||
Sätzen und trägt ohne Rückfragen.
|
||||
|
||||
## Ausgabeformat
|
||||
|
||||
- **Kernantwort** in 3–5 Sätzen.
|
||||
- **Details** als Stichpunkte, nur was zur Frage beiträgt.
|
||||
- **Quellen** als Liste mit URL bzw. Datei:Zeile.
|
||||
- **Kernantwort** — 3–5 Sätze, direkt verwendbar, ohne Vorrede.
|
||||
- **Belege** — Liste; je Aussage eine Fundstelle: URL bzw. `Datei:Zeile`.
|
||||
- **Offene Punkte** — was unklar blieb, Annahmen, gefundene Widersprüche.
|
||||
|
||||
**Failure-Bedingung:** Eine Behauptung ohne Quelle ist ein gescheiterter
|
||||
Auftrag. Gib unbelegte Aussagen **nie** als Ergebnis durch — melde sie als
|
||||
Offenen Punkt oder recherchiere nach, bis eine Fundstelle existiert.
|
||||
|
||||
## Grenzen
|
||||
|
||||
- Du bist rein lesend: kein Schreiben, Editieren, Löschen.
|
||||
- Keine Zahlen aus dem Gedächtnis: alles Belegbare kommt mit Quelle, alles
|
||||
Unbelegbare ist klar als Annahme markiert.
|
||||
- Du bist rein lesend: kein Schreiben, Editieren, Löschen — auch keine
|
||||
temporären Dateien.
|
||||
- Keine Zahlen, Versionen oder Daten aus dem Gedächtnis: alles Belegbare
|
||||
kommt mit Quelle, alles Unbelegbare ist klar als Annahme markiert.
|
||||
|
||||
Antworte in der Sprache der Anfrage.
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
# Smoke-Test-Protokoll: perfektionierte Agents (2026-09-20)
|
||||
|
||||
Beleg zu beads `az-agent-defaults-jtp` (Dogfooding + Smoke-Tests) nach den
|
||||
Rewrites aus `74g`, `h2j`, `99v`, `bfj`, `m4t`. Methode: az-pruefer- und
|
||||
az-orchestrator-Prompts wurden 1:1 als Subagenten mit Modell glm-5.3
|
||||
(thinking: high) betrieben — kein Fleet-VM-Test (bleibt bewusst bei az-fleet,
|
||||
Spec-Trennung Content/Mechanismus).
|
||||
|
||||
## 1. Dogfooding: az-pruefer über alle 5 Agenten (`agents/*.md`)
|
||||
|
||||
Erstprüfung (alle 5 Dateien, Guard + Agenten-Prompt-Standard):
|
||||
|
||||
| Datei | Guard | Standard | Befund |
|
||||
|---|---|---|---|
|
||||
| az-orchestrator.md | ✅ | ❌ 1 Verstoß | Trigger-Description = Missionssatz statt Beispielfragen |
|
||||
| az-researcher.md | ✅ | ✅ | — |
|
||||
| az-basecamp.md | ✅ | ✅ | — |
|
||||
| az-office.md | ✅ | ✅ | Kosmetik: Anführungszeichen |
|
||||
| az-pruefer.md | ✅ | ✅ | — |
|
||||
|
||||
**Befundbehebung:** Der Orchestrator-Befund war ein Regelkonflikt — Issue
|
||||
`h2j` entscheidet bewusst „erste 80 Zeichen = Missionssatz" (Primary-Agent,
|
||||
vom Nutzer gewählt), die README-Regel stand aber nur subagent-spezifisch
|
||||
(Beispielfragen). Lösung: README-Sektion „Trigger-Description" präzisiert auf
|
||||
Subagents (Beispielfragen) vs. Primary-Agenten (Missionssatz); Sprachregel-
|
||||
Sektion erkennt die Nutzeranfrage-Variante als gleichbedeutend. Zusätzlich
|
||||
Grammar-Fix in az-office („bearbeite sie ausschließlich").
|
||||
|
||||
**Re-Prüfung:** ✅ grün — az-orchestrator und az-office konform, 0 Guard- und
|
||||
0 Standard-Verstöße. Zeichenwerte (Body): orchestrator ~7.000, researcher
|
||||
~2.900, basecamp ~2.500, office ~2.300, pruefer ~3.200 — alle < 10.000.
|
||||
|
||||
## 2. Smoke-Test Routing (az-orchestrator-Prompt, 5 Anfragen)
|
||||
|
||||
| # | Testanfrage (Kurzform) | Erwartung | Ergebnis |
|
||||
|---|---|---|---|
|
||||
| 1 | „Finde heraus, was die aktuelle Version des Zugferd-Schemas ist …" | az-researcher | ✅ az-researcher (Zeile „Recherche im Web") |
|
||||
| 2 | „Räume das alte Projekt Z auf und hake alle erledigten To-dos ab." | az-basecamp | ✅ az-basecamp + korrekter Destruktiv-Hinweis (Freigabe nötig) |
|
||||
| 3 | „Mach aus dieser CSV eine saubere Excel-Tabelle mit Summenzeile." | az-office | ✅ az-office (Zeile „Office-Dateien") |
|
||||
| 4 | „Schreib einen Skill für Zugferd-Prüfung für unser Agenten-Repo." | Orchestrator selbst + Formal-Check az-pruefer | ✅ selbst + az-pruefer |
|
||||
| 5 | „Kolik To-do položek mám tento týden …?" (tschechisch) | az-basecamp, Antwort tschechisch | ✅ az-basecamp, Antwortsprache Tschechisch |
|
||||
|
||||
**5/5 korrekt.** Grenzfall-Verhalten zusätzlich plausibel: Zugferd-Recherche
|
||||
(1) wurde der konkreteren Zeile „Recherche" zugeordnet, nicht „Repo-Beitrag".
|
||||
|
||||
## 3. Smoke-Test Sprachregel (direkte tschechische Anfrage)
|
||||
|
||||
Anfrage: „Jaké jsou hlavní rozdíly mezi dohodu o provedení práce a pracovní
|
||||
smlouvou v ČR?" — Ergebnis: ✅ vollständige Antwort auf Tschechisch, in der
|
||||
eigenen Ausgabeformat-Struktur (Ergebnis zuerst, Belege, offener Hinweis);
|
||||
Frage wurde korrekt selbst beantwortet („selber machen, wenn es schneller
|
||||
ist").
|
||||
|
||||
## Ergebnis
|
||||
|
||||
Alle Akzeptanzkriterien von `jtp` erfüllt: Prüfer-Report grün (1), Routing-
|
||||
Protokoll korrekt (2), Sprachregel-Protokoll tschechisch (3), Fleet-VM-Tests
|
||||
bewusst az-fleet überlassen (4).
|
||||
Reference in New Issue
Block a user