AI-powered continuity assistant for screenwriters working on complex, multi-era narratives.
A friend writes screenplays — complex thrillers with interleaved timelines, dozens of characters, and continuity traps everywhere. He was tracking everything in spreadsheets. I figured a graph database + LLM could do better: parse raw scene text, build a knowledge graph, and let the writer query it in natural language.
Drop raw text in, Felix handles the rest:
The project started with a hard constraint: everything had to run locally on a Mac M4, with Qwen2.5-7B via LM Studio. Entity extraction held up thanks to heavy guardrails — narrative reasoning on a 7B did not. Rather than keep fighting the hardware, I pivoted to the Mistral API (mistral-small), keeping the small-model-plus- targeted-tools philosophy. The guardrails survived the pivot: they turned out to be the real product.
An LLM writing into a graph will invent entities, relationships, plot twists. The whole job is stopping it:
Graph modeling for narrative data is surprisingly tricky — when does a character mention become a node rather than a property? How do you merge entities across scenes written months apart?
A free-form relation vocabulary always drifts — validating it hard at write time killed an entire class of bugs at once. And you can't steer an LLM agent without an eval harness: here, every fix starts with a failing eval.
Actively developed, used on a real screenplay. The engine is generalizing: "screenplay" is just one profile among others (a "construction site" profile already exists) — Felix is becoming a graph-modeling copilot whose domain is plugged in by configuration.