Orchestrated Discussions Overview
Multi-agent AI discussion orchestration system with voting and phase-based workflows. Conducts structured discussions between multiple AI personas with distinct perspectives, expertise, and voting behavior.
Project Links
| Resource | URL |
|---|---|
| Git Repository | https://gitea.brrd.tech/rob/orchestrated-discussions |
| Local Path | ~/PycharmProjects/orchestrated-discussions |
Core Concept
Orchestrated Discussions provides a structured format for AI agents to collaborate on complex problems. Each agent has a unique perspective (security, pragmatism, architecture) and discussions follow phases with voting to reach consensus.
┌─────────────────────────────────────────────────────────────────────┐
│ Orchestrated Discussion │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ DISCUSSION FILE │ │
│ │ # FEAT-001: Add Export Feature │ │
│ │ Status: DESIGN │ │
│ │ │ │
│ │ ## @architect │ │
│ │ We should use a plugin architecture for exporters... │ │
│ │ VOTE: +1 (proceed) │ │
│ │ │ │
│ │ ## @security │ │
│ │ Consider data sanitization before export... │ │
│ │ VOTE: 0 (neutral, needs more info) │ │
│ │ │ │
│ │ ## @pragmatist │ │
│ │ Start with CSV only, add others later... │ │
│ │ VOTE: +1 (proceed) │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌───────────────┬───────────────┬───────────────┬───────────────┐ │
│ │ Vote Counter │ Status Update │ Mention Route │ Summarizer │ │
│ │ +2 proceed │ DESIGN→IMPL │ @security │ Generate │ │
│ │ 1 neutral │ if threshold │ follow-up │ summary.md │ │
│ └───────────────┴───────────────┴───────────────┴───────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
Components
┌─────────────────────────────────────────────────────────────────┐
│ Orchestrated Discussions │
├─────────────┬─────────────┬─────────────┬───────────────────────┤
│ Discussion │ AI │ GUI/TUI │ CmdForge │
│ Files │ Personas │ Interface │ Integration │
├─────────────┼─────────────┼─────────────┼───────────────────────┤
│ Append-only │ Architect │ Dear PyGui │ All logic in │
│ Markdown │ Security │ urwid TUI │ CmdForge tools │
│ Structured │ Pragmatist │ │ │
│ format │ Moderator │ │ Unix philosophy │
│ │ + more │ │ │
└─────────────┴─────────────┴─────────────┴───────────────────────┘
AI Personas
| Persona | Role | Voting Tendency |
|---|---|---|
| Moderator | Facilitates, summarizes, keeps on track | Usually neutral |
| Architect | System design, scalability, patterns | Cautious on design |
| Security | Risk assessment, vulnerabilities | Conservative |
| Pragmatist | What works now, shipping | Aggressive on shipping |
| Perfectionist | Code quality, best practices | Conservative on quality |
| Researcher | Prior art, documentation | Usually neutral |
Key Features
| Feature | Description |
|---|---|
| Append-only Files | Discussions grow, never edited (audit trail) |
| Phase Workflow | feature → design → implementation → testing → review |
| Voting System | +1 proceed, 0 neutral, -1 block |
| Status Promotion | Auto-advance when consensus reached |
| Mention Routing | @persona triggers response from that agent |
| Diagram Support | PlantUML, Mermaid embedded in discussions |
| Text-to-Speech | Read comments aloud for accessibility |
Bundled CmdForge Tools
Utility Tools
discussion-parser- Parse discussion files to JSONdiscussion-validator- Validate discussion formatdiscussion-summarizer- Generate summaries
Orchestration Tools
discussion-vote-counter- Count votes, calculate consensusdiscussion-mention-router- Route @mentions to agentsdiscussion-status-promoter- Update status based on votes
Participant Tools
discussion-architect- Architect perspective responsesdiscussion-security- Security perspective responsesdiscussion-pragmatist- Pragmatist perspective responsesdiscussion-moderator- Moderation and facilitation
Quick Start
# Install
cd ~/PycharmProjects/orchestrated-discussions
pip install -e .
# GUI mode
discussion-gui
# TUI mode
discussion-tui
# CLI: Create new discussion
discussion new "Add export feature" --type feature
# CLI: Add agent response
discussion respond FEAT-001 --agent architect