From fal-ai-image
Generates and edits images using fal.ai nano-banana-pro model via Bash scripts. Supports text rendering in Cyrillic/CJK, infographics, complex compositions, and reference image editing.
npx claudepluginhub artwist-polyakov/polyakov-claude-skills --plugin fal-ai-imageThis skill uses the workspace's default tool permissions.
Generate images via fal.ai nano-banana-pro (Gemini 3 Pro Image).
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Generate images via fal.ai nano-banana-pro (Gemini 3 Pro Image). Best for: infographics, text rendering, complex compositions.
Task with subagent_type: "Bash" and model: "haiku"upload.sh first to get URLs for edit.shUser gave reference images? → Edit mode (upload.sh → edit.sh)
User wants text-only gen? → Generate mode (generate.sh)
Multiple images needed? → Parallel Bash/haiku subagents
Scripts are POSIX sh compatible — work in cloud sandboxes (/bin/sh) and locally (bash).
No bashisms: [[ ]], ${BASH_SOURCE}, source etc. are NOT used.
Requires FAL_KEY in config/.env or environment.
Get key: https://fal.ai/dashboard/keys
Create images from text prompt only.
Script: scripts/generate.sh
Create images using reference images (up to 14).
Script: scripts/edit.sh
IMPORTANT: Run generation via Task tool with Haiku subagent to avoid blocking main context.
Clarify params (if not specified):
1:1, 16:9, 9:16, 4:3, etc.1K (default), 2K, 4KPropose save path based on project structure:
./images/, ./assets/, ./static/./images/infographic_coffee.png?"Show price & confirm:
Cost: $0.15/image (4K: $0.30)
Confirm? (yes/no)
Launch subagent:
Task tool:
- subagent_type: "Bash"
- model: "haiku"
- run_in_background: true
- prompt: Run generate.sh with params
Report result: Parse JSON output, show image URL, read saved file.
Get reference images:
upload.sh first to get URLsClarify prompt: What to do with references?
Show price & confirm: Same as generate
Launch subagent with edit.sh
Report result
sh scripts/generate.sh \
--prompt "infographic about coffee brewing" \
--aspect-ratio "9:16" \
--resolution "1K" \
--output-dir "./images" \
--filename "coffee_infographic"
| Param | Required | Default | Values |
|---|---|---|---|
--prompt | yes | - | text |
--aspect-ratio | no | 1:1 | 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16 |
--resolution | no | 1K | 1K, 2K, 4K |
--num-images | no | 1 | 1-4 |
--output-dir | no | - | path |
--filename | no | generated | base name |
--web-search | no | false | flag |
sh scripts/edit.sh \
--prompt "combine these into a collage" \
--image-urls "https://example.com/img1.png,https://example.com/img2.png" \
--aspect-ratio "16:9" \
--output-dir "./images" \
--filename "collage"
| Param | Required | Default | Values |
|---|---|---|---|
--prompt | yes | - | text |
--image-urls | yes | - | comma-separated URLs (max 14) |
--aspect-ratio | no | auto | auto, 1:1, 16:9, etc. |
--resolution | no | 1K | 1K, 2K, 4K |
--num-images | no | 1 | 1-4 variations |
--output-dir | no | - | path |
--filename | no | edited | base name |
# Get URL for local file
URL=$(sh scripts/upload.sh --file /path/to/image.png)
# Or get base64 data URI (for small files)
URI=$(sh scripts/upload.sh --file /path/to/image.png --base64)
For multiple images — launch several subagents in parallel:
Task 1: generate "cat in space" → cat_space.png
Task 2: generate "dog on moon" → dog_moon.png
Task 3: generate "bird in ocean" → bird_ocean.png
Each runs independently via Haiku, results collected when done.
Formula: price = num_images * (resolution == "4K" ? 0.30 : 0.15) + (web_search ? 0.015 : 0)