Inspiration

Most AI video tools can generate a clip. Creators need repeatable episodes — where characters, props, style, and unresolved threads survive across shots and across episodes. Circle Take is named after the film-set "circle take": only approved takes make the production record. Bad takes don't make the cut.

What it does

Circle Take is a self-correcting production loop for AI-generated episodes. From a short drama brief it builds Actor / Style / Story Contracts, a storyboard with a Shot Risk Ledger, generates shots with Wan, then judges every take with Qwen vision against the contracts. When continuity breaks, it reshoots only the failed shot — and the Anchor Gate refuses to greenlight a take it can't verify, even its own reshoot. Only approved anchors become Red-Thread Memory for the next episode.

The one-line idea: reshoot the shot, not the show.

How we built it

An agentic pipeline on Qwen Cloud:

  1. Scripty turns the brief into Actor / Style / Story Contracts (Qwen structured output).
  2. A Storyboard Slate + Shot Risk Ledger score identity risk before a frame exists.
  3. A Route Selector picks T2V / R2V / I2V / VideoEdit per shot.
  4. Wan 2.7 generates the shots.
  5. Continuity Court — real Qwen-vision returns a structured VERDICT JSON.
  6. Reshoot Spell writes a delta-only repair for the failed shot.
  7. Anchor Gate approves or quarantines the corrected take.
  8. Red-Thread Memory stores story facts + approved visual anchors.

Backend: FastAPI · Python 3.12 · Pydantic v2 · SQLite · Docker. Artifacts upload to Alibaba Cloud OSS. The demo's narration is itself generated by Qwen3-TTS.

What makes it different

It's not another generator — it's a memory + correction layer around generation. In the demo's live run, Luna loses her identity markers and Qwen returns VERDICT: FAIL. A blind text-only reshoot scores identity 15/100 → QUARANTINE — the gate refuses to ship what it can't verify. The reference-conditioned reshoot, locked onto an identity keyframe, then scores 95 · 95 · 100 → approved, and only that approved take becomes Red-Thread Memory. The gate ships only what it can verify, so memory stays clean.

Challenges we ran into

  • Character identity drifts across shots, especially when a prop occludes the actor.
  • Prompt repetition isn't enough → Actor Contracts, Reference Packs, and Anchor-Gated Memory.
  • Targeted repair can fail → the path falls back VideoEdit → R2V → shot rewrite.
  • Explaining the whole loop in under 3 minutes → one honest golden path.

Accomplishments that we're proud of

  • A memorable CUT ritual in the first 30 seconds.
  • Continuity turned into a judgeable artifact: verdict JSON, delta repair, before/after, appr
  • An honest, strict Anchor Gate — it quarantines what it can't verify (blind 15/100) and greenlights only what it can (95 · 95 · 100).
  • A reproducible demo pipeline + objective QC (loudness / duration / black-frame).

What we learned

Generated-video workflows need production supervision, not just better prompts. A useful showrunner must remember what should persist, detect when it breaks, and decide what's approved for the next episode.

What's next

  • More Style Contracts beyond the Clay Stop-Motion MVP.
  • Reference Pack authoring + approval tools.
  • Shot-level repair routing + cost controls.
  • Red-Thread Memory across many generated episodes.

Built With

  • alibaba-cloud
  • alibaba-cloud-oss
  • dashscope
  • docker
  • fastapi
  • playwright
  • pydantic
  • python
  • qwen-cloud
  • qwen3-tts
  • qwen3.7-plus
  • sqlite
  • wan-2.7
Share this project:

Updates

Submission history