LLM Council is a local web application that queries multiple large language models simultaneously and synthesizes their responses through a structured deliberation process.
The tool addresses the problem of choosing between different LLM providers by eliminating that choice entirely. Instead of picking a single model, users submit queries to a council of LLMs running in parallel. The workflow unfolds in three stages: first, all models generate independent responses to the user's question; second, each model reviews and ranks the others' answers with anonymized identities to prevent bias; third, a designated Chairman model synthesizes all responses and rankings into a final consolidated answer. Users can inspect individual model outputs in a tabbed interface before seeing the chairman's synthesis.
The project suits developers and researchers who want to evaluate multiple LLM providers side by side or who value diverse perspectives on complex questions. It works best for exploratory use cases where seeing multiple viewpoints and their cross-evaluations provides value, rather than for production systems requiring single-model consistency. The tool uses OpenRouter as its LLM provider, so access depends on having an OpenRouter account with sufficient credits. The tech stack is straightforward: FastAPI and async httpx on the backend, React with Vite on the frontend, and JSON file storage for conversations.
The project was built as an experimental weekend exploration rather than a production system. The creator explicitly states it was vibe coded for personal use and is provided as-is without ongoing support or maintenance plans. The codebase is intentionally left in an exploratory state, with the expectation that users will modify it themselves or ask LLMs to adapt it to their needs rather than relying on upstream improvements.