ASS (Argumentative System Service) is a command-line application that orchestrates structured debates between four distinct AI personalities. Each personality has unique traits, perspectives, and argumentation styles, creating dynamic and insightful discussions on any topic you propose.
๐ค AI-Generated Project: This entire project was generated by AI from an original idea by Diogo. The concept, architecture, code, and documentation were all created through an AI-assisted development process, demonstrating the potential of human-AI collaboration in software creation.
Perfect for:
- ๐ง Exploring complex topics from multiple perspectives
- ๐ Educational discussions and critical thinking exercises
- ๐ค Decision-making by weighing different viewpoints
- ๐ช Entertainment - watch AIs argue about anything!
- ๐ฌ Research into AI personality modeling and multi-agent systems
Personality | Provider | Traits | Perspective |
---|---|---|---|
๐ Claude Optimist | Claude | Creative, big-picture, opportunity-focused | Sees possibilities everywhere |
๐ Claude Skeptic | Claude | Analytical, detail-oriented, risk-aware | Points out flaws and limitations |
๐ GPT Visionary | OpenAI | Forward-thinking, innovative, solution-oriented | Champions breakthrough ideas |
โ๏ธ GPT Critic | OpenAI | Methodical, cautious, problem-focused | Highlights potential issues |
After three rounds of heated debate, an impartial Judge synthesizes all arguments into a balanced final decision.
Click to see the debate highlights
Claude Optimist: "The potential benefits are extraordinary! AGI could solve climate change, cure diseases, and unlock technologies we can't even imagine. The faster we develop it responsibly, the sooner we can address humanity's greatest challenges!"
GPT Critic: "This rush toward AGI poses existential risks we don't fully understand. Without proper safety frameworks and international oversight, we could create systems that operate beyond human control or comprehension."
GPT Visionary: "What if we're thinking too small? AGI represents the next evolutionary leap for intelligence itself. With proper safeguards, we could create benevolent systems that enhance human potential rather than replace it."
Claude Skeptic: "The alignment problem remains unsolved. How can we ensure AGI systems will pursue human values when we haven't even agreed on what those values are? The technical challenges of safe AGI are being dangerously underestimated."
Judge's Decision: "A measured approach prioritizing safety research alongside capability development, with mandatory international cooperation frameworks..."
Click to see this heated culinary debate
Claude Optimist: "Pineapple on pizza represents culinary creativity at its finest! The sweet-savory combination creates delightful flavor contrasts, and food should be about joy and experimentation, not rigid rules!"
GPT Critic: "This combination violates fundamental principles of Italian cuisine. The high water content of pineapple creates soggy crusts, while the sweetness overwhelms the carefully balanced acidity of traditional tomato sauce."
GPT Visionary: "Hawaiian pizza opened the door to global fusion cuisine! Without this bold experiment, we might never have discovered other amazing combinations like BBQ chicken or breakfast pizzas."
Claude Skeptic: "Traditional pizza recipes evolved over centuries for good reasons. Adding random fruits doesn't constitute innovationโit's culinary chaos that diminishes the integrity of a perfect food."
Judge's Decision: "While respecting traditional Italian cuisine, food evolution through cultural fusion has created legitimate new traditions. Pineapple pizza, though controversial, represents valid culinary diversity..."
- Python 3.9+
- UV package manager (install here)
- API Keys:
- OpenAI API key
- Anthropic Claude API key
-
Clone the repository:
git clone https://github.com/DiogoNeves/ass.git cd ass
-
Install dependencies:
uv sync
-
Set up your API keys: Create a
.env
file:CLAUDE_API_KEY=your_claude_api_key_here OPENAI_API_KEY=your_openai_api_key_here
Interactive Mode - Ask any question:
uv run python debate_app.py
Demo Mode - See a pre-configured debate:
uv run python demo.py
graph TD
A[Your Question] --> B[Round 1: Opening Arguments]
B --> C[Round 2: Rebuttals & Counter-arguments]
C --> D[Round 3: Final Positions]
D --> E[Judge's Final Decision]
style A fill:#e1f5fe
style E fill:#f3e5f5
- ๐ฏ Question Input - You provide any question or topic
- ๐ฅ Three Rounds of Debate - Each personality argues their position
- ๐ Context Building - Each round builds on previous arguments
- โ๏ธ Final Judgment - An impartial judge synthesizes all viewpoints
The application uses a modular Personality System that makes it easy to create new AI debaters:
# Create a new personality
new_personality = create_personality(PersonalityConfig(
name="My Custom Debater",
model_provider="claude", # or "openai"
model_name="claude-sonnet-4-20250514",
system_prompt="Your personality description...",
traits={"creativity": 8, "skepticism": 6, "humor": 9}
))
Key Components:
PersonalityConfig
- Define model, prompts, and personality traitsLLMPersonality
- Abstract base class for all personalitiescreate_personality()
- Factory function for easy personality creation- Rich CLI interface with beautiful formatting and animations
- "Is free will an illusion?"
- "Should we prioritize individual freedom or collective security?"
- "Is artificial consciousness possible?"
- "Should social media be regulated like tobacco?"
- "Is remote work better for society than office work?"
- "Should we colonize Mars or fix Earth first?"
- "Which is the superior breakfast: cereal or toast?"
- "Should we bring back extinct species through genetic engineering?"
- "Is a hot dog a sandwich?"
- "Should voting be mandatory in democracies?"
- "Is universal basic income feasible?"
- "Should we abolish daylight saving time?"
- ๐ญ Rich CLI Interface - Colored panels, animations, and beautiful formatting
- ๐ Turn-based Debates - Structured rounds with context accumulation
- ๐ค Multi-Model Support - Leverages both Claude and OpenAI APIs
- ๐ง Extensible Design - Easy to add new personalities and traits
- โก Real-time Feedback - Progress indicators and thinking animations
- ๐ Context Awareness - Each debater builds on previous arguments
Extend the debate by creating personalities with unique traits:
personalities["economist"] = create_personality(PersonalityConfig(
name="Dr. Economy",
model_provider="openai",
model_name="gpt-4.1-2025-04-14",
system_prompt="You are a pragmatic economist focused on costs, benefits, and market dynamics...",
traits={"analytical": 9, "pragmatic": 8, "data_focused": 10}
))
Anthropic Claude:
claude-sonnet-4-20250514
(Latest & Recommended - 2025)claude-3-5-sonnet-20241022
claude-3-haiku-20240307
- Other Claude models
OpenAI:
gpt-4.1-2025-04-14
(Latest & Recommended - 2025)gpt-4
gpt-4-turbo
gpt-3.5-turbo
ass/
โโโ ๐ README.md # This file
โโโ โ๏ธ pyproject.toml # UV project configuration
โโโ ๐ uv.lock # Dependency lock file
โโโ ๐ .env # API keys (create this)
โโโ ๐ .venv/ # Virtual environment (auto-created)
โโโ ๐ง personality.py # Personality system and API integrations
โโโ ๐ญ debate_app.py # Main interactive application
โโโ ๐ฌ demo.py # Demo runner with sample debate
We welcome contributions! Here are some ideas:
- ๐ญ New Personality Types - Add specialists (scientist, artist, philosopher)
- ๐ Additional LLM Providers - Support for more AI models
- ๐ช Enhanced Debate Formats - Tournament brackets, team debates
- ๐จ UI Improvements - Better visualizations and formatting
- ๐ Analytics - Argument analysis and debate statistics
# Clone and setup
git clone https://github.com/DiogoNeves/ass.git
cd ass
uv sync
# Run tests (if you add them)
uv run pytest
# Format code
uv run black .
๐ API Key Issues:
- Ensure your
.env
file is in the project root - Verify API keys are valid and have sufficient credits
- Check that keys don't have extra spaces or quotes
๐ฆ Import Errors:
- Run
uv sync
to install all dependencies - Ensure you're using Python 3.9+
- Use
uv run python script.py
instead ofpython script.py
๐ UV Issues:
- Install UV: Installation Guide
- Update UV:
uv self update
MIT License - see LICENSE file for details.
- Rich - Beautiful terminal formatting
- OpenAI - GPT models and API
- Anthropic - Claude models and API
- UV - Fast Python package manager
๐ญ Ready to watch AIs debate? Start a discussion and see what happens! ๐ญ
โญ Star this repo โข ๐ Report Bug โข ๐ก Request Feature