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.run function to execute external binaries for audio processing, metadata extraction, and data retrieval.
  • Affected binaries include ffmpeg, ffprobe, fluidsynth, and curl.
  • Commands are found in m21kit/render.py (lines 126, 155, 235), m21kit/verify.py (lines 200, 219), and scripts/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) in m21kit/render.py (line 126).
  • The scripts/fetch_score.py utility can download musical scores in various formats from multiple external domains including GitHub, kernscores.stanford.edu, thesession.org, and mutopiaproject.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) and scripts/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.quote is present in fetch_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.urlopen in scripts/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
Risk Level
SAFE
Analyzed
Aug 22, 2026, 08:36 PM
Security Audit — agent-trust-hub — programmatic-music