>- LoRAs), cinematographer storyboards, keyframe renders, editor. Turns a logline or screenplay into a finished short video with human gates at casting and storyboard. Use when the user says "film this", "make a short film", "storyboard this script", or "start the film crew".
npx skills add https://github.com/guaardvark/guaardvark --skill film-crew
Read setup first. Needs comfyui; casting with trained characters needs
lora_trainer (see the cast skill). Renders take minutes per shot.
start_film_crewscript_text: a screenplay or a plain scene list. A logline works; the screenwriter expands it.name (defaults to the first line), video_model (defaults to the active scene model,minimax-h3-int8 on a typical box; wan22-5b for silent i2v).
Studio (Agents > Film Crew) or through the routes below.
B=${GUAARDVARK_URL:-http://localhost:5000}, P = production id from the tool.
| stage | call | note |
|---|---|---|
| status | GET $B/api/production/$P | stage, subjects, shots, errors |
| subjects found by the writer | GET $B/api/production/$P/subjects | characters, environments, props |
| cast one subject | POST $B/api/production/$P/cast/<subject_id> with {"action": ...} | link to an existing Cast Library subject or plan a new one |
| confirm casting | POST $B/api/production/$P/casting/confirm | user gate: every subject needs a cast plan first |
| storyboard shot image | GET $B/api/production/$P/storyboard/shot/<shot_id>/image | review keyframes |
| redo one shot | POST $B/api/production/$P/storyboard/shot/<shot_id>/regenerate | |
| approve storyboard | POST $B/api/production/$P/storyboard/approve | user gate: releases the renders |
| retry a failed stage | POST $B/api/production/$P/retry | |
| list / delete | GET $B/api/production, DELETE $B/api/production/$P | |
Without the MCP tool: POST $B/api/production with {"name", "script_text", "settings": {"video_model": "..."}}.
train one (the cast skill) or cast it "as described" and warn identity may drift.
Take guaardvark/film-crew from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.