This skill risks arbitrary file writes and remote
Claims to do
Agent Skills standard frontmatter (agentskills.io): name: revise-ppt version: "1.0" description: > Interactively revise slides through a 3-step interview workflow: select target slides, describe changes per slide, apply edits to the markdown source and regenerate the PPTX. Markdown is the single source of truth. Optionally renders PNG slide previews via LibreOffice headless; falls back to markdown text when LibreOffice is unavailable. license: MIT author: Jinwang Mok requires_python: ">=3.10" dependencies: - "python-pptx>=0.6.21" - "pyyaml>=6.0" - "markdown-it-py>=3.0" trigger: /revise-ppt entry: skills/revise-ppt/revise_ppt.py plugin: agent4ppt tags: - pptx - presentation - markdown - revision - interactive compatibility: - claude-code - openclaw - codex-cli lang: - en - ko ---
Actually does
This skill executes a Python script (`revise_ppt.py`) to interactively revise a markdown file, which serves as the source for a presentation. It reads the markdown and an optional PPTX file, uses `libreoffice` to generate PNG slide previews (or falls back to text), prompts the user for changes, updates the markdown file in place, and then calls another tool (`generate-ppt`) to create a new PPTX. It also manages a JSON state file for revision tracking and attempts to auto-install Python dependencies using `pip`.
Shell command execution function detected
subprocess.run
The skill executes `libreoffice --headless` with user-controlled input (`presentation.pptx`) and an output directory (`--outdir`) derived from user input (`<pptx_stem>_previews/`). This creates a risk of arbitrary file writes via path traversal in the output directory path or remote code execution if a malicious PPTX exploits LibreOffice vulnerabilities.
libreoffice --headless --convert-to png --outdir <pptx_stem>_previews/ presentation.pptx
The skill automatically attempts to install missing Python dependencies using `pip install` via `subprocess.run`. While the package names are hardcoded, this involves executing external commands. The use of `--break-system-packages` could potentially affect system-managed Python environments.
subprocess.run(cmd, timeout=120) with base_cmd = [sys.executable, "-m", "pip", "install", *pkg_specs] and base_cmd + ["--break-system-packages"]
The skill delegates the critical function of regenerating the PPTX to an external, unspecified `generate-ppt` subprocess. The security and integrity of the overall workflow depend entirely on the trustworthiness and vulnerability status of this external tool.
A new PPTX is generated by delegating to generate-ppt. [agent4ppt] PPTX generated → <path> ← emitted by the generate-ppt subprocess
[](https://mondoo.com/ai-agent-security/skills/github/JinwangMok/agent4ppt/revise-ppt)<a href="https://mondoo.com/ai-agent-security/skills/github/JinwangMok/agent4ppt/revise-ppt"><img src="https://mondoo.com/ai-agent-security/api/badge/github/JinwangMok/agent4ppt/revise-ppt.svg" alt="Mondoo Skill Check" /></a>https://mondoo.com/ai-agent-security/api/badge/github/JinwangMok/agent4ppt/revise-ppt.svgSkills can read files, run commands, and access credentials. Mondoo helps organizations manage the security risks of AI agent skills across their entire fleet.