This skill is responsible for creating text graphics, effect parameters, and camera keyframes. It hands off to skills in the same package by name, can be installed and used on its own, and does not read sibling directories. It calls the fixed released filmcraft-cli and preserves the native editing project.
Trusted Directory Permissions
Old cli.py Projects read and edited through native forwarding also need to be provided at -- before an independent root parameter; only exact version/help/no-project-directory queries remain compatible with old calls. Model downloads must separately use --model-maintenance, see this skill's Execution Permissions。
Public workflow.py and commands.py run must explicitly provide --read-root READ_DIRECTORY --write-root WRITE_DIRECTORY(repeatable); the root must be an existing canonical real directory, authorized by the user/host, and must not be derived from plan or asset metadata. Plans, assets, and source deliverables must be located under the read root, and deliverables and their parent directories must be located under the write root.--runtime-home is the installation maintenance directory and must be located under a separate, explicitly authorized write root; the native editing process is always prohibited from modifying this cache, the skill, registry inputs, and source projects. Current root-isolated execution supports macOS headless; desktop entry points must simultaneously isolate the signed application and MCP client owned by this session, and only open the allocated loopback control port. External bridges whose isolation cannot be confirmed are explicitly rejected. The low-level Python test API is not a public authorization entry point. For detailed boundaries, see Execution Permissions。
Inputs and Deliverables
Inputs are the user-confirmed task, assets, project or object, output directory, and modification scope; when an existing project is needed, verify the summary first. Return the actual CLI results, the saved native project, the required derived outputs, and the verification records. Report installation success, command directory existence, and creative task completion separately.
First Use and Public Entry Points
Locate the real directory of the current SKILL.md. Currently supports macOS arm64, Python 3.11+; the fixed CLI is installed to the user data directory. When an existing task authorization covers the necessary dependencies, execute this skill's installer directly without creating a separate approval process.
Set SKILL_DIR to the directory (absolute path) where the host actually loads this SKILL.md . User-level installations may be located at ~/.agents/skills/filmcraft-cli-motion, project-level installations may be located at .agents/skills/filmcraft-cli-motion, and plugins may be located at their skills/filmcraft-cli-motion or host cache directory; use the actual loaded path, do not guess based on the current working directory, and do not search and arbitrarily select a duplicate version. The skill directory and the CLI's user data installation directory are two independent locations.
: "${SKILL_DIR:?请先设置为本 SKILL.md 的实际所在目录}"
python3 -I -B "$SKILL_DIR/scripts/bootstrap.py"
python3 -I -B "$SKILL_DIR/scripts/cli.py" -- --version
python3 -I -B "$SKILL_DIR/scripts/cli.py" -- commands --json
CLI argv is after -- , and the native subcommand must be placed first. Installation parameters go before the separator;--runtime-home can isolate the cache. Stop when locked artifact digest verification fails, the installation is corrupt, or the platform is unsupported; do not modify PATH and do not perform floating upgrades. The native help entry point is help; the launcher's own --help only explains launch parameters.
Scene Operations
Verify this scene's inputs, native project, target objects, version, and output boundaries. According to Scene Guide , select the current command, save an independent checkpoint, and then execute; after completion, reopen the native project and check the actual outputs and non-target content.
describe <id> verify the parameters, then use exec <id> <JSON> or run <JSONL>; write commands must save in the same batch or be used with --save-as。
Only edit the specified objects and properties; for complex standalone compositing, it may be delegated by name to effectcraft-cli-animation, without changing the fcproj delivery requirements.
Native composition and source project revisions use this skill's built-in scripts/workflow.py; read the workflow contract; templates are in this skill's examples. Only modify authorized objects; preserve native projects and dependency assets; for derived-format loss, read the exchange report。
Verification and recovery
A non-zero command exit does not count as completion; the actually saved project, exports, dimensions, and media decoding need to be inspected. Mark timeout results as unknown; inspect the original task/project first, and do not automatically replay edits. The existing native workflow supports Save As revisions; refuse to overwrite when the corresponding project summary does not match.
On-demand reference and handoff
- Actual command evidence: fixed-version observations, used only as routing and parameter references; live results take precedence, and disabled items are not executed.
- Workflow contract: composition operations, native saving, dependency collection, and revisions.
- When installation/diagnostics are needed, hand off to filmcraft-cli-setup; for complete task routing, hand off to filmcraft-use; when the skill is missing, use
npx skills add full-aigc-skills/filmcraft-skills --skill <skill-name>. Do not load other skills via adjacent file paths.
This skill does not provide a fictional login interface; local headless does not require a cloud account. Full GUI, cross-editor fidelity, and creative quality are stated according to actual evidence.
Complete native command usage
This skill's complete directory parameter descriptions and same-session entry points are not restricted by the creative template allowlist. Read the complete usage guide, and consult the command referenceas needed; each instruction has a skill route, prerequisite observations, and acceptance status.
: "${READ_ROOT:?Set READ_ROOT to an existing independently authorized directory}"
: "${RUNTIME_HOME:?Set RUNTIME_HOME to an existing independently authorized directory}"
: "${SKILL_DIR:?Set SKILL_DIR to an existing independently authorized directory}"
: "${WRITE_ROOT:?Set WRITE_ROOT to an existing independently authorized directory}"
python3 -I -B "$SKILL_DIR/scripts/commands.py" list --filter QUERY
python3 -I -B "$SKILL_DIR/scripts/commands.py" describe COMMAND_ID
python3 -I -B "$SKILL_DIR/scripts/commands.py" run "$SKILL_DIR/examples/commands-advanced.json" --output /absolute/new-command-result --runtime-home "$RUNTIME_HOME" --read-root "$SKILL_DIR" --read-root "$READ_ROOT" --write-root "$WRITE_ROOT" --write-root "$RUNTIME_HOME"
Before executing a new entry point, check the actual registry and current executable status, retain return value references and step-by-step receipts; do not misrepresent semantic errors or timeouts as success. Directory coverage and direct native use do not mean all instructions, GUI, delivery, or Art orchestration have been accepted.
For the complete workflow command gateway, see usage instructions. For the fixed CLI's version and artifact digests, refer to this skill's built-in scripts/runtime.lock.json ; the skill package version is based on the corresponding release tag. Standalone installation re-verification and full command-by-command acceptance are recorded separately; release does not replace acceptance.
For GUI tasks, this skill's built-in fixed desktop installationcan be used first; installation, startup, and actual GUI editing are verified separately.
Complete attribution commands are listed by command family in the categorized usage list; each item's parameters can be viewed via this skill's commands.py describe ; the general CLI list also retains all commands not assigned to specialized skills.
For this skill's tasks, first read the specialized task templates, and execute according to the corresponding inputs, first task, failure boundaries, local revisions, and verification. For cross-capability combinations, then read the complete business scenarios。
If installation fails, read the first-use diagnostics, and use the receipt to locate this skill's own setup entry point; handle installation failures and native invocation failures separately.
For competing executions targeting the same goal and interruption registration, see this skill's execution registration; skill source dev.29 includes the implementation, and plugin fixed-installation acceptance is recorded separately.
For consecutive operations, prefer this skill's built-in task-level session: Start once, check, save, and rework plan by plan, sharing the same FilmCraft instance; exit only when the task ends. A single run still retains the original compatible behavior.