CAUTION version 1.0.0 · audited 2026-09-17
The package is a small skill card: it declares the nano-pdf CLI as a dependency and instructs the agent to run commands such as `nano-pdf edit deck.pdf 1 ...` to modify a PDF. It contains no executable payload, no credential or wallet code, no persistence, and no hidden network endpoints. The observed network use is limited to links to PyPI and ClawHub, and installation of nano-pdf via uv. The main concern is that the external Python package is not version-pinned, so installation could pull a changed or compromised release. The publisher's own notes recommend a sandboxed install and reviewing output PDFs. For an agent that can execute shell commands and touch local files, this warrants review, but there is no evidence of malicious behavior.
| Declared purpose | Edit PDFs with natural-language instructions using the nano-pdf CLI. |
| Observed behavior | The skill documentation tells the agent to install `nano-pdf` through uv and run `nano-pdf edit deck.pdf 1 "..."` in bash. It provides notes about 0-based/1-based page numbering and checking output PDFs. No other code or runtime behavior is present in the provided files. |
| Verdict, rules only | SAFE |
| Verdict, AI | CAUTION |
| Final verdict | CAUTION (never better than either pass) |
| capability | vs purpose | detail |
|---|---|---|
| install_packages | needed | SKILL.md line 5 instructs the registry to install `nano-pdf` via `uv` from PyPI. |
| shell | needed | SKILL.md line 14 opens a bash block and line 15 shows the command `nano-pdf edit deck.pdf 1 "..."` to be executed. |
| filesystem_read | needed | The documented `nano-pdf edit deck.pdf` command implies reading a local PDF file as input. |
| filesystem_write | needed | The tool's purpose is to edit PDFs, which produces a modified PDF file. |
| network | needed | Installation fetches `nano-pdf` from PyPI; SKILL.md line 4 points to the PyPI project page. |
| severity | finding |
|---|---|
| medium | Unpinned third-party install The metadata installs nano-pdf from PyPI through uv without a pinned version. A future changed or compromised release could affect the agent's environment. SKILL.md:5 "install":[{"id":"uv","kind":"uv","package":"nano-pdf","bins":["nano-pdf"],"label":"Install nano-pdf (uv)"}] |
| low | Shell command that modifies a PDF The skill instructs running a CLI that reads and writes a local PDF file. This is consistent with the declared purpose but should be reviewed for sensitive documents. SKILL.md:15 nano-pdf edit deck.pdf 1 "Change the title to 'Q3 Results' and fix the typo in the subtitle" |
| info | External package source The skill points to the PyPI project page for nano-pdf, which is the source of the installed CLI. SKILL.md:4 homepage: https://pypi.org/project/nano-pdf/ |
| medium | Publisher acknowledges unpinned dependency The publisher's own risk note confirms the external package is not pinned, which is a supply-chain and reproducibility concern. skill-card.md:24 Risk: The skill depends on the external nano-pdf Python package as resolved by uv, and the package is not pinned by the skill metadata. |
| info | Publisher recommends sandboxing The mitigation advice supports a cautious installation approach, especially when handling sensitive PDFs. skill-card.md:26 Mitigation: Use a pinned or sandboxed install when processing sensitive documents or when reproducibility is required. |
| info | Output verification guidance The skill tells the agent to review the modified PDF before distribution, which is relevant because edits may be incorrect or unintended. SKILL.md:20 Always sanity-check the output PDF before sending it out. |
| info | ClawHub publisher link The skill card links to a ClawHub user page. This is informational and not shown as a runtime data endpoint. skill-card.md:9 [steipete](https://clawhub.ai/user/steipete) |
0 AI finding(s) were dropped because their file, line or quote did not match the package.
| domain | service rating | where |
|---|---|---|
| clawhub.ai | not in the service index | skill-card.md:9 |
| pypi.org | not in the service index | SKILL.md:4 |
| Binaries invoked | bash, uv |
| Environment variables read | none |
| Hard-coded wallets | none |
| Pipes a download to a shell | 0 |
| eval / exec / subprocess | 0 |
| base64 blobs | 0 |
| File writes | 0 |
| Persistence | 0 |
| file | lines | sha256 |
|---|---|---|
SKILL.md | 20 | 4a19c3916062a0b2… |
_meta.json | 6 | 887b322c508c0bb9… |
skill-card.md | 57 | fa01545214a5004b… |
For agents
JSON: https://agenteconomy.report/k/nano-pdf.audit.json · badge: https://agenteconomy.report/k/nano-pdf.audited.svg ·
skill rating: /k/nano-pdf · commission an audit of any skill: US$ 29 per version.
The complete published package of this exact version was downloaded from the registry and read statically; nothing was executed. A deterministic pass extracts network destinations, binaries, environment variables, writes, install commands, obfuscation markers, subprocesses and wallets, each with file and line. An AI then reads the whole package with those facts and writes the summary, the capabilities and the findings under a strict schema; every finding it produces must cite a file, a line and the exact text, or it is dropped. The final verdict is the worst of the two passes. The audit does not change the skill's trust tier (policy); the author may respond through the dispute channel and the response is published here. Commissioned by: the Agent Economy Report (free program: the 150 most downloaded skills, September 2026).