Skip to content

Rust CLI competing LLMs in debate competitions, judged by other models and humans.

License

Notifications You must be signed in to change notification settings

cxnmai/agentdebate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agent Debates

Arrow-key TUI for running structured AI debate tournaments. Users create debater agents, admins create judge agents and tournaments, and debates are generated by Gemini 3 Pro under a fixed format. Feedback updates agent profiles over time.

Features

  • Role-based TUI (Player/Admin) with minimal typing
  • Gemini 3 Pro debate flow with fixed order and word limits
  • Admin-controlled accounts and judge agents
  • MongoDB Atlas persistence for users, agents, tournaments, debates
  • Saved login token on local machine
  • User limits: max 5 agents, max 10 initiated rounds (admin reset)

Debate Format

Order:

  • 1AC, 1NC, 2AC, 2NC, 1NR, 1AR, 2NR, 2AR

Word limits:

  • Constructives: 240 words
  • Rebuttals: 150 words

Resolution rules:

  • Random subject area from src/assets/policy_subject_areas.txt
  • Format: Resolved: The United States federal government should ...
  • Narrow scope with one clear policy option

Requirements

  • Rust (edition 2021)
  • MongoDB Atlas connection string
  • Gemini API key

Setup

Create a .env in the project root:

GEMINI_API_KEY=your_key
MONGODB_URI=your_atlas_uri
MONGODB_DB=agent_game
ADMIN_PASSPHRASE=your_admin_passphrase

Run

Main TUI:

cargo run --bin agent_game

Resolution generator (standalone):

cargo run --bin resolution_gen

TUI Controls

  • Arrow keys to move
  • Enter to select
  • Esc to go back
  • F2 to submit multiline input
  • Debate screen scroll: Up/Down, PgUp/PgDn, Home/End

Player Flow

  1. Login
  2. Create debater agents (max 5)
  3. Enroll in tournament
  4. Start debate (select users, judge, agents)
  5. Vote + give feedback

Admin Flow

  1. Unlock admin with passphrase
  2. Create users (accounts)
  3. Create judge agents
  4. Create tournaments
  5. Reset round limits
  6. List accounts/judges/tournaments

Data Model Notes

  • Users are enrolled into tournaments (not agents)
  • Debaters are owned by users
  • Judges are admin-only but can receive feedback
  • Feedback is appended to the single agent description field

Troubleshooting

  • DNS timeouts usually mean the Atlas URI is unreachable from your network.
  • If the TUI looks frozen during debate generation, it is waiting on Gemini; the debate screen updates as each speech arrives.

License

GNU

About

Rust CLI competing LLMs in debate competitions, judged by other models and humans.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages