skills/mtgvim/tiger-kit/tk-video/Gen Agent Trust Hub

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 ffmpeg and ffprobe for video assembly, text measurement, and metadata extraction.
  • Commands are executed via subprocess.run using argument lists rather than shell strings, which effectively prevents shell injection vulnerabilities.
  • The diagnostic function in scripts/build_movie.py proactively 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_manifest in scripts/build_movie.py and 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 literal function in scripts/presentation.py escapes ASS (Advanced Substation Alpha) control characters (braces and backslashes) in user-provided captions to prevent injection into the libass rendering engine.
  • [EXTERNAL_DOWNLOADS]: The skill depends on external binaries (ffmpeg) but maintains a high security posture regarding their acquisition.
  • Instructions in SKILL.md and references/assembly.md explicitly forbid the automatic installation of tools or dependencies.
  • The tool discovery logic in scripts/build_movie.py uses shutil.which and specific path lookups (like Homebrew prefixes) but does not attempt to download or install missing software.
  • [DYNAMIC_EXECUTION]: The main assembly script build_movie.py dynamically loads the presentation.py module 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 regular function in scripts/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
Risk Level
SAFE
Analyzed
Oct 30, 2026, 03:35 AM