Install
$ agentstack add skill-wanshuiyin-aris-movie-director-movie-pipeline ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ● Shell / process execution Used
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
movie-pipeline — Pipeline A, end-to-end (one slash-command)
The whole of Figure 1 as ONE agent workflow: a fuzzy idea → a cross-model-audited, image-based movie + a clickable viewer. You invoke it like an ARIS workflow — /movie-pipeline "a short film about an autonomous research run" — and your coding agent (Claude, Codex, …) drives the chain below, pausing only at the two human story gates.
> "One command" = one slash-command an agent RUNS — not a deterministic shell binary (the same paradigm as > ARIS's /research-pipeline). So: it needs a coding-agent runtime; it is non-deterministic (a step may rarely > not fire — that is safe, because each layer consumes the prior locked node, so a skipped step leaves the > next gate's input unresolved and it fails closed, never ships something wrong); and it pauses at intent > + outline for your approval. The deterministic, no-agent slice is Phase 2/3 > ([comic-director](../comic-director/SKILL.md)'s run_comic.py), which also runs standalone in CI.
The chain (what the one command runs, in order)
- Phase 1 — author the source of truth → [
comic-author](../comic-author/SKILL.md): intent (human gate)
→ style lock → outline (human gate) → storyboard → assets (准×3 locked) → blueprints → prompts → schema-valid comic.json. Each step is its own detailed skill + a cross-model --gate.
- Zero-credit proof →
comic-cross-layer-gate --gate p0_proof: a text-only cross-model adversarial
review of the compiled comic.json + the machinery. Must be clean BEFORE one metered image credit is spent.
- Phase 2/3 — the audited spiral → [
comic-director](../comic-director/SKILL.md): per panel, render the
content-SVG blueprint → codex image_gen → 3-reviewer panel_gate (blind-transcribe → deterministic token-diff) → KEEP / RETRY (≤4) / cross-frame rollback → page assembly_gate (≤6) → project to comic.json → single-file HTML viewer.
- Ship →
examples//outputs/index.html. Optionally
[comic-blind-comparison-review](../comic-blind-comparison-review/SKILL.md) double-blind A/Bs it vs a naive one-shot baseline to prove the pipeline earned its cost.
Run it
> /movie-pipeline "«your fuzzy idea»"
Your agent authors Phase 1 (stopping for your intent + outline approval), clears the p0_proof gate, then bakes the audited spiral and builds the viewer. To run ONLY Phase 2/3 deterministically (CI / no agent runtime), once comic.json exists:
python3 skills/comic-director/scripts/run_comic.py --project examples/ --page --panels S01,S02 --dry-run # zero credit: prints bake prompts
python3 skills/comic-director/scripts/run_comic.py --project examples/ --page --panels S01,S02 --finalize # bake + rebuild the viewer
(run_comic.py is a standalone subprocess port of [packages/core/spiral_engine.js](../../packages/core/spiral_engine.js); both refuse to bake without a clean decision:p0_proof_* node unless you pass --skip-p0-proof, which forces the run non-shippable.)
The gates that keep it honest (all fail-closed)
- Two human gates — intent + outline are story decisions: the agent drafts + cross-model-reviews them but
NEVER proceeds without your approval (the story-first rule, [acceptance-gate](../../protocols/acceptance-gate.md)).
- p0proof before any credit (step 2) — also enforced in the engine (no clean p0proof node ⇒ refuse).
- panel_gate — a baked frame whose number is wrong (
+6.2expected vs+6.25observed) is rejected by a
deterministic token-diff; no model self-acquits; a non-convergent panel is flagged for you, never silently shipped.
- A skipped step can't leak — because each layer's input is the prior locked node, a missed step is caught
by the next gate's unresolved input (fail-closed). That is why "the agent might not tool-call a step" is a safety property here, not a risk.
Prereqs
A coding-agent runtime for Phase 1 + the gates; codex + gemini CLIs + headless Chrome for the Phase-2/3 bake (python3 cli/preflight.py to verify). Copy the author-node shapes from [examples/comic_min_author/](../../examples/comicminauthor/); the full reference run (198-node trace) is [examples/comic_m3_audit/](../../examples/comicm3audit/).
Protocols
[acceptance-gate](../../protocols/acceptance-gate.md) — the human gates intent+outline; a different model family acquits the rest (loop can DRIVE, can't ACQUIT) · [artifact-integrity](../../protocols/artifact-integrity.md) — the agent that authors a layer never judges its own layer · [reviewer-independence](../../protocols/reviewer-independence.md) · [external-cadence](../../protocols/external-cadence.md).
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: wanshuiyin
- Source: wanshuiyin/ARIS-Movie-Director
- License: MIT
- Homepage: https://wanshuiyin.github.io/ARIS-Movie-Director/comic/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.