Skip to content

feat: roundtable discussion — multi-agent structured debate with consensus tracking#28826

Open
ParsifalC wants to merge 4 commits into
NousResearch:mainfrom
ParsifalC:feature/roundtable-discussion
Open

feat: roundtable discussion — multi-agent structured debate with consensus tracking#28826
ParsifalC wants to merge 4 commits into
NousResearch:mainfrom
ParsifalC:feature/roundtable-discussion

Conversation

@ParsifalC

@ParsifalC ParsifalC commented May 19, 2026

Copy link
Copy Markdown

Summary

Adds a complete roundtable discussion feature to Hermes Agent — enabling multiple AI agents to engage in structured, multi-round debates on any topic with automatic consensus tracking.

Why this matters

Hermes already supports task delegation and kanban-based workflows, but there's no way for multiple agents to discuss and debate a topic together. This fills that gap — agents can now have back-and-forth conversations, challenge each other's ideas, and converge on a shared conclusion.

What's included

Component File Description
7 tools tools/roundtable_tools.py init, speak, advance, summarize, status, read, end
SQLite DB hermes_cli/roundtable_db.py Discussions, speeches, participants, consensus tracking
Skill skills/software-development/roundtable/ SKILL.md + README
Tests tests/tools/, tests/hermes_cli/ 44 tests, all passing

Key design decisions

  • SQLite storage — persistent across sessions, no external dependencies
  • Coordinator role — a meta-participant that can open/close discussions without affecting round logic
  • Convergence scoring — automatic consensus/disagreement detection per round
  • Skill-driven — agents learn the roundtable protocol via SKILL.md, not hardcoded behavior

Testing

44 tests, all passing. Run with:

python -m pytest tests/tools/test_roundtable_tools.py tests/hermes_cli/test_roundtable_db.py -v

Closes #28825

Add Roundtable Discussion feature for structured multi-agent debates:

- hermes_cli/roundtable_db.py: SQLite data layer (5 tables: discussions,
  participants, speeches, findings, convergence_history) with WAL mode,
  auto-init, and full CRUD operations
- tools/roundtable_tools.py: 7 tools registered via tools/registry.py
  (init, speak, read, status, summarize, end, list)
- toolsets.py: Add 'roundtable' toolset with check_fn gating
- skills/software-development/roundtable/SKILL.md: Usage guide,
  coordinator flow, participant prompt templates, convergence docs
- tests/hermes_cli/test_roundtable_db.py: 28 unit tests for DB layer
- tests/tools/test_roundtable_tools.py: 16 unit tests for tool handlers

Architecture: Independent SQLite DB (~/.hermes/roundtable.db), coordinator-
driven communication via delegate_task, LLM-based convergence detection.
Zero invasive changes to existing kanban or agent code.
@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have comp/tools Tool registry, model_tools, toolsets comp/agent Core agent loop, run_agent.py, prompt builder tool/delegate Subagent delegation labels May 19, 2026
@ParsifalC ParsifalC changed the title feat: roundtable discussion — multi-agent topic debate feat: roundtable discussion — multi-agent structured debate with consensus tracking May 20, 2026
@ParsifalC

Copy link
Copy Markdown
Author

Hi team! Just updated the PR description with a clearer summary. This PR adds a complete roundtable discussion feature (7 tools + SQLite storage + 44 tests). Would love to get some eyes on it when you have a chance. Happy to address any feedback! 🙏

ParsifalC added 2 commits May 21, 2026 08:39
- Add task_checkpoints table to kanban DB schema
- Add Checkpoint dataclass and save/get_latest/get_by_step/clear functions
- Add kanban_checkpoint tool (save progress after each step)
- Add kanban_get_checkpoint tool (retrieve checkpoints on retry)
- Inject checkpoints into build_worker_context (retrying workers see prior progress)
- Auto-clear checkpoints on successful task completion
- 82/82 existing kanban_db tests pass

Part of OPC Phase 1 stability fixes (Worker fault tolerance)
Root cause: roundtable tools were not properly available to delegate_task
subagents. Refactored roundtable_tools.py (+249/-622) to fix tool
registration and calling behavior in subagent context.

Task: t_46ec11f8
Verified: Boss confirmed fix works end-to-end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/agent Core agent loop, run_agent.py, prompt builder comp/tools Tool registry, model_tools, toolsets P3 Low — cosmetic, nice to have tool/delegate Subagent delegation type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: OpenAI-compatible API does not honour tools

2 participants