programmatic-music
Pass
Audited by Gen Agent Trust Hub on Aug 22, 2026
Risk Level: SAFECOMMAND_EXECUTIONEXTERNAL_DOWNLOADSDATA_EXFILTRATIONPROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The skill makes extensive use of the
subprocess.runfunction to execute external binaries for audio processing, metadata extraction, and data retrieval. - Affected binaries include
ffmpeg,ffprobe,fluidsynth, andcurl. - Commands are found in
m21kit/render.py(lines 126, 155, 235),m21kit/verify.py(lines 200, 219), andscripts/audio_to_score.py(line 46). - While the implementation uses list-style arguments to prevent shell injection, the execution of external binaries is a significant capability.
- [EXTERNAL_DOWNLOADS]: The skill is designed to fetch external assets and data during setup and runtime.
- It downloads a 141MB General MIDI soundfont from a public GitHub repository (
github.com/urish/cinto) inm21kit/render.py(line 126). - The
scripts/fetch_score.pyutility can download musical scores in various formats from multiple external domains including GitHub,kernscores.stanford.edu,thesession.org, andmutopiaproject.org. - [PROMPT_INJECTION]: The skill presents a surface for indirect prompt injection due to its ability to ingest and process untrusted external data.
- Ingestion points:
scripts/fetch_score.py(fetches scores from arbitrary URLs) andscripts/audio_to_score.py(processes external audio files). - Boundary markers: No explicit delimiters or instructions are used to separate untrusted external content from the agent's internal logic.
- Capability inventory: The skill can execute shell commands, write files, and make outbound network requests.
- Sanitization: Basic sanitization using
urllib.parse.quoteis present infetch_score.py, but it does not prevent logic-level injection in the processed data. - [DATA_EXFILTRATION]: The skill has the capability to initiate outbound network requests to non-whitelisted domains via
urllib.request.urlopeninscripts/fetch_score.py. - While primarily used for retrieving musical data, this functionality could be leveraged for data exposure if an attacker influences the source URLs.
Audit Metadata