Agenten-Chatrooms
Starte N Agenten (Standard 3) in einer simulierten Gruppenkonversation. Jeder Agent liest den vollständigen Chat-Verlauf, bevor er antwortet, und baut auf vorherigen Beiträgen auf, stellt sie in Frage oder verfeinert sie. Du (der Orchestrator) agierst als Projektleiter – moderierst Runden, liest die Debatte und extrahierst das finale Ergebnis.
Warum das funktioniert: Sequenzielle Übergaben verlieren den Kontext – das zweite Modell weiß nicht, WARUM das erste seine Entscheidungen getroffen hat. Eine gemeinsame Konversation bewahrt Argumentationsketten und ermöglicht echte Debatten. Wenn Agent A sagt „Das braucht eine Warteschlange“ und Agent B sagt „Eine einfache Schleife ist in Ordnung“, dann ist diese Meinungsverschiedenheit wertvoller als jede einzelne, selbstbewusste Antwort eines Agenten. Die Agenten hinterfragen Annahmen, erkennen Fehler und synthetisieren verschiedene Denkpfade.
Ausführung
1. Anfrage parsen
Extrahiere aus der Benutzernachricht:
- Problem/Frage zur Debatte
- Anzahl der Agenten N – Standard 3. Benutzer kann überschreiben („5 Agenten debattieren lassen“)
- Anzahl der Runden R – Standard 3. Benutzer kann überschreiben („5 Runden debattieren“)
- Agentenrollen (optional) – Benutzer kann Rollen vorgeben („Lass einen Architekten, einen Security-Ingenieur und einen Frontend-Entwickler darüber debattieren“). Wenn nicht angegeben, weise abwechslungsreiche Standardrollen zu.
Wenn das Problem vage ist, bitte den Benutzer, es vor dem Start zu präzisieren.
2. Agentenrollen zuweisen
Jeder Agent bekommt eine andere Perspektive, um produktive Meinungsverschiedenheiten zu maximieren. Wenn der Benutzer keine Rollen angegeben hat, wähle aus diesen Standardrollen basierend auf dem Problembereich:
Softwareentwicklung:
- Architekt – denkt in Systemen, Schnittstellen, Skalierbarkeit und langfristiger Wartbarkeit
- Pragmatiker – optimiert auf schnelle Auslieferung, minimale Komplexität, „gut genug“-Lösungen
- Kritiker – findet Randfälle, Fehlermodi, Sicherheitslücken und unausgesprochene Annahmen
Produkt/Design:
- Benutzer-Anwalt – optimiert auf UX, Einfachheit, Benutzerfreude
- Geschäftsstratege – optimiert auf Umsatz, Wachstum, Wettbewerbsvorteil
- Ingenieur – verankert die Diskussion in technischer Machbarkeit und Kosten
Strategie/Entscheidungen:
- Optimist – sieht Chancen, Potenzial, Gründe zu handeln
- Skeptiker – sieht Risiken, Nachteile, Gründe zu warten
- Synthesizer – findet den Mittelweg, integriert beide Perspektiven
Für N > 3 füge weitere Rollen hinzu, die produktive Spannung zu den bestehenden erzeugen.
3. Chat-Datei initialisieren
Erstelle active/chatroom/chat.json mit der anfänglichen Struktur:
{
"problem": "{Problemstellung}",
"context": "{relevanter Kontext, Code, Einschränkungen}",
"agents": [
{"name": "Agent A", "role": "{Rolle}", "framing": "{Rollenbeschreibung}"},
{"name": "Agent B", "role": "{Rolle}", "framing": "{Rollenbeschreibung}"},
{"name": "Agent C", "role": "{Rolle}", "framing": "{Rollenbeschreibung}"}
],
"rounds": [],
"final_output": null
}
4. Debattenrunden ausführen
Für jede Runde (1 bis R) werden alle N Agenten parallel gestartet. Jeder Agent liest den gesamten Chat-Verlauf und trägt bei.
Agenten-Spawn-Konfiguration:
subagent_type: "general-purpose"model: "sonnet"(Standard – Benutzer kann auf opus überschreiben für tiefere Argumentation)mode: "bypassPermissions"
Rundenablauf:
Runde 1 – Eröffnungspositionen: Jeder Agent gibt seine erste Einschätzung zum Problem ab.
Agenten-Prompt:
Du bist {Rolle}: {Rollenbeschreibung}
PROBLEM:
{Problem}
KONTEXT:
{Kontext}
Dies ist Runde 1 einer Multi-Agenten-Debatte. Gib deine anfängliche Position zu diesem Problem an. Sei spezifisch und konkret – schlage tatsächliche Lösungen vor, keine vagen Prinzipien. Beziehe eine klare Position.
Andere Agenten werden deine Position in späteren Runden in Frage stellen, also mache deine Argumentation explizit.
Antworte in diesem Format:
POSITION: [Dein Ein-Satz-Standpunkt]
BEGRÜNDUNG: [Dein detailliertes Argument – 3-5 Kernpunkte]
VORSCHLAG: [Deine konkrete Empfehlung]
BEDENKEN: [Was mit deinem Ansatz schiefgehen könnte]
Schreibe deine Antwort direkt – schreibe nicht in Dateien.
Runden 2+ – Debatte: Jeder Agent liest alle vorherigen Antworten und antwortet.
Agenten-Prompt:
Du bist {Rolle}: {Rollenbeschreibung}
PROBLEM:
{Problem}
VORHERIGE DISKUSSION:
{alle vorherigen Runden-Einträge, formatiert als „Agent X (Rolle): Antwort“}
Dies ist Runde {N} einer Multi-Agenten-Debatte. Lies die vorherige Diskussion sorgfältig.
Deine Aufgabe:
1. Reagiere auf das stärkste Gegenargument zu deiner Position
2. Identifiziere, wo du mit anderen Agenten ÜBEREINSTIMMST (gib gute Punkte zu)
3. Identifiziere, wo du immer noch ANDERER MEINUNG bist und warum
4. Verfeinere deinen Vorschlag basierend auf der bisherigen Diskussion
Wiederhole NICHT einfach deine vorherige Position. Setze dich mit dem auseinander, was andere gesagt haben. Ändere deine Meinung, wenn sie ein besseres Argument hatten.
Antworte in diesem Format:
ÜBEREINSTIMMUNGEN: [Was andere Agenten richtig gemacht haben]
MEINUNGSVERSCHIEDENHEITEN: [Wo du dich noch unterscheidest und warum]
VERFEINERTER VORSCHLAG: [Deine aktualisierte Empfehlung]
VERTRAUEN: [1-10, wie sicher du dir in deiner verfeinerten Position bist]
Schreibe deine Antwort direkt – schreibe nicht in Dateien.
Nach jeder Runde:
- Sammle alle Agentenantworten
- Hänge sie an das
rounds-Array inchat.jsonan:
{
"round": 1,
"entries": [
{"agent": "Agent A", "role": "Architekt", "response": "..."},
{"agent": "Agent B", "role": "Pragmatiker", "response": "..."},
{"agent": "Agent C", "role": "Kritiker", "response": "..."}
]
}
- Prüfe auf Konvergenz: Wenn alle Agenten zustimmen (Vertrauen 8+, Vorschläge deckungsgleich), brich frühzeitig ab – keine weiteren Runden nötig.
5. Endgültige Ausgabe synthetisieren
Nach der letzten Runde liest du (der Orchestrator) die vollständige Debatte und erstellst eine Synthese. Starte KEINEN weiteren Agenten dafür – du machst es selbst.
Analysiere:
- Wo sind Agenten konvergiert? – Dies sind Schlussfolgerungen mit hohem Vertrauen
- Wo sind sie gespalten geblieben? – Dies sind echte Abwägungen, die der Benutzer entscheiden muss
- Welche Bedenken wurden geäußert, aber nicht gelöst? – Dies sind zu überwachende Risiken
- Hat ein Agent seine Meinung geändert? – Meinungswechsel sind starke Signale
6. Abschlussbericht schreiben
Aktualisiere active/chatroom/chat.json mit dem final_output und schreibe eine für Menschen lesbare Zusammenfassung in active/chatroom/chatroom_report.md:
# Agenten-Chatroom-Bericht
**Problem**: {Problem}
**Agenten**: {N} | **Runden**: {R}
**Datum**: {Datum}
## Teilnehmer
| Agent | Rolle | Abschließendes Vertrauen |
|-------|-------|--------------------------|
| Agent A | {Rolle} | {Vertrauen}/10 |
| Agent B | {Rolle} | {Vertrauen}/10 |
| Agent C | {Rolle} | {Vertrauen}/10 |
## Konsens
{Worüber sich alle Agenten in der letzten Runde geeinigt haben}
## Wichtigste Meinungsverschiedenheiten
{Wo Agenten gespalten blieben – beide Seiten fair darstellen}
## Empfohlene Maßnahme
{Deine Synthese als Orchestrator – der beste Weg unter Berücksichtigung aller Perspektiven}
## Ungelöste Risiken
{Bedenken, die während der Debatte geäußert, aber nicht vollständig adressiert wurden}
## Höhepunkte der Debatte
{Die interessantesten Austausche – wo Meinungen geändert oder starke Gegenargumente vorgebracht wurden}
## Vollständiges Transkript
{Link zu chat.json oder die wichtigsten Austausche inline}
7. Ergebnisse liefern
Präsentiere dem Benutzer:
- Ein-Absatz-Synthese des Debattenergebnisses
- Die empfohlene Maßnahme (deine Entscheidung als Orchestrator, informiert durch die Debatte)
- Die schärfste Meinungsverschiedenheit (wo das Urteil des Benutzers gefragt ist)
- Dateipfade zum Bericht und zu
chat.json
Konfiguration
| Parameter | Standard | Beschreibung |
|---|---|---|
| N | 3 | Anzahl der Agenten im Chatroom |
| R | 3 | Anzahl der Debattenrunden |
| model | sonnet | Modell für jeden Agenten |
| roles | auto | Agentenrollen (automatisch zugewiesen oder benutzerdefiniert) |
Benutzer kann überschreiben: „5 opus Agenten für 4 Runden debattieren lassen“ oder „Debatte zwischen einem Architekten und einem Junior-Entwickler“.
Kostenüberlegungen
- 3 sonnet-Agenten x 3 Runden = 9 Agentenaufrufe (~0,30-0,50 €)
- 3 opus-Agenten x 3 Runden = 9 Agentenaufrufe (~3-5 €)
- 5 Agenten x 5 Runden = 25 Aufrufe – wird teuer mit opus
- Standardmäßig sonnet verwenden. Opus nur, wenn der Benutzer es ausdrücklich anfordert oder das Problem tiefgehende technische Argumentation erfordert.
- Frühe Konvergenz spart Kosten – anhalten, wenn sich die Agenten vor Abschluss aller Runden einigen.
Randfälle
- N < 2: Den Benutzer warnen – ein Chatroom benötigt mindestens 2 Agenten. Minimum 2.
- Agenten sind sich sofort alle einig: Nach Runde 1 anhalten. Einstimmigen Konsens melden. Dies ist ein gültiges (und günstiges) Ergebnis.
- Agenten blockieren sich gegenseitig: Nach R Runden ohne Konvergenz die Blockade ehrlich melden. Die Erkenntnis ist, dass dies eine echte Ermessensentscheidung ohne dominante Antwort ist.
- Agent schweift ab: Diese Antwort von der Synthese ausschließen und die effektive Anzahl der Agenten notieren.
- Bestehende Chatroom-Dateien:
active/chatroom/auf vorhandene Dateien prüfen. Ohne Nachfrage überschreiben (dies sind flüchtige Debattenartefakte, keine persistenten Daten). - Benutzer gibt benutzerdefinierte Rollen vor: Diese genau so verwenden, wie sie angegeben wurden. Keine zusätzlichen Rollen hinzufügen, es sei denn, der Benutzer fragt danach.
Ausgabedateien
| Datei | Beschreibung |
|---|---|
active/chatroom/chat.json | Vollständiges strukturiertes Debatten-Transkript |
active/chatroom/chatroom_report.md | Für Menschen lesbarer Synthesebericht |
Vorherige Berichte werden überschrieben – dies sind flüchtige Debattenwerkzeuge, keine Archive.