← Back to selected work

The Small Council

View on GitHub
In progress

Local multi-agent platform that quizzes me on my own notes through Telegram, turning a personal knowledge vault into active recall practice. FSRS scheduling, LangGraph orchestration, and a Postgres plus Qdrant hybrid storage layer.

PythonLangGraphMulti-AgentPostgres
The problem

The goal is a self-hosted council of specialized AI agents, each owning a domain of my life, reachable through one Telegram channel, built platform-first so shared infrastructure such as knowledge ingestion, the LLM gateway, messaging, scheduling, and the dashboard supports new agents without re-architecture each time.

The approach

The system is a modular monolith rather than one microservice per agent. A shared core package holds database models, the LLM gateway, the Telegram messaging layer, and ingestion. Each agent gets its own package, plus a scheduler worker, a FastAPI backend, and a Next.js dashboard. Postgres holds a shared core schema plus one schema per agent, and Qdrant holds the vector collections. This structure was deliberately chosen over a microservice split, since that split tends to only pay off well past the scale of a solo project. The one agent built and tested so far, Grand Maester Aemon, parses learned notes from my personal knowledge vault, generates a cached question set per note, quizzes me over Telegram on a schedule, grades free-text answers against a rubric for partial credit, teaches through grounded remediation chat when I get something wrong, and tracks mastery per note, area, and tag with an assistance-aware scoring model that climbs from foundational to advanced per area.

Results
Phase 3
Grand Maester Aemon, built and tested
1 of 4
planned council agents shipped
Complete
Master of Coin financial model and hosting decisions
Stack
PythonFastAPINext.jsAPSchedulerPostgreSQLQdrantTelegramFirefly IIIOracle Cloud
👋 Hi, I'm a digital version of Lasantha. Ask me about my work.