ppt-artisan
Warn
Audited by Gen Agent Trust Hub on Mar 4, 2026
Risk Level: MEDIUMCOMMAND_EXECUTIONREMOTE_CODE_EXECUTIONEXTERNAL_DOWNLOADS
Full Analysis
- [COMMAND_EXECUTION]: In
src/lib.ts, the skill useschild_process.execSyncto invoke the Marp CLI for PowerPoint generation. The command is constructed by concatenating variables including themarpCmd,inputPath, andoutputPath. While the paths are enclosed in double quotes, the lack of robust shell escaping for these paths presents a potential risk if filenames contain shell metacharacters. - [REMOTE_CODE_EXECUTION]: The skill logic in
src/lib.tsincludes a fallback mechanism that executesnpx -y @marp-team/marp-cliif a local binary is not detected. This results in the dynamic download and execution of the Marp CLI package from the npm registry at runtime. - [EXTERNAL_DOWNLOADS]: The skill leverages
npxto fetch the Marp CLI from a well-known service (the npm registry) when the local dependency is missing. - [INDIRECT_PROMPT_INJECTION]: The skill provides an attack surface by processing external Markdown and PPTX files which are then passed to internal utilities and external CLI tools.
- Ingestion points: Input files provided via the
--inputand--distillflags insrc/index.ts. - Boundary markers: The skill does not implement specific boundary markers or 'ignore' instructions for the data processed by the Marp CLI.
- Capability inventory: The skill can execute subprocesses (
execSync), write to the file system (fs.writeFileSync), and extract design assets. - Sanitization: Filenames are partially sanitized by replacing spaces with underscores in
src/lib.ts, but the content of the files and the full path strings are not fully sanitized against injection into the shell command.
Audit Metadata