{"_id":"@blackbelt-technology/pi-dashboard-nano-banana","_rev":"6-115834c3e766470be7119167ad569f14","name":"@blackbelt-technology/pi-dashboard-nano-banana","dist-tags":{"latest":"0.9.0"},"versions":{"0.5.4":{"name":"@blackbelt-technology/pi-dashboard-nano-banana","version":"0.5.4","keywords":["pi-package","pi-skill","nano-banana","image-generation","gemini","text-to-image","image-editing"],"license":"MIT","_id":"@blackbelt-technology/pi-dashboard-nano-banana@0.5.4","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"pi":{"skills":[".pi/skills/nano-banana-imagegen"]},"bin":{"pi-nano-banana":"src/bin/nano-banana.ts"},"dist":{"shasum":"27bc9253e784aa8aa5a50caca35bdead51129f77","tarball":"https://registry.npmjs.org/@blackbelt-technology/pi-dashboard-nano-banana/-/pi-dashboard-nano-banana-0.5.4.tgz","fileCount":13,"integrity":"sha512-MbOP6DD0uTBmQ/PIEfZv85abJvBwQOyvK5mgFh37zNavl602S4o3RNXd+VNphVgjfN10dP2D+F+jS3HP5AksLg==","signatures":[{"sig":"MEYCIQDPLJt80ncRtYvWo8T4v6NalPAy9BLntmMrzgi9JUshMgIhAP5XkvPLHWWdj2edkWwSFdw/RSDQwpooljcQz4Y/IpcQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39276},"type":"module","exports":{"./*":"./src/*","./*.js":"./src/*.ts"},"gitHead":"2c4a705a7c268971cb11f5dc4a3109e81cbb5930","scripts":{"test":"vitest run"},"_npmUser":{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/nano-banana"},"_npmVersion":"10.9.3","description":"TypeScript port of the nano-banana-imagegen pi skill. Generate and edit images with Google Gemini image models via the @the-focus-ai/nano-banana CLI, with GEMINI_API_KEY resolution, output-path handling and batch generation. Exposed as a pi skill and the ","directories":{},"_nodeVersion":"24.15.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.5.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-dashboard-nano-banana_0.5.4_1784506517420_0.16379361622951172","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@blackbelt-technology/pi-dashboard-nano-banana","version":"0.6.0","keywords":["pi-package","pi-skill","nano-banana","image-generation","gemini","text-to-image","image-editing"],"license":"MIT","_id":"@blackbelt-technology/pi-dashboard-nano-banana@0.6.0","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"pi":{"skills":[".pi/skills/nano-banana-imagegen"]},"bin":{"pi-nano-banana":"src/bin/nano-banana.ts"},"dist":{"shasum":"7d44bfbeefbc5def3cc9889d59158a420b0b2103","tarball":"https://registry.npmjs.org/@blackbelt-technology/pi-dashboard-nano-banana/-/pi-dashboard-nano-banana-0.6.0.tgz","fileCount":13,"integrity":"sha512-JAeklsXt/ZDjaU9zA0jCbGk+4bN/z9iI8Mjy7cW90aNYiM/Vb0LDi2mw8ltRSJYAcgr2RXmDRWQ6HUCzvjY01A==","signatures":[{"sig":"MEQCICDrwpTpwmCZCFpBV48G1b/DmckCGoAQuib2fdUmo73aAiAwo0jC4Z3HsYdbIChLFM7q1UdYTmZzpcR1h7tXPGrTZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fpi-dashboard-nano-banana@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":39276},"type":"module","exports":{"./*":"./src/*","./*.js":"./src/*.ts"},"gitHead":"70c087ba97d3b7a9997767f7c9c758ac49d998f2","scripts":{"test":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a437e0dd-8cb2-400a-9058-5a7903978585"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/nano-banana"},"_npmVersion":"11.12.1","description":"TypeScript port of the nano-banana-imagegen pi skill. Generate and edit images with Google Gemini image models via the @the-focus-ai/nano-banana CLI, with GEMINI_API_KEY resolution, output-path handling and batch generation. Exposed as a pi skill and the ","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-dashboard-nano-banana_0.6.0_1784565568328_0.3047116990394949","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@blackbelt-technology/pi-dashboard-nano-banana","version":"0.6.1","keywords":["pi-package","pi-skill","nano-banana","image-generation","gemini","text-to-image","image-editing"],"license":"MIT","_id":"@blackbelt-technology/pi-dashboard-nano-banana@0.6.1","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"pi":{"skills":[".pi/skills/nano-banana-imagegen"]},"bin":{"pi-nano-banana":"src/bin/nano-banana.ts"},"dist":{"shasum":"de9ba1be4936fda471437f734aff7e0fb716b0a7","tarball":"https://registry.npmjs.org/@blackbelt-technology/pi-dashboard-nano-banana/-/pi-dashboard-nano-banana-0.6.1.tgz","fileCount":13,"integrity":"sha512-MpTBwoGuuFEniN8UFz7qd3rWQVjFWGsnqgpgtyYsPHLhHLRe0SmFyshjWPD4DRlzrO7FmA3EuzBclb8zd6pzww==","signatures":[{"sig":"MEQCIFaMLzlhyVx0Ryfje3EqoItcxm1WREtpqLZXhlNCNDDzAiASYLItoGnQQ2QGuxZ7vBr+YRZVdjTGHB8HAPu8Uhx3eA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fpi-dashboard-nano-banana@0.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":39276},"type":"module","exports":{"./*":"./src/*","./*.js":"./src/*.ts"},"gitHead":"88a0cf3cc7d7c7c4e44eb61df3cceff19ed919ad","scripts":{"test":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a437e0dd-8cb2-400a-9058-5a7903978585"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/nano-banana"},"_npmVersion":"11.12.1","description":"TypeScript port of the nano-banana-imagegen pi skill. Generate and edit images with Google Gemini image models via the @the-focus-ai/nano-banana CLI, with GEMINI_API_KEY resolution, output-path handling and batch generation. Exposed as a pi skill and the ","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.6.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-dashboard-nano-banana_0.6.1_1784571710155_0.27700828459083415","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@blackbelt-technology/pi-dashboard-nano-banana","version":"0.7.0","keywords":["pi-package","pi-skill","nano-banana","image-generation","gemini","text-to-image","image-editing"],"license":"MIT","_id":"@blackbelt-technology/pi-dashboard-nano-banana@0.7.0","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"pi":{"skills":[".pi/skills/nano-banana-imagegen"]},"bin":{"pi-nano-banana":"src/bin/nano-banana.ts"},"dist":{"shasum":"e0f2af0590bd72ab0f75d551afe7173b90cc9351","tarball":"https://registry.npmjs.org/@blackbelt-technology/pi-dashboard-nano-banana/-/pi-dashboard-nano-banana-0.7.0.tgz","fileCount":13,"integrity":"sha512-au5W8cJ/VaIKvIy6f+VzDz+gSNg0EN7L5VBt6v3Iwpko5wPU1/6CY6nbH+WKdDtAPHbtdaLyLs6CAS/uZ6f4Lg==","signatures":[{"sig":"MEYCIQDCLwm1SvBpjSPkoJdlFc6eeHPWiXG6nfV2xMykCf12DgIhAI47waCUwx05ANs2BEGQ4BjzrZO304w3EIEkoudVdVSH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fpi-dashboard-nano-banana@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":39276},"type":"module","exports":{"./*":"./src/*","./*.js":"./src/*.ts"},"gitHead":"9203d6a89f1b81c516e9351072ee5cb4c6579e0a","scripts":{"test":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a437e0dd-8cb2-400a-9058-5a7903978585"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/nano-banana"},"_npmVersion":"12.0.1","description":"TypeScript port of the nano-banana-imagegen pi skill. Generate and edit images with Google Gemini image models via the @the-focus-ai/nano-banana CLI, with GEMINI_API_KEY resolution, output-path handling and batch generation. Exposed as a pi skill and the ","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependencies":{"typebox":"*","@earendil-works/pi-coding-agent":"*"},"peerDependenciesMeta":{"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-dashboard-nano-banana_0.7.0_1784899069325_0.007684533831604501","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@blackbelt-technology/pi-dashboard-nano-banana","version":"0.8.0","keywords":["pi-package","pi-skill","nano-banana","image-generation","gemini","text-to-image","image-editing"],"license":"MIT","_id":"@blackbelt-technology/pi-dashboard-nano-banana@0.8.0","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"pi":{"skills":[".pi/skills/nano-banana-imagegen"]},"bin":{"pi-nano-banana":"src/bin/nano-banana.ts"},"dist":{"shasum":"a5dcf6fe7b537b026b741d54bcdaee48044418ff","tarball":"https://registry.npmjs.org/@blackbelt-technology/pi-dashboard-nano-banana/-/pi-dashboard-nano-banana-0.8.0.tgz","fileCount":12,"integrity":"sha512-wrpmcjMCI02rqjOJPJBNTM5jok7el3b4VvU9gKALULUEs1cZR0BhhVmL6KV3r66liSWZWOQRa3xnlgvITKThEw==","signatures":[{"sig":"MEQCIAhaEFCVNKq7C7WISpT5pbhQ9zsMIaq5k0/0OAL31gu9AiBtHsSgfsk2pP6KI9m9h1Wskqp9JfgdgxVRh+BHYsfuHA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fpi-dashboard-nano-banana@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41918},"type":"module","exports":{"./*":"./src/*","./*.js":"./src/*.ts"},"gitHead":"9373dfa416660a285475febc0383608fe14270b1","scripts":{"test":"vitest run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a437e0dd-8cb2-400a-9058-5a7903978585"}},"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/nano-banana"},"_npmVersion":"12.0.2","description":"TypeScript port of the nano-banana-imagegen pi skill. Generate and edit images with Google Gemini image models via the @the-focus-ai/nano-banana CLI, with GEMINI_API_KEY resolution, output-path handling and batch generation. Exposed as a pi skill and the ","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typebox":">=1.3.6","@earendil-works/pi-coding-agent":">=0.80.10"},"peerDependencies":{"typebox":">=1.3.6","@earendil-works/pi-coding-agent":">=0.80.10"},"peerDependenciesMeta":{"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-dashboard-nano-banana_0.8.0_1787745981752_0.16046236057302732","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"pi":{"tools":[{"id":"GEMINI_API_KEY","probe":"env"}],"skills":[".pi/skills/nano-banana-imagegen"]},"_id":"@blackbelt-technology/pi-dashboard-nano-banana@0.9.0","bin":{"pi-nano-banana":"src/bin/nano-banana.ts"},"bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"dist":{"shasum":"71882e3a7322644e917d6b5b43160b94b7b5646f","tarball":"https://registry.npmjs.org/@blackbelt-technology/pi-dashboard-nano-banana/-/pi-dashboard-nano-banana-0.9.0.tgz","fileCount":13,"integrity":"sha512-cO4FytVTMRJprdGir8cPUyntKjb7lHGxm1Fb/Nb+D8xRlcDz+02O+lvVJWsmg7spXnXeXBMQNfqQ06JVq++rXQ==","signatures":[{"sig":"MEUCIG9eqSGPjdRgGpcAtgMv9HCpev+ZFHuYpqgB5MOx+hS+AiEAw02YhkCyuWrRlkq9dzL2/Ehsj8LOqrzewov/CCaR2dU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCrJZAJ+t57nbXF9jO2XOCdL39r957bUlJf63AKhFN9JAIhANSvRHHwY4Hty5sVjXvrQZ7f0snrS2vVF1C+VxPKS07p"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@blackbelt-technology%2fpi-dashboard-nano-banana@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":62816},"name":"@blackbelt-technology/pi-dashboard-nano-banana","type":"module","exports":{"./*":"./src/*","./*.js":"./src/*.ts"},"gitHead":"60a155465d55e4438e1425c07b0ab5459083a9b5","license":"MIT","scripts":{"test":"vitest run"},"version":"0.9.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"a437e0dd-8cb2-400a-9058-5a7903978585"}},"homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","keywords":["pi-package","pi-skill","nano-banana","image-generation","gemini","text-to-image","image-editing"],"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/nano-banana"},"_npmVersion":"12.2.0","description":"TypeScript port of the nano-banana-imagegen pi skill. Generate and edit images with Google Gemini image models via the @the-focus-ai/nano-banana CLI, with GEMINI_API_KEY resolution, output-path handling and batch generation. Exposed as a pi skill and the ","directories":{},"maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"_nodeVersion":"24.21.0","dependencies":{"@blackbelt-technology/pi-dashboard-shared":"^0.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typebox":">=1.3.6","@earendil-works/pi-coding-agent":"^1.0.0"},"peerDependencies":{"typebox":">=1.3.6","@earendil-works/pi-coding-agent":">=1.0.0"},"peerDependenciesMeta":{"@earendil-works/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-dashboard-nano-banana_0.9.0_1791297008537_0.7341318315677041"}}},"time":{"created":"2026-07-20T00:15:17.332Z","modified":"2026-10-06T14:30:09.381Z","0.5.4":"2026-07-20T00:15:17.581Z","0.6.0":"2026-07-20T16:39:28.455Z","0.6.1":"2026-07-20T18:21:50.287Z","0.7.0":"2026-07-24T13:17:49.453Z","0.8.0":"2026-08-26T12:06:21.952Z","0.9.0":"2026-10-06T14:30:08.618Z"},"bugs":{"url":"https://github.com/BlackBeltTechnology/pi-agent-dashboard/issues"},"license":"MIT","homepage":"https://github.com/BlackBeltTechnology/pi-agent-dashboard#readme","keywords":["pi-package","pi-skill","nano-banana","image-generation","gemini","text-to-image","image-editing"],"repository":{"url":"git+https://github.com/BlackBeltTechnology/pi-agent-dashboard.git","type":"git","directory":"packages/nano-banana"},"description":"TypeScript port of the nano-banana-imagegen pi skill. Generate and edit images with Google Gemini image models via the @the-focus-ai/nano-banana CLI, with GEMINI_API_KEY resolution, output-path handling and batch generation. Exposed as a pi skill and the ","maintainers":[{"name":"mbotond","email":"botond.molnar@blackbelt.hu"},{"name":"mrbence","email":"dbence10@gmail.com"},{"name":"robertcsakany","email":"robert.csakany@blackbelt.hu"},{"name":"norbert.herczeg","email":"norbert.herczeg@blackbelt.hu"}],"readme":"# @blackbelt-technology/pi-dashboard-nano-banana\n\nTypeScript port of the standalone `nano-banana-imagegen` pi skill — no Python.\nGenerate and edit images with Google's Gemini image models via the\n[`@the-focus-ai/nano-banana`](https://www.npmjs.com/package/@the-focus-ai/nano-banana)\nCLI, wrapped with automatic `GEMINI_API_KEY` resolution, output-path handling and\nbounded-concurrency batch generation.\n\nExposed two ways:\n\n- **pi skill** — `.pi/skills/nano-banana-imagegen` (auto-loads on image-gen requests).\n- **CLI bin** — `pi-nano-banana`.\n\n## Usage\n\n```bash\npi-nano-banana \"a serene mountain landscape at sunset\"\npi-nano-banana \"add a hot air balloon to the sky\" --file photo.jpg\npi-nano-banana \"a minimalist logo\" --output logo.png --model gemini-2.0-flash-exp\n```\n\n`GEMINI_API_KEY` (or `GOOGLE_API_KEY`) resolves from, in order: `--api-key`, the\nenvironment, a project-local `.env` (cwd + up to two parents), then a package-local\n`.env`. Nothing is committed — `.env` is gitignored.\n\n### pi backend (opt-in)\n\n`--backend pi` (or `NANO_BANANA_BACKEND=pi`; programmatic `backend: \"pi\"`) generates\nthrough pi's model runtime with the OpenRouter credential pi already holds —\n`/login openrouter` in pi, or `OPENROUTER_API_KEY`. No `GEMINI_API_KEY` needed.\n\n- Opt-in only: the default stays `gemini`, a missing Gemini key never falls back\n  to pi, and the library never reads `NANO_BANANA_BACKEND` (only the CLI does).\n- Model ids are OpenRouter image ids: bare Gemini ids get `google/` in front;\n  non-Google models need the full `vendor/model` id. Default\n  `google/gemini-2.5-flash-image`; `--flash` → `google/gemini-3.1-flash-lite-image`.\n- The CLI prints `(pi · <model>) · ~$<cost> est.` — cost is an **estimate** from\n  token usage.\n- Needs `@earendil-works/pi-coding-agent >= 1.0.0` resolvable next to the package\n  (optional peer).\n\n```bash\npi-nano-banana \"a red fox in the snow, watercolor\" -o fox.png --backend pi\n```\n\n## Programmatic API\n\n```ts\nimport { generateImage, batchGenerate } from \"@blackbelt-technology/pi-dashboard-nano-banana/nano-banana.js\";\n\nawait generateImage({ prompt: \"a fox\", output: \"fox.png\" });\nawait generateImage({ prompt: \"a fox\", output: \"fox.png\", backend: \"pi\" }); // → { ok, output, outputs, model, usage, backend }\n\nawait batchGenerate({\n  jobs: [\n    { name: \"hero\", prompt: \"wide cinematic hero\", output: \"out/hero.png\" },\n    { name: \"icon\", prompt: \"flat minimal icon\", output: \"out/icon.png\" },\n  ],\n  concurrency: 3,\n});\n```\n\n`batchGenerate` powers the storyboard step of\n`@blackbelt-technology/pi-dashboard-video-production`.\n\n## Prerequisites\n\n- Node (runs as TypeScript via pi's jiti loader — no build step).\n- Network access for `npx` to fetch the underlying nano-banana CLI.\n- A Gemini API key from <https://aistudio.google.com/apikey> — or, for `--backend pi`,\n  an OpenRouter credential in pi and `@earendil-works/pi-coding-agent >= 1.0.0`.\n","readmeFilename":"README.md"}