A browser-based video editor for cutting anime Shorts, where finding the scene, framing it and sourcing the images are all done by local models — a faster path than a general-purpose editor for this one job.

Cutting a Short out of an episode means scrubbing an hour of footage for the right six seconds, reframing it to 9:16, hunting down images that match each line, and trimming the dead air — all by hand, in an editor that knows nothing about the footage it is holding.
A timeline editor and an automated pipeline over the same project files, backed by a nine-package monorepo with 68 test files covering the parts that fail silently.
The studio starts with a library rather than a file: episodes are indexed once, and from then on scenes are searchable in plain language. Indexing runs PySceneDetect to split the episode, faster-whisper to transcribe it, a keyframe per scene through a vision-language model that annotates what is happening, and bge-m3 embeddings into a vector store — so a query like 'luta intensa com espada', filtered by character or minimum duration, returns the actual clips and drops them onto the timeline. The editor around it is a real one: lanes, drag, split and trim with snapping, keyframes, waveforms, crossfades, captions, beat sync and undo/redo, plus the parts that are specific to this format — auto-reframe to 9:16, auto-camera and subject tracking, colour-grade preview, background cutouts, SFX kits, and silence detection that tightens pauses out of a take. Narration goes either way: a line can be synthesized, or recorded in the browser take by take — and because a recorded take comes out with the same word-level timings as a synthesized one, captions and shot timing downstream cannot tell which is which, and re-synthesizing never overwrites a performance. Denoising is treated as taste rather than a default: the same take is rendered through every installed backend — DeepFilterNet, Demucs, spectral noise reduction — so they can be compared side by side and swapped later without recording the line again. Where a scene needs stills instead of footage, the image layer scrapes Fandom, Wikimedia, Openverse and image search, then uses CLIP similarity to pick the frame that actually matches the line, recording licence, author and attribution for every asset it keeps. Scripts written against a lore corpus have to cite the chunks they used, and an uncited claim fails the build rather than shipping. The whole thing is scriptable: every stage is separately runnable and checkpoints to a job file, so a Short can be assembled by hand in the browser, driven end to end from the CLI, or picked up halfway between.
