veast
Pass
Audited by Gen Agent Trust Hub on Sep 26, 2026
Risk Level: SAFECOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTIONCREDENTIALS_UNSAFEDYNAMIC_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted external data, including YouTube comments and SRT subtitle files, which serves as a potential attack surface for indirect prompt injection. However, the skill implements specific mitigations and safety boundaries.
- Ingestion points:
scripts/collect_analytics.pyfetches comments via the YouTube API, andscripts/parse_srt.pyprocesses user-provided SRT files. - Boundary markers: The skill explicitly instructs the agent in
SKILL.mdto ignore malicious patterns like "ignore previous instructions" found within SRT text. - Capability inventory: The skill has capabilities for file system operations, video processing via FFmpeg, and network interaction with Google APIs.
- Sanitization: Input paths are rigorously validated to block shell metacharacters before being passed to subprocess calls.
- [COMMAND_EXECUTION]: The skill makes extensive use of
subprocess.runto interact with system utilities such asffmpeg,ffprobe,git, and the Obsidian CLI. These interactions are fundamental to the skill's purpose (video editing and vault management). The skill ensures security by constructing command arguments as lists (avoiding shell evaluation) and validating all input paths against a set of forbidden shell metacharacters. - [DYNAMIC_EXECUTION]: In
scripts/init_vault.py, the skill utilizes the Obsidian CLI'sevalfunctionality to execute a JavaScript snippet for configuring vault ignore filters. This execution is limited to a hardcoded template and is not influenced by external user input. - [CREDENTIALS_UNSAFE]: The
collect_analytics.pyscript manages YouTube API authentication by reading from an OAuth token file located at~/.veast/youtube_token.json. This is a standard and acceptable practice for local CLI tool credential management, utilizing official Google authentication libraries.
Audit Metadata