NovaGM
A local, zero-cloud AI game master for tabletop RPGs — three small models instead of one big one.
A desktop app that runs a full tabletop RPG session — narration, NPCs, world state, dice — entirely on local hardware, with players joining over LAN from any phone or laptop and nothing to install on their end.
// Architecture
C#/.NET 8 desktop app (Avalonia, cross-platform), with an embedded ASP.NET Core/Kestrel server for players
Three purpose-sized local LLMs via LLamaSharp — controller, narrator, memory — instead of one large model doing everything
Narration streamed to players via Server-Sent Events; world memory in SQLite with vector retrieval
// What's Actually Hard Here
Splitting game-master responsibilities across three small models, rather than one large one, is a real architectural trade-off that keeps latency and context-window usage sane on consumer hardware. A stateless-executor redesign fixed a genuine context-overflow bug by having the orchestrator resend distilled continuity each turn instead of letting raw history accumulate. Said plainly: this is in active development, not shipped. Core mechanics work; narration quality is still being validated against production-size models.
Internal system — no public deployment