Skip to content

jev-got

Game of Thrones roleplay where an LLM writes each scene and Jev labels location, beat, mood, danger and whether prose stayed in fiction.

Appprototype

Overview

jev-got is a Game of Thrones roleplay in which you play Jon Snow. Each turn a narrator model (GPT-5.6 Luna via OpenRouter) writes the next scene, then Jev reads it and answers five questions in parallel: where Jon now stands (a location ID from a closed set), what kind of scene beat it was, its mood, how much danger he is in, and whether the prose stayed inside the fiction. Jev never writes anything.

The location header, soundtrack, background artwork and the next turn's prompt are all functions of those answers. If the in-fiction probability is below 0.5, the scene is regenerated once. Answers are stored so they can be re-resolved later without asking Jev again. Stories are kept in Redis, and it needs TypeSafe and OpenRouter keys.

What the decision model decides

TypeQuestionAnswers
ChoiceWhere does Jon now stand?—
ChoiceWhat kind of scene beat and mood was this?—
ScoreHow much danger is Jon in?—
Yes / noDid the prose stay inside the fiction?—

How it works

  1. Player submits an action
  2. Narrator LLM writes the scene
  3. Jev answers five questions in parallel; regenerate once if out of fiction
  4. Update header, music, backdrop and next prompt from the answers

Strengths

  • Game state derived from typed labels, not parsed prose
  • Built-in check that the narrator stays in character
  • Stored answers can be re-resolved without new calls

Caveats

  • Needs Redis plus two API keys
  • Fan demo using a commercial franchise setting

Getting started

Start Redis with Docker, `pnpm install`, copy .env.example to .env.local with TYPESAFE_API_KEY, OPENROUTER_API_KEY and REDIS_URL, then `pnpm dev`.

At a glance

Type
App
Status
prototype
Language
TypeScript
Runtime
Next.js app with Redis
Has code
yes

Use cases and integrations

How curated lists describe it

Frequently asked questions

What does Jev decide?

Location, scene beat, mood, danger level and whether the scene stayed in fiction.

Who writes the story?

A narrator LLM; Jev only labels scenes.

What happens if the narrator breaks character?

If the in-fiction probability is under 0.5 the scene is regenerated once.

Related projects

  • Video summarizer that ties every line to its second; Jev checks each summary sentence against what was said, with numbers checked in code.

    ProjectbetaPython
  • Claude Code PreToolUse quality gate where Jev scores drafts (such as SVG illustrations) before they are written and blocks substandard work.

    ProjectprototypeJavaScript
  • Companion code comparing Google ADK and Microsoft Agent Framework for structured video timelines, with Jev as a shared per-segment QC gate.

    LibraryprototypePython
  • Educational code where a local LLM voices a game NPC and Jev classifies player messages and checks every line for spoilers.

    ProjectprototypePython
  • Playful web app where twelve absurd characters vote on your idea via one Jev request with 36 independent questions.

    DemoprototypeTypeScript
  • 3D Magic 8 Ball you shake and release, where Jev chooses among the 20 classic answers and shows a probability for each.

    ServiceprototypeTypeScript