with one click
image-blast-uncover
// Main image analysis skill, object generation, plate decisionmaking, and initial scene description. Use this skill when user wants to create objects and necessary for main image analysis.
// Main image analysis skill, object generation, plate decisionmaking, and initial scene description. Use this skill when user wants to create objects and necessary for main image analysis.
Create, inspect, and manage an IMAGE-BLAST project envelope under worlds/<slug>. Use before other image-blast skills (image-blast-uncover, image-blast-world, image-blast-3d, etc.) or whenever the user asks about active project state.
Generate the 3D static environment of a world from a source or plate image.
Generate one specified atomic 3D object. Use when the user names exactly one object instance to make, or provides one image plus the object name/description.
Generate one clean plate/source cleanup image for an IMAGE-BLASTER world. Use after confirmed objects exist, when removing foreground objects or other specified content from a source image.
Generate one image edit from explicit input images and a prompt. Use for source cleanup, clean plates, object removal, or other FAL-backed image edits.
Generate and post-process a clean sound effect, object impact, or ambient loop.
| name | image-blast-uncover |
| description | Main image analysis skill, object generation, plate decisionmaking, and initial scene description. Use this skill when user wants to create objects and necessary for main image analysis. |
Uncover literal image information for project $0. Additional image paths or instructions may appear in $ARGUMENTS.
Follow the generic file convention in .claude/rules/project.md. Use ls -a to inspect project/source/output directories before reading JSON details.
$0. If it is missing, ask which worlds/<world-name>/ directory to use.node .claude/scripts/project/project-state.mjs --world "$0" --stage-input
If no source images exist after staging and the user needs to add images, report the input/ path and ask them to add files there.
IMAGE-BLAST.md in this skill directory and follow its JSON contract exactly.$ARGUMENTS and worlds/$0/source/. Use input/ only through the project-state staging step so source paths are stable. Source images use indexed families (0-<slug>.<ext>, 1-<slug>.png, etc.); by default, analyze the latest image in each family and do not treat every historical plate/edit as separate evidence unless requested.worlds/$0/source/<image-name>.json.image.json.images[].worlds/$0/source/<image-name>.json files as reusable analysis:
worlds/$0/image.json by reading and merging all valid worlds/$0/source/*.json image analyses.
source_imagesscene_name, short_caption, and literal_descriptionenvironment, visual_style, lighting, atmosphere, and ambient_soundobjects while preserving source-image evidenceimages[]worlds/$0/output/<object-slug>/object.json
object.json should use this shape:{
"schema_version": 1,
"world": "$0",
"object": {
"id": "<object-slug>",
"name": "<object name>",
"description": "<literal object description>",
"materials": [],
"source_images": [],
"evidence": [],
"generate_as_3d_object": true,
"working_dir": "worlds/$0/output/<object-slug>"
},
"updated_at": "..."
}
Object files store durable identity, intent, and provenance only. Do not write generated state such as status, jobs, generated files, request lifecycle, or completion data into object.json. Generated outputs and request state live beside object.json as indexed visible artifacts and hidden request JSON.
Agent(image-blast-plate) and wait for it before world generation.node .claude/scripts/project/project-state.mjs --world "$0"
worlds/$0/source/<image-name>.jsonworlds/$0/image.jsonworlds/$0/output/<object-slug>/object.jsonworlds/$0/source/<source-slug>-plate.png