audio-transcriber
Pass
Audited by Gen Agent Trust Hub on Nov 6, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTIONCOMMAND_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted audio recordings and converts them into text transcripts. If these transcripts are subsequently passed to an LLM (via the optional
--llm claudeflag), there is a risk of indirect prompt injection where malicious instructions embedded in the audio could influence the LLM's behavior. - Ingestion points: Audio and video files are ingested and transcribed via the
scripts/transcribe.pyscript. - Boundary markers: The script mitigates injection by wrapping the transcript in a JSON string and prepending a clear instruction to the LLM to treat the data as an untrusted summary target, not as executable instructions.
- Capability inventory: The agent can write transcript files to the local disk and execute the Claude CLI for summarization.
- Sanitization: Transcript content is HTML-escaped using
html.escapebefore being saved to Markdown files to prevent script injection in Markdown viewers. - [DYNAMIC_EXECUTION]: The transcription script utilizes dynamic module loading for standard Python libraries.
- Evidence:
scripts/transcribe.pyuses__import__("uuid")and__import__("html")at runtime to generate unique identifiers and escape transcript content. While these are standard libraries, the use of dynamic loading is noted. - [COMMAND_EXECUTION]: The skill executes external command-line tools to perform its primary functions.
- Evidence:
scripts/transcribe.pyusessubprocess.runto invoke theclaudeCLI for summarization. The implementation is secure, using a list of arguments rather than a shell string, and includes hardening flags such as--bare,--tools '', and--no-session-persistenceto restrict the CLI's environment during execution.
Audit Metadata