nano-banana-pro-openrouter — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited nano-banana-pro-openrouter (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Attribution: Sourced from github/awesome-copilot by GitHub Community, licensed MIT. Modified for this collection.
Generate or edit images with OpenRouter using the google/gemini-3-pro-image-preview model. Support prompt-only generation, single-image edits, and multi-image composition.
uv run {baseDir}/scripts/generate_image.py \
--prompt "A cinematic sunset over snow-capped mountains" \
--filename sunset.pnguv run {baseDir}/scripts/generate_image.py \
--prompt "Replace the sky with a dramatic aurora" \
--input-image input.jpg \
--filename aurora.pnguv run {baseDir}/scripts/generate_image.py \
--prompt "Combine the subjects into a single studio portrait" \
--input-image face1.jpg \
--input-image face2.jpg \
--filename composite.png--resolution with 1K, 2K, or 4K.1K if not specified.The skill reads an optional system prompt from assets/SYSTEM_TEMPLATE. This allows you to customize the image generation behavior without modifying code.
--input-image.--filename accepts relative paths (saves to current directory) or absolute paths.-1, -2, etc. to the filename.MEDIA: <path> for each saved image. Do not read images back into the response.If the script exits non-zero, check stderr against these common blockers:
| Symptom | Resolution |
|---|---|
OPENROUTER_API_KEY is not set | Ask the user to set it. PowerShell: $env:OPENROUTER_API_KEY = "sk-or-..." / bash: export OPENROUTER_API_KEY="sk-or-..." |
uv: command not found or not recognized | Install uv with a package manager when available: brew install uv on macOS or winget install --id astral-sh.uv -e on Windows. For the standalone installer, download it to a file, inspect it, and execute that saved file as shown below. Then restart the terminal. |
AuthenticationError / HTTP 401 | Key is invalid or has no credits. Verify at <https://openrouter.ai/settings/keys>. |
Standalone installer fallback:
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh -o uv-install.sh
less uv-install.sh
sh uv-install.sh
rm uv-install.sh# Windows PowerShell
Invoke-WebRequest https://astral.sh/uv/install.ps1 -OutFile uv-install.ps1
Get-Content uv-install.ps1 | More
powershell -ExecutionPolicy ByPass -File .\uv-install.ps1
Remove-Item .\uv-install.ps1Do not execute the downloaded installer until its contents have been reviewed. The canonical installation options are documented at <https://docs.astral.sh/uv/getting-started/installation/>.
For transient errors (HTTP 429, network timeouts), retry once after 30 seconds. Do not retry the same error more than twice — surface the issue to the user instead.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.