Back to plugin
Pluginv1.0.8

ClawScan security

AI Image Generator & Editor — GPT Image 2, Nanobanana, ComfyUI · ClawHub's context-aware review of the artifact, metadata, and declared behavior.

Scanner verdict

SuspiciousApr 29, 2026, 5:32 AM
Verdict
suspicious
Confidence
medium
Model
gpt-5-mini
Summary
The skill's stated purpose (AI image generation) matches the functionality, but there are several internal inconsistencies and undeclared requirements (config path, env vars, a shell dependency) plus contradictory runtime instructions that deserve attention before installing.
Guidance
What to consider before installing: - The plugin legitimately needs API keys or a local ComfyUI endpoint to generate images. If you plan to use generation, you'll be asked to paste API keys or a curl command; those will be parsed and saved to ~/.config/meigen/config.json. Only proceed if you trust the provider and are comfortable storing a token on disk. - Manifest omissions: the package metadata does not list the config path (~/.config/meigen/config.json) or the optional env vars it reads (MEIGEN_API_TOKEN, OPENAI_API_KEY, COMFYUI_URL). Expect the plugin to create and read that file; check its contents after setup and ensure it's chmod 600 as promised. - Contradictory instructions: some parts forbid reading local files while others accept local file paths; clarify whether you will be asked to let the agent read local images/workflow files. If you do not want local file access, avoid supplying local paths. - Secret-handling caution: when using the "Import from curl" option, only paste commands you trust and inspect the parsed results before confirming; the skill will try to extract API keys automatically and could capture unrelated keys if you paste a command containing them. - Hook dependency: hooks/open-image.sh uses jq and macOS 'open' — the manifest doesn't declare jq as required. If you rely on post-generation auto-open behavior, ensure jq is installed and understand the hook only runs on SessionStart/PostToolUse as configured. - Testing: consider testing in a throwaway session first (or with a limited-scope API key) to confirm behavior. Inspect ~/.config/meigen/config.json after setup to verify what was written. If you have strict security needs, avoid pasting keys into the chat and prefer manual config management. If you want, I can list the exact places in the files where these inconsistencies appear and suggest specific questions to ask the skill author (e.g., "Why isn't ~/.config/meigen declared in the manifest?", "Do you really need to parse arbitrary curl commands to extract API keys?").

Review Dimensions

Purpose & Capability
noteThe skill is an image-generation/creative-workflow plugin and legitimately needs API keys or a local ComfyUI URL to generate images. However, the registry metadata declares no required environment variables or config paths while the SKILL.md and hooks clearly read/write ~/.config/meigen/config.json and reference env vars (MEIGEN_API_TOKEN, OPENAI_API_KEY, COMFYUI_URL). The omission in metadata is a provenance/manifest mismatch.
Instruction Scope
concernRuntime instructions include sensitive operations: prompting the user to paste API keys or curl commands (the skill will parse/extract API keys), instructing the agent to read and write ~/.config/meigen/config.json, and accepting local file paths for reference images/workflows. There are also internal contradictions: the image-generator agent says "Do NOT read any files" while other flows accept local file paths and the setup flow asks for local workflow files to import. Another contradiction: commands/gen says to show a creative comment after generation, but other parts (visual-creative rules) forbid creative commentary. These inconsistencies could cause unexpected behavior or accidental exposure of secrets if misused.
Install Mechanism
okNo install spec (instruction-only) — lowest-risk install vector. The only files that run on hooks are small shell scripts included in the bundle, not remote downloads. That's appropriate for this type of plugin.
Credentials
concernThe skill legitimately needs API keys or a local ComfyUI URL for image generation, but the package metadata does not declare any required env vars or config paths while the documentation and scripts expect MEIGEN_API_TOKEN, OPENAI_API_KEY, OPENAI_BASE_URL, COMFYUI_URL and read/write ~/.config/meigen/config.json. The setup flow also parses user-pasted curl commands to extract API keys automatically — which is convenient but increases the chance of accidentally capturing unrelated secrets if the user pastes commands containing other keys.
Persistence & Privilege
noteThe skill writes a config file to ~/.config/meigen/config.json (via the Write tool) and sets permissions. This is expected for a client that stores API tokens, and the skill is not always:true nor modifying other skills. Still, the manifest omitted the config path requirement and the hooks will run SessionStart/PostToolUse actions (open-image.sh attempts to open files on macOS). Also open-image.sh depends on jq and open being available though the manifest lists no required binaries.