A man buys a private view of the moon. The moon arrives in a bottle. Opening it lights his window and leaves the neighbour's dark. Now he has a decision to make. Split the light with a mirror, sell the neighbour a second bottle, report the neighbour for unauthorised darkness. Any of those can become a story. Generating another impressive shot of a bottle cannot do that work by itself.
That is the problem CumeTV is built around. Video models can give you eight seconds of astonishing material and then forget the reason any of it happened. Prompt the next clip with the previous clip's description and you often get the same event again: another alarm, another discovery, another man looking concerned. The texture continues. The situation goes nowhere.
CUME stands for Concept Universal Media Experience. CumeTV is its continuous television station. The aim is a shared universe that can sustain cooking shows, orbital police cases, medical dramas, men carefully making shapes, and sponsor bumps for products whose relationship to human welfare is debatable. The programmes should feel related without every programme having the same plot.
Give the programme an ending before making its first frame
The working unit is an epoch: a continuous, watchable chunk of clips with a title, a premise and a generation range. A sketch gets four to eight eight-second beats. A bump gets one. Before rendering begins, a planner chooses a setup, a cause, a consequential choice and a payoff. It also chooses the cast and their baseline identities. Those decisions become a stored outline, not suggestions that the next model call can quietly replace.
For the bottled moon, the outline might end with both homes sharing its light. The first shot has to establish the purchase. If it already gives everybody a moon and resolves the ownership dispute, it has consumed the ending. A separate editor checks the proposed shot against its assigned beat. After rendering, a visual observer inspects the actual ending frame, and that evidence informs the next shot. When vision is unavailable, the system records that absence. An intended action is not evidence that the video showed it.
This does not make a video model reliable. Bodies can drift, props can change, and the frame may fail to express the decision the script needs. It gives those failures somewhere to go. Repair the next execution using observed facts, keep the accepted premise and ending, and record why an attempt was rejected. Endless retries without a durable state are just another way to make an endless corridor.
A channel needs habits
Channel 0 rotates through a broad catalog of genres and story archetypes. A cooking demonstration, a courtroom dispute and a quiet domestic scene can share the same absurd institutional universe while using different kinds of action. The recurring sensibility comes from concrete consequences and the way people accommodate them. If a shadow acquires a subscription, someone has to deal with the bill.
Channel 1 has a narrower contract. Police Space Officer: Orlando follows evidence to a resolved case. Orlando General follows a fictional patient through observation, a test, a care decision and an outcome. Shape Department follows Len and Odo as they measure, build, test and finish a different shape. Their cast identities persist; the cases and materials change. A medical case should not turn into another gunfight just because the model has found gunfights easy to continue.
Between complete programmes, a short bump cuts to CumeTV and the companies, products and characters in its associated universe. The CumeTV Wiki supplies a credited lore reference. New programme fiction is kept distinct from that reference. A station identity can be recognisable without dragging the preceding scene's furniture into every advert.
Score the action
Channel 0 plans music with the outline. A cue has a start, an end, a purpose and a level: underneath the action or featured in it. Treblo generates an original instrumental or a song using supplied original lyrics. The score is then mixed locally with the finished clips. Speech gets room, reactions can remain dry, and a bump can end on a small instrumental sting.
Music generation does not obey a stopwatch simply because a prompt asks nicely. A short jingle test returned the requested words spread across roughly thirty seconds. Taking the first eight seconds would have cut the line before the joke. The routine therefore checks aligned words, reserves a longer feature cue for songs, and fits the complete vocal within a bounded timing adjustment. Short bumps use instrumentals. If the song cannot fit, the system records the failure and retains the original programme audio.
Keep the original picture and audio. Store the generated track and the mixed versions separately. The player receives a complete scored epoch only after every clip is ready. This is also a practical division of compute: the current setup uses owned machines for planning, video, illustration and mixing, with Treblo as the explicitly chosen external music service.
Build the loop
The implementation is in the CumeTV repository. Start with its broadcast directory and README. Use Bun to install dependencies, run the checks and build the site. Give each channel its own Worker, D1 database and R2 bucket, apply the versioned migrations, and configure the service binding that lets the main station serve Channel 1. The repository includes both Worker configurations; replace the deployment names, account identifiers and bindings with your own.
Connect a video job service that supports submission, status and media retrieval. The current renderer uses MiniMax H3 on owned accelerators and produces eight-second clips. Configure Hermes with a capable planning model and a separate token for each channel. The current deployment uses a resident Hermes process on a Mac mini and an owned Actual inference service. You can reproduce the architecture with other inference and rendering backends, but must implement and test their adapters. The repository does not give you somebody else's machines or credentials.
Run the planner against an off-air context first. Inspect the whole outline and the first shot, then continue from real rendered footage. Only start continuous operation after the planner, renderer and media archive agree on the job protocol. The operator guide describes the canary commands, cast contracts, cue queue and recovery procedure.
The coordinator reserves the next generation, the planner leases it, and an accepted plan is saved before rendering starts. Persist a submission identifier before sending a job so that a timeout does not become a second paid request. Publish the resulting media and advance story state together. Keep channel histories separate. Finish accepted work when changing the direction of a channel. A deployment should not casually rewrite the scene that is already rendering.
A music task needs the same discipline. Persist its submission intent, save its returned task identifier, and resume that task after a restart. If the service may have accepted a request but no identifier survived, stop for operator review. Do not keep spending until a request happens to return cleanly.
Make the station readable
A fullscreen video surface is a poor directory. CumeTV also exposes ordinary HTML pages for its epochs, descriptions, generation ranges and watch links. Each epoch has a bounded playback manifest and timed planned dialogue. These captions are useful navigation material, but should not be mistaken for a verified transcript of everything the video actually said. The live player still lets viewers enter a generation number directly.
Agents get the same public content through JSON, an agents.md entry point and llms.txt. They can discover programmes, inspect their manifests and link to an exact epoch without impersonating a browser. Credentials for planning, job submission and operator control stay separate from these public reading surfaces. Legibility should make the station easier to watch and understand.
Launch a fan channel
A fan station can opt into CUME discovery by publishing a manifest at /.well-known/cume-channel.json and adding a cume-channel link relation in its homepage HTML. The manifest identifies the station, its channels, its public programme catalog and its continuous playback manifest. The versioned contract and a complete example are at CumeTV's channel protocol.
Use your own domain, channel identifiers and series bible. Publish the opt-in marker only when you want the station to be discoverable. The marker makes a station eligible for discovery and review; it does not automatically endorse it, add it to the official channel buttons or grant it access to the generation system. A network can recognise related work without sharing its control credentials.
The interesting part is what someone else makes with the structure. A procedural about people constructing shapes can earn its own pace. A cooking show can cause something so stupid that the next five shots have to live with it. What matters is that the ending belongs to the choices that got us there.
Watch CumeTV, browse the epochs, and subscribe to Vectorculture for further writing about the systems behind this work.



