Anime panels with a critic in the loop

A six-page graphic novel featuring a human apprentice and a kitsune fox spirit — and the case study where the drift gate's honesty matters more than the artifacts.

Vertical Graphic novel / sequential art Persona Indie comic creator, solo Capabilities exercised generate_project (auto-anchor), Z3 drift gate, prop check Models flux-dev × 6 pages, nano-banana for anchor

A young apprentice lantern-maker named Kai meets a nine-tailed kitsune fox spirit named Suzume. Six pages, two recurring characters, one consistent visual style. This brief is harder than the live-action film — anime cel-shaded panels with named distinguishing marks (Kai's blue kimono with white crane embroidery, Suzume's nine tails and amber eyes) are exactly what diffusion models drift on the hardest.

The flow

Same one-call surface as the cinematic short: generate_project with six scenes, character_anchor: "auto", anime-style prompts. The server fanned out, the drift gate ran on every page.

6 / 6
pages delivered
~60 s
wall clock parallel
5
auto-retries fired
0.27 avg
final drift score
$0.30
total spend

The six pages

Viewer URL: storyboard.daydream.monster/v/proj_979196233b01

Page 1 — The empty shop Page 2 — A knock at twilight Page 3 — The request Page 4 — The workshop at night Page 5 — Lighting the spirit lantern Page 6 — Suzume departs

From still pages to motion comic

Page 5 — the apprentice lighting the spirit lantern — is the emotional pivot of the spread. Animating it gives the page a webtoon-style motion-comic beat: the lantern flares, ember sparks drift, Suzume's tails sway. One create_media action=animate model_override=seedance-i2v call, 5 seconds, 1 retry (the first run hit a transient worker abort and was retried; second attempt succeeded). Cost: ~$0.30.

Motion comic — Lantern Apprentice page 5, seedance-i2v, 5s, seed 2037346203 (after 1 retry).

Where the drift gate told the truth

The drift gate's final average — 0.27 — is honest about what happened. The kitsune was the hardest part: a multi-tailed fox spirit with a specific palette is exactly the kind of subject diffusion models hallucinate around. The gate logged it explicitly:

"The fox character in the scene is entirely different from Suzume in the anchor image, appearing as a different species or color." — drift_check, score 0.08
"The fox character, Suzume, is a completely different color and lacks her distinguishing multiple tails, while both characters appear different." — drift_check, score 0.14

Pages 1, 4, and 6 (where Suzume is partially obscured or off-frame) scored well. Pages 2, 3, and 5 (where Suzume is the focus) scored badly. The system kept retrying within its 5-retry budget but couldn't pull the score above 0.70 — and instead of pretending it had, it surfaced the score in the response payload for the agent to act on.

What the creator does next

For a 6-page comic where Suzume must look the same in every panel, the published anchor-and-retry pipeline is the wrong tool. The right tool — and the one the Z4 design accounts for — is a per-character LoRA trained from a curated set of Suzume reference images. The MCP already has the substrate:

This case study deliberately shows the workflow's failure mode and the upgrade path. A vendor that only ever publishes its happy-path demos is hiding where the workflow actually breaks. The Storyboard MCP surfaces the drift score in the response so the creator's agent can decide — ship, retry, or escalate to LoRA training.

How this compares for indie comic workflows

CapabilityStoryboard MCPMidjourney NijiNovelAIKrea / Recraft
Character anchor across multiple panelsPartial — anchor sheet + drift gate; LoRA path exists, auto-train pendingManual --cref per shotCharacter locks via tagsReferences per shot
Honest drift reporting✓ Per-shot 0–1 score + sub-scores + reasonsNoneTag-coverage estimate onlyNone
Multi-panel batch with parallel render✓ One generate_project callDiscord one-at-a-timeAPI queueUI per-shot
LoRA training accessible to agentssubmit_lora_train MCP toolNoYes (own training UI)No
Public shareable viewer page✓ Auto-publishedDiscord-onlyNovelAI galleryUI export
Cost for 6-page anime spread~$0.30~$0.55 (Standard)~$0.40 (Anlas)~$0.70

The agent's takeaway

For a 6-page spread of recurring named characters with distinguishing marks, the right pipeline is:

  1. First pass with generate_project + character_anchor: "auto". Cheap, fast, gives you the layout.
  2. Read the consistency_log drift scores. Identify the characters that scored below 0.70 — those need LoRA.
  3. Use the lora_training_ready bucket's captured URLs as the starter dataset. Top up with manual reference images if needed.
  4. Submit submit_lora_train. Wait 5–15 minutes.
  5. Re-run generate_project with the LoRA attached. The drift scores climb back into the 0.85+ range.

This is the workflow honest indie creators want — the system grades, surfaces, suggests, then lets them upgrade tools as the brief gets harder. No magic, no oversell.

Run a comic spread yourself

Submit your own pages: mcp__storyboard__generate_project with character_anchor: "auto" + a style like "anime cel-shaded panel illustration, Studio Ghibli warmth". Read the drift scores. Decide whether you need LoRA.

Live: storyboard.daydream.monster/v/proj_979196233b01