SMTools Image Generation Skill

Security checks across static analysis, malware telemetry, and agentic risk

Overview

This appears to be a coherent image-generation skill, with expected cautions around API keys, external AI providers, local setup, and saved image files.

Install only if you are comfortable running its setup script, installing its Python dependency, using provider API keys, and sending prompts or selected images to OpenRouter, Kie.ai, or YandexART. Keep API keys scoped and revocable, avoid sensitive images unless necessary, and save outputs to a safe directory.

Static analysis

No static analysis findings were reported for this release.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Risk analysis

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

When invoked, the skill can use your configured image-provider accounts to submit generation requests.

Why it was flagged

The skill explicitly uses delegated provider credentials for image-generation services. This is disclosed and purpose-aligned, but those credentials can authorize account usage and billing.

Skill content
OpenRouter ... Requires `OPENROUTER_API_KEY`; Kie.ai ... Requires `KIE_API_KEY`; YandexART ... Requires `YANDEX_IAM_TOKEN` and `YANDEX_FOLDER_ID`.
Recommendation

Use provider-specific, revocable API keys with limited permissions or spend limits where available, and keep any .env file private.

What this means

Private prompts or images used for editing may be transmitted to OpenRouter or the selected provider.

Why it was flagged

For image editing, a local input image is encoded and sent in a request to the external provider. This is expected for provider-based editing, but it means image contents and prompts may leave the local machine.

Skill content
image_b64 = self._encode_image(input_image) ... requests.post(API_URL, headers=headers, json=payload, timeout=120)
Recommendation

Avoid using sensitive images or confidential prompts unless you are comfortable with the selected provider's data handling terms.

What this means

Running setup later could install a different compatible version of the Requests package.

Why it was flagged

The setup script installs dependencies from this requirements file, and the version range is not fully pinned. This is common for Python tools but allows future dependency versions to be installed.

Skill content
requests>=2.28.0
Recommendation

Run setup only for packages you trust; for stricter reproducibility, prefer pinned and hashed dependencies.

What this means

Generated images are saved locally, either in the default output directory or in a custom path if supplied.

Why it was flagged

The provider writes generated image bytes to the requested output path. This is expected for an image-generation tool, but a poorly chosen custom path could overwrite a user-accessible file.

Skill content
output_path = Path(output_path) ... output_path.parent.mkdir(parents=True, exist_ok=True) ... open(output_path, "wb")
Recommendation

Use the default output directory or specify a safe output path when asking the agent to save images.