Nothing in that film was imported. No model files, no photos, no video clips, no sound samples. Every shape and every note is written as code and drawn live in the browser. Our agent made all of it from a one-page brief in two and a half hours, without asking us a single question.
You cannot check a video. You can check code.
The idea
The world is the source code
A video model makes pixels. If you want to know whether the bridge in the shot is the right size, all you can do is stare at it and guess.
We build worlds the way a coding agent builds software. Our agent writes the world as a program, runs it, looks at what came out, and edits the program. So the bridge is a function: hand it a span, a tower height and a cable sag, and it hands back the shape. Now “is this right?” is a question with a real answer, and you can compute it.
We call this agentic world modeling.
Most work in this direction checks objects. Is the chair the right size, do its parts join up, is it the right way up. That is useful, and it is the easy half. A world is objects moving, with a camera going through them and a story happening. When the world is code, the camera path is a function of time. So is the acting. So is the cut list. All of it can be read and checked, not just the chair.
Our agent
The job gets split into ten
A film is too big for one pass. Our agent cuts the brief into ten jobs and runs ten copies of itself, one per job, all at the same time. None of them can see the others' files. Each returns a single thing: a camera table, a rig, a score.
Then they disagree, which is the useful part. Ten workers who cannot see each other will not agree on when the trap lands. The picture said 15.05 seconds. The music said 14.55. The camera table said 14.90. So the next step settles every one of those arguments into a single clock of 71 moments, and everything after that reads from it.
Then the shots get built. Then the checks run, and keep running.
Pre-production
Character design
The crab is a shape with dials on it. The shell is a curve, the body has 75 bones, the whole animal is 26,380 triangles. Change a number and he changes.

That is also how he got fixed. Two rounds of work failed to stop him reading as a spider. The cause was one number: his walking legs were 1.24 times his shell width. A real red rock crab is 0.90. The agent had built faithfully, twice, from a spec that described a wolf spider. When it measured against a real specimen plate instead, the spider went away, and not one triangle moved. Only lengths and angles.

The storyboard
No drawings. The board is a table of 20 shots that must cover 0 to 86 seconds with no gap and no overlap, each with a time, a framing, a camera move and a job to do. Because it is data, the film can be recut without touching a single shot.

Production
One rule makes the whole thing checkable
The world is placed from the clock alone. Give it a time and it puts every object where it belongs. Nothing carries over from the frame before.
That single rule pays for everything else. You can jump to any instant and ask what is there. You can render the same moment twice and get the same pixels both times. And a machine can walk the film asking questions, without ever looking at a picture.
Here is one thing it found.


The loudest sound in the film is the crab hitting the water. The picture showed a flat, empty surface. The splash was firing on time, at full strength, in exactly the right place: 0.9 metres above the top of the frame. Of 180 droplets, none were in shot. The crab had fallen too fast, hit an invisible floor, and hung there for three and a half seconds with the camera bolted to him.
Nothing crashed. Nothing looked broken. A crab hanging still in green water renders perfectly happily. Only arithmetic found it, and the answer was already in the data: the fall was meant to run at one seventh of real speed, and three departments had each kept their own copy of it.
Post-production
What the checks return
| check | question it asks | result |
|---|---|---|
| shot plan | do the 20 shots cover 0 to 86 s with no gap? | exact |
| framing | is the subject in frame at start, middle and end? | 0 failing |
| visibility | is anything standing in front of him? | 0 of 20 |
| clock drift | do picture, music and sound agree on when? | 0 of 32 |
| repeatability | same moment twice, same pixels? | identical |
| black frames | any dead frames in the middle? | 0 |
Every one of those returns a number, worked out without looking at a picture.
What they cannot do is taste. They will tell you the crab is in frame, sharp, lit and on the right beat. They cannot tell you whether his reach is moving. A person watched the finished film and said the hands looked wrong for a fisherman, and no test catches that. That is where our experts sit.
Rendering stays open too. A video generation model can run on top of these frames, adding texture and colour the code never had to describe.
At scale
One world is an anecdote
So we built a hundred more: 55 places you can walk through, 45 objects you can turn around, and no imported assets in any of them. Same rule throughout. Every shape and every surface grows from source code and one seed, so a scene comes back exactly the same every time it loads.
What is next
Come build it with us
The 86 seconds is the part you can watch. The code underneath is the part a model can learn from, because every problem in it turns into a number.
We are building verification layer for visual AI, so that video and 3D can be verifiable.
We are hiring. If you want to build it with us, write to team@philolabs.ai.