knowledge-compiler

Pass

Audited by Gen Agent Trust Hub on Sep 14, 2026

Risk Level: SAFEINDIRECT_PROMPT_INJECTIONEXTERNAL_DOWNLOADSCOMMAND_EXECUTIONDYNAMIC_EXECUTION
Full Analysis
  • [INDIRECT_PROMPT_INJECTION]: The skill's primary function is to process external, untrusted documents (PDF, EPUB, TXT) and transform them into new AI agent instructions (a generated skill). This creates a vulnerability where a maliciously crafted document could contain hidden instructions designed to manipulate the generated skill's behavior.
  • Ingestion points: scripts/extract_source.py (line 332) reads the user-provided input file. Format-specific extractors like extract_epub and extract_pdf parse complex file structures.
  • Boundary markers: The skill instructions in SKILL.md and references/COMPILATION_PLAYBOOK.md do not explicitly command the agent to identify and ignore adversarial instructions embedded within the source documents during the compilation process.
  • Capability inventory: The system generates new executable agent logic (SKILL.md, references/*.md) and provides scripts that utilize subprocess and uv to manage the resulting skill.
  • Sanitization: Metadata such as job IDs and filenames are sanitized via slugify, but the extracted text content is passed directly to the model for logic synthesis.
  • [EXTERNAL_DOWNLOADS]: The skill scripts (scripts/extract_docling.py, scripts/extract_pdfminer.py, scripts/extract_pypdf.py) use the uv run --script pattern with inline dependency declarations. This triggers the download and caching of Python packages (docling, pdfminer.six, PyPDF2) from the standard PyPI registry during first execution. These are well-known, industry-standard libraries for document processing.
  • [COMMAND_EXECUTION]: The script scripts/extract_source.py calls external utilities like pdftotext and pdfinfo using subprocess.run. These calls are implemented using argument lists rather than shell strings, which is a secure implementation that prevents shell injection.
  • [DYNAMIC_EXECUTION]: The skill dynamically generates a folder structure and executable instructions for a new skill using scripts/build_skill_skeleton.sh. This includes using heredocs to write Shell and Python scripts to the dist/ directory, which are then used to manage the generated skill's metadata.
Audit Metadata
Risk Level
SAFE
Analyzed
Sep 14, 2026, 04:19 PM