Back to Work
AI Systems · Production Pipeline

Footage generation, run like a film set.

The Generating Assistant is the system every project runs on. It stores what is happening on each project, builds the working documents from that data, and lets any approved character, prop, or location be reused across shots and across projects.

Loom walkthroughA live project inside the Generating Assistant: the bible, the element registry, a generation run, and the review gallery.
186
Shot bank entries
8
Commands, brief to archive
1
Provenance record per output

Not a prompt box

Most AI footage starts with someone typing into a prompt box and hoping. Ours starts the way a film set starts, with continuity. The cast, the sets, and the props get built once, approved once, and locked. Every shot after that references them.

The Generating Assistant is the system that enforces this. It is how we run every production, and it is the reason shot forty looks like it belongs to the same film as shot one.

The lifecycle

Brief in, editor-ready footage out

Eight commands carry a project from scaffold to archive.

01

Bible

Rules locked first

02

Elements

Cast, sets, props

03

Shots

Reference-only generation

04

Review

Curate and promote

05

Archive

Elements survive

Step 01

Every project gets a bible

Before anything generates, the project gets two locked documents. A settings file hard-locks the machine decisions: aspect ratio, resolution, which model handles what, texture and audio rules. Nothing drifts between sessions because nothing is allowed to.

The bible holds the creative truth. Its core is a section we call the Visual DNA: a frozen style prefix and a frozen constraints core that every single generation must open and close with, verbatim. If the Visual DNA has not been authored, the generate command refuses to run.

Then the cast
Step 02

Cast and sets before a single frame

Every character, environment, prop, and key asset gets a reference sheet before any shot exists. Neutral grey backdrop, even light, multiple views, and an ID in the project's element registry.

Once approved, an element is reusable everywhere. Any later prompt binds that exact character or prop by ID, with no re-upload and no re-describing. Elements survive the project too, which is what makes cross-project reuse a one-line instruction instead of an archaeology dig.

Then the shots
Step 03

Shots that only reference

The hard rule of the whole system: never text-to-video. Every video starts from a frame we already approved, or from locked references. A finished generation can itself become a reference, which lets a look or an identity hold across an entire shot series.

Shot planning draws on a 186-entry bank of real film language: shot sizes, angles, camera moves, lighting setups, director recipes. Built from actual cinematography sources, not from what a model thinks a movie looks like. Heavy batches fan out to parallel agents, one per shot.

Then the cut
Step 04

Curate, then promote winners

Generation is cheap. Judgment is not. Every batch lands in a review gallery with thumbnails, approve and reject controls, and keyboard shortcuts, and a human moves takes from raw to selects to final.

Approved takes get promoted into an editor-ready footage folder, grouped by section. The editor never sees the noise, only the cut candidates.

Step 05

Provenance and archive

Every output carries a sidecar record: the exact prompt, the references it used, the model, the settings, the cost, and an append-only history of every revision. Any frame in any delivery can be traced back to exactly how it was made.

That record is also the archive. When a client asks for one more shot six weeks later, the system reads the sidecars and the bible and picks up where it left off.

How it got here
The rebuild

It replaced its own first version

Version one was a pile of scripts we wrote ourselves: hand-rolled API clients for every model, a batch processor, custom review pages. It worked, and then it collapsed under its own weight. Context lost between sessions, prompts lost on rework, versioning by duplicating folders, ninety-eight loose scripts, and four different places all claiming to be the memory.

Version two was built in one long session after a proper autopsy of version one. Every failure became a rule: one always-current status doc, prompts live only in sidecars, one bible per project, one unified generation engine instead of a client per model. The system got simpler by getting stricter.

Want your production run on a system like this?

If you are generating AI footage and fighting consistency, the fix is a pipeline, not a better prompt. Fifteen minutes and we will tell you what yours should look like.

Book a 15 minute call