motion-video
Pass
Audited by Gen Agent Trust Hub on Sep 25, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONCOMMAND_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill is designed to process external, untrusted data (referred to as "facts" from primary sources like release notes, repository documentation, or code) to generate a video project. This content is interpolated into
data/script.jsonand subsequently used as arguments for audio generation and alignment tasks. - Ingestion points:
references/production-pipeline.mdinstructs the agent to gather facts from external primary sources to inform the video content. - Capability inventory: The skill provides a suite of local scripts (
scripts/*.mjs,scripts/*.py) that have the capability to write to the file system and execute system commands viaffmpegand themultixCLI. - Sanitization: The templates
align-voiceover.mjsandgenerate-audio-assets.mjsattempt to sanitize inputs using aquotefunction that escapes double quotes. However, this method does not necessarily prevent shell expansion (e.g., using backticks or$()) when executed through a shell. - Boundary markers: The skill does not provide specific instructions to the agent to treat the collected facts as untrusted or to use boundary markers during interpolation.
- [COMMAND_EXECUTION]: The skill's workflow depends on the execution of multiple command-line tools, including
ffmpeg, themultixCLI tool, and thehyperframesframework vianpx. - Evidence: Python scripts such as
fit-beat-grid.py,verify-arrangement.py, andmeasure-mix-balance.pyusesubprocess.runto invokeffmpegfor audio analysis and processing. - Risk Factor: The JavaScript templates
align-voiceover.mjsandgenerate-audio-assets.mjsutilizechild_process.spawnwith the{ shell: true }option. While this is functional for the intended media tasks, executing user-influenced strings through a shell shell is a security risk if the sanitization (in this case, manual double-quote escaping) is insufficient.
Audit Metadata