Nanobanana Pro

PassAudited by ClawScan on May 1, 2026.

Overview

This skill appears purpose-aligned for Gemini image generation, but users should notice that it uses a Gemini API key, sends prompts/images to Gemini, installs Python dependencies, and writes output files.

This skill looks coherent and not suspicious based on the provided artifacts. Install it if you are comfortable using Gemini for image generation, sending selected prompts/images to that provider, and relying on uv-resolved Python dependencies. Use a limited Gemini API key and choose output filenames carefully.

Findings (4)

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

Using this skill can consume Gemini API quota or incur provider-side costs tied to the supplied key.

Why it was flagged

The skill requires and uses a Gemini API key to call the Gemini service. This is expected for the stated purpose, but it grants access to the user's Gemini account quota/billing context.

Skill content
parser.add_argument("--api-key", "-k", help="Gemini API key (overrides GEMINI_API_KEY env var)") ... return os.environ.get("GEMINI_API_KEY") ... client = genai.Client(api_key=api_key)
Recommendation

Use a dedicated Gemini API key with appropriate limits, prefer environment/config storage over passing keys on the command line, and revoke the key if it is no longer needed.

What this means

Private prompts or input images provided to the skill may be processed by Gemini.

Why it was flagged

For image editing/composition, user-provided images and the prompt are placed into the Gemini request. This is purpose-aligned and disclosed as a Gemini Image API skill, but it means selected local image content leaves the local machine.

Skill content
contents = [*input_images, args.prompt] ... response = client.models.generate_content(model=model_name, contents=contents, config=types.GenerateContentConfig(...))
Recommendation

Only provide images and prompts that you are comfortable sending to the Gemini API, and review Google's data handling terms for the account being used.

What this means

Future installs may use newer dependency versions than the ones originally tested by the skill author.

Why it was flagged

The uv script declares external Python dependencies with lower-bound ranges rather than exact pinned versions. This is common for uv-run scripts, but the resolved dependency versions can change over time.

Skill content
# dependencies = [
#     "google-genai>=1.0.0",
#     "pillow>=10.0.0",
# ]
Recommendation

Install from a trusted source and consider pinning or locking dependencies in controlled environments.

What this means

A mistaken or overly broad output path could create directories or overwrite an existing PNG target chosen by the user or agent.

Why it was flagged

The script saves the generated image to the provided filename and creates parent directories if needed. This is expected for an image generator, but the artifacts do not restrict the output path.

Skill content
output_path = Path(args.filename)
output_path.parent.mkdir(parents=True, exist_ok=True) ... image.save(str(output_path), 'PNG')
Recommendation

Use explicit, non-sensitive output paths and avoid pointing the filename at important existing files or protected directories.