← Back to Work
ProductActive Development

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

Platform

C#/.NET 8 desktop app (Avalonia, cross-platform), with an embedded ASP.NET Core/Kestrel server for players

Multi-Agent Split

Three purpose-sized local LLMs via LLamaSharp — controller, narrator, memory — instead of one large model doing everything

Real-Time Delivery

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