| name | image-blast-wildcard |
| description | Discover and run arbitrary FAL operations that do not fit the narrower image-blast skills. |
image-blast-wildcard
Use this skill as an escape hatch for FAL models outside the standard world,
image-edit, 3D, and SFX flows.
Instructions
This skill runs in two modes:
- Discovery mode: normal user requests. Do not run a paid FAL request,
call
run-fal.mjs, or trigger any background execution until the user
confirms the exact endpoint.
- Execution mode: prompts that start with
CONFIRMED_FAL_ENDPOINT: <endpoint>. Do not ask for model confirmation
again; validate inputs and run exactly one request.
-
In discovery mode, do not run paid FAL requests until the user confirms one
exact endpoint by name (e.g. confirm fal-ai/flux/dev).
-
Discover candidates through the FAL Platform Model Search API (not the
Explore page):
https://api.fal.ai/v1/models?q=<query>&status=active&limit=5
https://api.fal.ai/v1/models?category=<category>&status=active&limit=5
https://api.fal.ai/v1/models?endpoint_id=<endpoint>&expand=openapi-3.0
Use https://fal.ai/docs/llms.txt and individual model API docs only as
fallback context when the model search response is insufficient.
-
Present the best candidate endpoint(s) with category, description, and any
relevant schema notes, then ask the user to confirm one exact endpoint.
-
After confirmation, fetch the confirmed endpoint with expand=openapi-3.0,
then build schema-shaped JSON from the user's literal inputs. Use schema
defaults for optional fields. Ask only if a required field cannot be
inferred, a referenced local file is missing, or FAL_KEY is unavailable.
-
Resolve the output directory contextually: from the user's request, the
active image-blast project/world, an input file's surrounding generated
output directory, or another clear local workflow context. Do not use a
dedicated wildcard directory by default. If no output location can be
inferred, ask before execution. Use ls -a before reading generated state.
-
For local files, pass them with --file <schema_key>=<path> so the helper
converts them to model input URLs. Use dot paths for nested keys
(e.g. image_urls.0).
-
Run:
node .claude/scripts/fal/run-fal.mjs \
--endpoint "<fal endpoint>" \
--input-json '<schema-shaped JSON input>' \
--output-dir "<output directory>" \
--output-slug "<short output slug>" \
--user-prompt "<literal user request>"
The default queue mode persists request metadata before polling and
downloads any returned file URLs. Use --mode run only when the FAL API
page requires a direct fal.run call instead of the queue API.
-
Repair missing local files from request metadata when needed:
node .claude/scripts/project/ensure-local-assets.mjs --from "<request-json-path>"
-
Report endpoint, input summary, output directory, downloaded files, request
metadata, and any raw result fields that were not downloadable.