A system for orchestrating formal debates between AI models.
npm installnpm run buildnpm testnpm run devThe debate system can be configured using a .debaterc file in your project directory or home directory. See .debaterc.example for a template.
- timeLimit (number, optional): Maximum seconds per response. Default: 120
- wordLimit (number, optional): Maximum words per statement. Default: 500
- strictMode (boolean): Validate on-topic responses. Default: false
- showPreparation (boolean): Display preparation phase output. Default: true
- numCrossExamQuestions (number): Number of cross-examination questions per side. Default: 3
- preparationTime (number, optional): Seconds allocated for the preparation phase where AI models research and prepare arguments. Default: 180
The ui object allows you to customize the visual presentation and formatting:
- enableRichFormatting (boolean): Enable/disable rich text features (markdown-like formatting, emphasis, lists). Default: true
- enableAnimations (boolean): Enable/disable animations (progress bars, status indicators). Default: true (false in CI environments)
- enableColors (boolean): Enable/disable ANSI colors. Default: auto-detected based on terminal capabilities
- colorScheme (string): Color scheme selection. Options:
"default","high-contrast","plain","custom". Default: "default" - terminalWidth (number, optional): Override auto-detected terminal width (40-500). Default: auto-detected
- showPreparationProgress (boolean): Show animated progress bars during preparation instead of raw output. Default: true
- enableHyperlinks (boolean): Enable clickable hyperlinks in supported terminals. Default: auto-detected
- customColorScheme (object, optional): Custom color scheme when
colorSchemeis set to"custom" - customFormattingRules (object, optional): Custom formatting rules to override defaults
{
"timeLimit": 60,
"wordLimit": 300,
"strictMode": false,
"showPreparation": true,
"numCrossExamQuestions": 3,
"preparationTime": 180,
"ui": {
"enableRichFormatting": true,
"enableAnimations": true,
"enableColors": true,
"colorScheme": "default",
"terminalWidth": null,
"showPreparationProgress": true,
"enableHyperlinks": true
}
}For accessibility, you can disable colors and animations:
{
"ui": {
"enableColors": false,
"enableAnimations": false,
"colorScheme": "plain"
}
}Or use high-contrast mode for better visibility:
{
"ui": {
"colorScheme": "high-contrast"
}
}Configuration values are loaded with the following precedence (highest to lowest):
- CLI options (command-line flags)
- Environment variables
- Configuration file (
.debaterc) - Default values
You can configure the debate system using environment variables:
DEBATE_TIME_LIMIT: Maximum seconds per responseDEBATE_WORD_LIMIT: Maximum words per statementDEBATE_STRICT_MODE: Enable strict mode (trueorfalse)DEBATE_SHOW_PREPARATION: Display preparation phase (trueorfalse)DEBATE_CROSS_EXAM_QUESTIONS: Number of cross-examination questionsDEBATE_PREPARATION_TIME: Preparation time in seconds
DEBATE_UI_ENABLE_RICH_FORMATTING: Enable rich text formatting (trueorfalse)DEBATE_UI_ENABLE_ANIMATIONS: Enable animations (trueorfalse)DEBATE_UI_ENABLE_COLORS: Enable colors (trueorfalse)DEBATE_UI_COLOR_SCHEME: Color scheme (default,high-contrast,plain, orcustom)DEBATE_UI_TERMINAL_WIDTH: Override terminal width (40-500)DEBATE_UI_SHOW_PREPARATION_PROGRESS: Show progress bars (trueorfalse)DEBATE_UI_ENABLE_HYPERLINKS: Enable hyperlinks (trueorfalse)
OPENAI_API_KEY: OpenAI API keyANTHROPIC_API_KEY: Anthropic API key