Children speak.Monsters listen.A teacher approved every word.
A language-learning game for primary-school children, about four to ten, with a teacher platform behind it. Teachers author short spoken quests with an AI co-author and approve every step; children play them in a world of clay monsters and answer by speaking, in English or Austrian German. The AI never reaches the child: every line was written or approved by a teacher, and every answer is judged by code against the answers the teacher accepted.
Repository private — I’ll screen-share any part of it.
Fig. 3.0 — One quest, start to finish: a teacher’s sentence becomes a world a child can talk to.
01Describe
02Co-author
03Brief
04Build & check
05Finale
06Play
01
02
03
04
05
06The student game · 1:48
01 / 06 · Describe
The teacher says what it’s for
One sentence: “I want to teach shapes to 2nd year primary class.” Reading level and subject are checked before anything is sent.
02 / 06 · Co-author
The co-author asks before it writes
Pictures or not? What should the children be able to do by the end? Nothing reaches a child until the teacher approves it.
03 / 06 · Brief
A brief to approve, not a surprise
Outcome, keywords from the school’s catalogue, one activity, the cast. A new word, “triangle”, is coined and queued for review rather than slipped in.
04 / 06 · Build & check
Built beat by beat, then checked
Every beat has a setup, a spoken prompt and three recorded outcomes: correct, try again, reveal. Checks read the text for safety, reading level, structure and mood arc. Pass or flag, never a score.
05 / 06 · Finale
Agree the story, then film it
The mission’s closing film starts as a story the teacher signs off: where it happens, the fact children take home, the word they hear. Only then is it scripted, pictured and rendered.
06 / 06 · Play
And a child plays it
In the browser, in a world of clay monsters. The child answers by speaking, judged against the teacher’s accepted answers, deterministically. The platform never stores the audio.
Fig. 3.1 — The Finale pipeline: a mission’s quests become a narrated film. Every hop an agent run, every gate code.
01BriefCo-author won’t plan until the level is settled — a rule in code
↺ retry ×102ScriptLinted against the house rules, retried once with the violations quoted
03StoryboardCamera grammar compiled from the canon package
04Keyframes ×4Generated in parallel, streaming into their slots
↺ retry ×105Vision QATrait by trait on crops, colour as a hue band
↺ retry ×106RenderAudio matched to its voice line and in sync — or re-rendered
07Assemblyffmpeg; HMAC-signed callbacks, deduped under a row lock
Fig. 3.2 — What the pipeline made: “Learning Shapes”, six pictures to a 40-second film. In the game it plays as “Our story” when the mission ends.
123456
SYS-01
A multi-agent video pipeline
Four agents turn a quest into a narrated film. Failure, retry and refund are per slot, not per film, and timeouts are sized from the measured worst case, not guessed.
Each character’s sheet, camera grammar and style register compiled into agent prompts at build. Trait schemas are hash-locked to the reference plates by tests, and the vision judge was calibrated until it caught every planted defect without failing a good frame.
Stack → Canon as a package · derived schemas · calibrated vision judge
SYS-03
A co-author, quest images and voice
Agent workflows and skills co-author quests in English and German. Invented words are dropped by code. The model writes emotion tags; a deterministic compiler writes the SSML.
Row-level security forced in the database, not just checked in the app. A credit ledger where reserve, commit and refund share one transaction and one row lock, so a failed render is refunded exactly once. Covered by unit, integration and browser tests.