docx-repair
Pass
Audited by Gen Agent Trust Hub on Oct 5, 2026
Risk Level: SAFEDYNAMIC_CONTEXT_INJECTIONCOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [DYNAMIC_CONTEXT_INJECTION]: The
SKILL.mdfile uses the dynamic context injection syntax (!command) to execute a Table of Contents utility (skill-toc). The command checks for the utility in the skill directory and the user's home directory ($HOME/.claude/skills/plugin-utils/bin/skill-toc). This is a benign documentation helper used to list references and scripts at skill load time.\n- [COMMAND_EXECUTION]: Several scripts utilizesubprocess.run()to perform internal operations. For example,fix_footnotes.pyexecutes the sibling scriptcreate_crossrefs.pyusingsys.executable, andrefresh_noteref_caches.py(via thedoc_rendermodule) calls system binaries such asx2torsofficefor PDF rendering. These executions are necessary for the skill's primary document repair and rendering functions and follow safe patterns by avoidingshell=True.\n- [INDIRECT_PROMPT_INJECTION]: The skill possesses an attack surface for indirect prompt injection because it processes untrusted user-provided DOCX files. \n - Ingestion points: User-supplied DOCX files are processed by
fix_footnotes.py,check_crossrefs.py,create_crossrefs.py,docx_links.py,docx_spacers.py, andrefresh_noteref_caches.py.\n - Boundary markers: None; the agent processes the file content directly as data for repair tasks.\n
- Capability inventory: The skill has file-writing capabilities (for document repair) and subprocess execution (for chaining scripts and invoking renderers).\n
- Sanitization: The skill uses structured XML parsing (
lxml) to modify document parts, which provides inherent structure validation, but it does not specifically filter for embedded natural language instructions targeted at the agent.
Audit Metadata