# Image Blast Plate

> Create one clean plate for project `$0`.

- Skill: `neilsonnn/image-blast-plate` (Agent Skill)
- Install (CLI): `npx skillmds@latest add neilsonnn/image-blast-plate`
- Raw SKILL.md: https://api.skillmd.com/api/skills/neilsonnn/image-blast-plate/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: neilsonnn (https://skillmd.com/u/neilsonnn)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/neilsonnn/image-blast-plate

---


Create one clean plate for project `$0`.

## Instructions

- If `$0` is missing, ask for the world slug.
- Use `ls -a` before reading generated state.
- Select the source image from `$ARGUMENTS` when provided; otherwise use the newest visible source image in `worlds/$0/source/`.
- Build one removal prompt from confirmed objects plus any extra removal instructions. Confirmed objects are `worlds/$0/output/<object>/object.json` files; use `object.name`, adding short details from `object.description` when needed.
- Keep the prompt removal-only: name what to remove, and do not list objects or scene features to keep or add fill-in/background repair instructions unless the user explicitly asked for that wording.
- Remove all requested content in one image edit pass. Do not split removals across multiple agents or one edit per object.
- Follow `image-blast-image-edit` by calling the generic edit script with `--role plate` and `--output-slug "<source-slug>-plate"`.
- The plate is a new source artifact. It must use the next available visible file index in `worlds/$0/source/`, not the source image's index. For example, if the selected source image is `0-room.png`, the first plate must be named like `1-room-plate.png` with matching `.1-room-plate-request.json`, never `0-room-plate.png`.

```bash
node .claude/scripts/project/project-state.mjs --world "$0"
```

Run:

```bash
node .claude/scripts/image-edit/generate-edit.mjs \
  --image "<selected source image path>" \
  --prompt "remove the following from the image: <confirmed object names and any extra removals the user requests>" \
  --output-dir "worlds/$0/source" \
  --role plate \
  --output-slug "<source-slug>-plate"
```

Optional provider override: `--provider nano-banana|gpt-image-2`.

If request metadata records provider URLs but local plate files are missing, fill them from the matching hidden request JSON:

```bash
node .claude/scripts/project/ensure-local-assets.mjs --from "<request-json-path>"
```

```bash
node .claude/scripts/project/project-state.mjs --world "$0"
```

Final response: report input image, output plate image, request metadata, and prompt used.

