proposal-publish
Pass
Audited by Gen Agent Trust Hub on Oct 17, 2026
Risk Level: SAFECOMMAND_EXECUTIONDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The script
scripts/publish.pyexecutes external tools includingpandoc,typst, and various LaTeX engines (such asxelatexortectonic) viasubprocess.run. This is the primary intended function of the skill to facilitate document compilation. The script is securely designed to use list-based arguments withoutshell=True, which minimizes command injection risks. - [DYNAMIC_EXECUTION]: During the publishing workflow, the skill generates intermediate files in Typst (
.typ) or LaTeX (.tex) format by merging user content with internal templates. These files are then dynamically compiled into the final PDF. This is standard behavior for document processing pipelines and does not involve executing untrusted code from remote sources. - [INDIRECT_PROMPT_INJECTION]: The skill processes user-provided markdown files and incorporates their contents into formatted templates. This creates an indirect injection surface if the input files contain malicious document engine commands.
- Ingestion points: The content of the user's proposal markdown file, which is read and processed by
scripts/publish.pyand its associated Lua filters. - Boundary markers: The skill uses Pandoc filters to identify document structures (like titles and research questions), but does not implement explicit delimiters to isolate or escape potentially malicious document macros (e.g., LaTeX or Typst commands) embedded within the user text.
- Capability inventory: The skill utilizes
subprocess.runto call document compilers that have access to the local file system for the purpose of generating document outputs. - Sanitization: No explicit sanitization or stripping of document engine macros is performed on the input text before it is passed to the compilers.
Audit Metadata