tk-video
Pass
Audited by Gen Agent Trust Hub on Oct 30, 2026
Risk Level: SAFECOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTIONEXTERNAL_DOWNLOADSDYNAMIC_EXECUTION
Full Analysis
- [COMMAND_EXECUTION]: The skill utilizes
ffmpegandffprobefor video assembly, text measurement, and metadata extraction. - Commands are executed via
subprocess.runusing argument lists rather than shell strings, which effectively prevents shell injection vulnerabilities. - The
diagnosticfunction inscripts/build_movie.pyproactively redacts credentials, tokens, and passwords from command error output using regular expressions before they are reported. - [INDIRECT_PROMPT_INJECTION]: The skill processes external data in the form of JSON manifests containing frame paths, captions, and narration instructions.
- Ingestion points: Data enters the system via
load_manifestinscripts/build_movie.pyand is parsed into processing structures. - Boundary markers: The system relies on strict structured data validation (e.g.,
finite()checks for numbers,regular()checks for paths) rather than natural language delimiters. - Capability inventory: The skill can write media files (MP4, GIF), subtitle sidecars (SRT), and execute media processing binaries.
- Sanitization: The
literalfunction inscripts/presentation.pyescapes ASS (Advanced Substation Alpha) control characters (braces and backslashes) in user-provided captions to prevent injection into thelibassrendering engine. - [EXTERNAL_DOWNLOADS]: The skill depends on external binaries (
ffmpeg) but maintains a high security posture regarding their acquisition. - Instructions in
SKILL.mdandreferences/assembly.mdexplicitly forbid the automatic installation of tools or dependencies. - The tool discovery logic in
scripts/build_movie.pyusesshutil.whichand specific path lookups (like Homebrew prefixes) but does not attempt to download or install missing software. - [DYNAMIC_EXECUTION]: The main assembly script
build_movie.pydynamically loads thepresentation.pymodule at runtime. - This loading is restricted to a local file within the skill's own directory using
importlib.util, which is a standard and safe practice for local modularity. - [DATA_EXPOSURE]: Path validation is enforced globally via the
regularfunction inscripts/build_movie.py. - All input files are verified to be inside the manifest's run directory using
is_relative_to, preventing path traversal and unauthorized file access.
Audit Metadata