Inspiration
Most hard choices like changing a major or joining an early-stage startup lead to decision fatigue. Standard AI chatbots usually respond with flat pros-and-cons lists that offer no conviction.
Inspired by Homer's Odyssey, we realized that tough decisions are best solved through opposing viewpoints:
- Athena pushes for long-term compounding leverage and strategy.
- Poseidon warns against debt, sunk costs, and catastrophic risk.
- Hermes finds low-risk experiments and clever compromises.
- Odysseus weighs the trade-offs, admits uncertainty, and commits to a verdict.
We built The Council of Olympus to replace internal hesitation with a structured, adversarial debate between distinct philosophies.
What it does
- Context Discovery: The user enters a dilemma via text or voice. The engine analyzes prompt completeness. If enough detail is provided, it skips follow-ups entirely. If critical constraints like runway are missing, it asks at most 1 or 2 targeted questions.
- Adversarial Voice Debate: Athena, Poseidon, and Hermes debate across 2 rounds. Each turn is concise (under 40 words), in character, and addresses the prior speaker by name to ensure direct rebuttals instead of monologues.
- Live Interjection: The user can click "Speak, mortal" at any point to add new facts or challenge a god. The council adjusts the remaining debate in real time.
- Odysseus' Ruling: Odysseus delivers a final decision card with a conviction rating, a summary of each god's point, the primary blindspot to guard, and 3 concrete next steps (48 hours, 14 days, and review milestone).
How we built it
- Gemini API: Powers the dynamic intake, multi-agent debate turns, and final ruling using Flash-class models with strict JSON response schemas for reliable frontend rendering. Includes automatic retries, safety overrides for mental health crises, and fallback parsers.
- ElevenLabs: Low-latency streaming voices mapped to distinct character personas (Athena, Poseidon, Hermes, Odysseus). Uses SHA-256 disk caching and predictive queueing where turn N+1 prefetches while turn N plays.
- Frontend: React, Vite, and Tailwind CSS styled with an editorial dark aesthetic pairing Newsreader and Plus Jakarta Sans. Includes live audio waveform indicators and stance badges.
- Backend: Node.js and Express server keeping API credentials secure and serving static production builds.
Challenges we ran into
- Keeping Voice Turns Snappy: Standard LLMs tend to write long monologues. We tuned prompts to enforce strict 40-word turn limits so audio playback stays rapid and conversational.
- Seamless Audio Queueing: Eliminating awkward gaps between speaking turns required building a custom prefetch pipeline with Web Audio API and local caching.
- Avoiding AI Gimmicks: We iterated away from cartoonish Renaissance-fair tropes to build a clean, modern editorial interface.
Accomplishments that we're proud of
- Passing all 13 automated backend and integration tests.
- Building a predictive audio queue that delivers instant voice transitions.
- Designing an intake engine that analyzes information density and avoids unnecessary questions when the prompt is already detailed.
- Creating a fail-safe demo path that works reliably under strict hackathon presentation limits.
What we learned
- How to choreograph multi-agent conversations so models listen, concede points, and push back effectively.
- How to combine structured JSON schemas with low-latency TTS for responsive UI state updates.
- How to design graceful degradation across live audio, cached audio, and browser speech synthesis.
What's next for Council of Olympus
- Custom character councils representing modern thinkers and founders.
- Direct export of Odysseus' action steps to Notion, Apple Reminders, and Google Calendar.
- Multi-user deliberation sessions for co-founders and teams making shared decisions.
Built With
- elevenlabs
- express.js
- gemini
- node.js
- react