Story handdrawn studio
Skill DingYi1024/story-handdrawn-studio/skill-package/story-handdrawn-studio
Produce, creatively direct, revise, review, recover, and machine-check complete hand-drawn videos from Chinese stories, scripts, diary entries, comic pages, or ordered images. Use for narrative-arc selection, style bake-offs, multi-shot planning, deterministic hand-drawn motion, resumable image providers, continuity, scene retakes, multi-ratio rendering, page flips, automatic local sound design or narration, semantic and pixel QA, visual review, snapshots, and final MP4 delivery.From its SKILL.md
npx -y skills add DingYi1024/story-handdrawn-studio --skill story-handdrawn-studioAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 26 days oldThe repository was created 26 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
8.1 KB, ~1.6k tokens by cl100k_base, as published. Nobody here has run it
Story Handdrawn Studio
Act as the user's video producer, not as a command tutor. Infer the requested result, operate the bundled Studio, generate every required image, inspect machine evidence, and return a playable video path. Do not stop at a storyboard when the user asked for a preview or final.
Resolve SKILL_DIR as this file's directory. Run all Studio commands through:
python <SKILL_DIR>/scripts/run_story_video.py COMMAND [OPTIONS]
The launcher keeps works under ~/.story-handdrawn-studio/, outside the installed Skill. Never place user work in assets/renderer and never require a separate clone.
Choose the route
- New story or ordered images: use
producewith the requested--to plan|assets|preview|final; default topreviewwhen the user has not chosen. - “直接完成/全部做完/成片”: use
--to finaland persist through image jobs, import, render, and QA. - Continue or recover: inspect
status, then useproduce --project ID --to <saved target>orresume. - Scene feedback: use
revise --scene ID --note ..., generate only returned retake jobs, then continueproduce. - Character, outfit, prop, location, or palette consistency: prepare/apply a semantic continuity specification before generating affected scenes.
- Narrative structure, style trials, shot rhythm, or local micro-animation: read references/creative-director.md; use
directorwithout replacing the black-and-white → text → colour contract. - Voice, music, or sound effects: read references/audio.md; audio remains opt-in.
- Automatic local BGM/SFX: use
audio --action auto; read references/automatic-audio.md. - Visual approval or semantic checking: read references/review-and-semantic-qa.md.
- Image provider selection, estimates, retries, or recovery: read references/providers-and-recovery.md.
- Reusable genres, migrations, backup, or rollback: read references/templates-and-rollback.md.
- Multiple works, resumable queues, or whole-library health: read references/batch-and-audit.md.
- Status questions: use
listorstatuswithout mutating the work. - Renderer or reusable feature changes: read the customization route in references/routing.md.
- Skill upgrades, packaging, release gates, or cold-install verification: read references/release-readiness.md.
Read references/workflows.md whenever executing production commands or image jobs. Read references/creative-director.md for narrative arcs, style bake-offs, or multi-shot work. Read references/continuity-and-revisions.md for recurring entities or retakes. Read references/quality.md before reporting a preview/final. Read references/storage-and-updates.md for installation, paths, privacy, backup, or upgrades.
Production loop
- On first use, run
setupand require areadydoctor report. Re-run withsetup --forceonly when the returned recovery action calls for it. Useversionto inspect the installed Skill/runtime without mutating data. - Give each work a unique safe ID. Preserve the supplied text and image order.
- Select the explicit ratio, or default to
portrait(3:4). Useverticalfor 9:16 short video,squarefor 1:1, andlandscapefor 16:9. Let the Creative Director recommend an arc, theme, and safe non-repeating shot rhythm. - For a story with recurring people/props/settings, write a semantic continuity JSON and pass
--continuity /absolute/file.jsonon the firstproducecall. Every scene must explicitly list its current cast; use[]when nobody is present. - Run
produce. If it returnsaction_required: generate_images, process every returned job in manifest order with the available image-generation capability. Read the fullpromptand allreferences, generate exactly one master, and save/copy it to the exactoutput_masterpath. - Re-run the same
produce --project ID --to TARGET. Repeat until it reaches the requested stable state. Do not activate a storyboard while any master is missing. - Rendering runs geometry/pixel/audio QA, samples both sides of page flips and multi-shot cuts, and emits semantic vision jobs without inventing observations. Use
reviewwhen human approval is needed. - If review requests changes, apply its JSON with
apply-review, service only the returned retake jobs, and continue production. - A final is complete only when state is
completed,output/final.mp4exists, final QA has zero failures, and requested review gates are resolved. - For multiple works, use one versioned batch manifest. Service per-project action boundaries, rerun the batch, and require its final status to be
completed. Runaudit --strictbefore bulk delivery.
Visual contract
- Direct-cut story scenes show the black-and-white illustration on frame zero and reveal text over that drawing. Start the full-artwork colour fade on the exact frame the text reveal completes; do not add a completed-text hold or blank opening phase.
- Page-flip story scenes reveal the next monochrome drawing underneath the curling page and hold it through the end of the flip. Then reveal text and start colour immediately when that reveal completes; never cover the incoming scene with a blank white transition plate.
- Page-flip uploaded-page works preserve each complete page and original composition.
- Captions remain in the upper safe region; illustrations use contained framing without cover-cropping.
- Multi-shot motion transforms artwork only. Captions remain stable; adjacent shots use safe local moves and retain visible artwork across every cut.
- Recurring identity, face, hair, age, proportions, outfit palette, props, location, time, and drawing language follow the compiled continuity ledger.
- A previous scene is an identity/style reference only. Never copy its cast into the current scene unless the current scene explicitly lists those characters.
- Keep sparse white diary-comic composition, uneven black outlines, negative space, and restrained wax-crayon color unless the user requests another art direction.
Revision contract
revise creates a new numbered revision, archives the prior metadata, updates only selected or continuity-dependent scenes, and gives every retake a new immutable asset stem. Never overwrite an accepted master. Generate the returned retake jobs, then continue produce to preview or final. Report both directly requested scenes and dependency-impacted scenes.
Optional audio contract
Keep silent output as the default unless the selected template enables sound. For private, keyless sound design, prefer audio --action auto; it derives mood and events, creates original procedural BGM/SFX locally, aligns page-turn sounds, and makes no network call. When narration is requested, use narration text rather than captions, measure real durations, extend timing when needed, and clearly disclose external OpenAI speech calls.
Truthful delivery
Use filesystem and QA evidence as authority. Report project title/ID, requested and achieved stage, ratio, scene count/duration when known, revision, QA result, audio status, and a clickable absolute MP4 path. If external image generation or an API credential is genuinely required, return the exact pending jobs or credential requirement and the resumable command; never claim the video exists early.
What ships with it: 188 files
57713.9 KB alongside SKILL.md, 57 of them executable
agents/
- openai.yaml323 B
assets/
- renderer/CHANGELOG.md10.8 KB
- renderer/CONTRIBUTING.md1.5 KB
- renderer/CUSTOMIZATION.md4.1 KB
- renderer/DESIGN.md3.0 KB
- renderer/examples/batch-production.json642 B
- renderer/examples/case-sprouting-note/animated-preview.gif2826.6 KB
- renderer/examples/case-sprouting-note/audio-options.json1.5 KB
- renderer/examples/case-sprouting-note/audio/README.md494 B
- renderer/examples/case-sprouting-note/audio/sources/gentle-growth.m4a342.2 KB
- renderer/examples/case-sprouting-note/audio/sources/morning-birds.m4a12.1 KB
- renderer/examples/case-sprouting-note/audio/sources/page-turn.m4a14.6 KB
- renderer/examples/case-sprouting-note/audio/sources/rain.m4a115.6 KB
- renderer/examples/case-sprouting-note/audio/sources/seed-chime.m4a17.8 KB
- renderer/examples/case-sprouting-note/audio/sources/watering.m4a51.6 KB
- renderer/examples/case-sprouting-note/cover.png949.1 KB
- renderer/examples/case-sprouting-note/final.mp421433.0 KB
- renderer/examples/case-sprouting-note/preview.mp45275.2 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-01-0.000s.jpg143.6 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-02-1.867s.jpg190.3 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-03-1.900s.jpg188.7 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-04-1.933s.jpg184.2 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-05-2.289s.jpg189.4 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-06-3.617s.jpg184.2 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-07-3.717s.jpg196.1 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-08-4.578s.jpg195.0 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-09-6.250s.jpg195.9 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-10-6.253s.jpg195.9 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-11-6.333s.jpg195.6 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-12-6.413s.jpg200.9 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-13-6.867s.jpg173.9 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-14-8.867s.jpg182.6 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-15-8.900s.jpg171.4 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-16-8.933s.jpg166.4 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-17-9.156s.jpg186.8 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-18-10.450s.jpg173.7 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-19-10.550s.jpg186.5 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-20-11.444s.jpg188.7 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-21-12.787s.jpg194.0 KB
- renderer/examples/case-sprouting-note/qa-frames/frame-22-12.867s.jpg193.5 KB
148 more files not listed here. See all 188 in the repository.