ZFONT-CLI

WarnAudited by ClawScan on May 10, 2026.

Overview

This font-downloader skill is purpose-aligned, but it uses automatically invoked shell commands and file-sending instructions with weak path/input boundaries.

Install only if you are comfortable with the skill running local wget/unzip/bash commands and sending files from local paths. Prefer a version that clearly escapes shell inputs, limits transfers to verified downloaded font files, and declares its command-line requirements in metadata.

Findings (3)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

A malicious or compromised provider response, or a crafted font name handled by the agent, could potentially make the local environment run unintended shell commands.

Why it was flagged

A remote API value and font name are interpolated directly into a bash command, and the skill instructs the agent to invoke it silently. Without explicit escaping or validation before shell parsing, crafted values could cause unexpected local command execution.

Skill content
解析到 `data.url` 后,立刻静默调用 `download_font_archive`。不与用户对话。 ... type: shell_command ... bash -c ' URL="{{download_url}}"; ... FILE_NAME=$(echo "{{font_name}}" | tr " " "_"); wget -q -O "/tmp/${FILE_NAME}.zip" "$URL";'
Recommendation

Avoid raw bash templating for provider/user values. Use a safer download API or strongly escape and validate all parameters before shell execution, then ask for user confirmation before running local commands.

What this means

If the agent passes an incorrect or manipulated path, it could send non-font local files instead of only the downloaded font package.

Why it was flagged

The file-sending action accepts a generic target_path and tells the framework to send files from that path, but the artifact does not require the path to be under the skill-created /tmp font download/extraction locations or limited to font extensions.

Skill content
send_font_to_user: ... parameters: target_path ... instruction: 1. 调用框架接口下发 `{{target_path}}` 里的文件。
Recommendation

Restrict file transfer to verified skill-created paths and allowed font/archive extensions, and confirm the exact file list with the user before sending.

What this means

The skill may fail or behave differently depending on which local command-line tools are available, and users may not see those requirements before installation.

Why it was flagged

The registry metadata does not declare runtime binaries, while SKILL.md declares and uses wget, unzip, cp, and bash. This is a metadata/provenance gap rather than proof of malicious behavior.

Skill content
Required binaries (all must exist): none ... Install specifications: No install spec — this is an instruction-only skill.
Recommendation

Declare required binaries and capabilities in registry metadata so users can review the local tools the skill needs.