AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Create Asset Sheet

skill-summerengine-summer-engine-agent-create-asset-sheet · by SummerEngine

Use when the user wants to generate a pack of 2D game assets from a single prompt — a tile sheet, UI kit, menu screen, character pack, or biome set. The skill plans the prompt, generates a coherent sheet, removes the background, vision-detects each item, classifies it, and saves as a single pack ArtAsset. Trigger on "asset sheet", "asset pack", "tile sheet", "tileset", "UI kit", "asset pack for",…

No reviews yet
0 installs
4 views
0.0% view→install

Install

$ agentstack add skill-summerengine-summer-engine-agent-create-asset-sheet

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-summerengine-summer-engine-agent-create-asset-sheet)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Create Asset Sheet? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

create-asset-sheet — Generate a coherent pack of 2D assets

This skill turns a single prompt into a categorized pack of isolated, named 2D assets ready to drop into a game. It exists because the alternative — generating each asset one-by-one, then losing visual coherence between them, then manually matting backgrounds in Photoshop — is the most-cited pain point from indie devs working with image models in 2026.

Pipeline:

  1. Generate a sheet of N isolated assets in one image-gen call.
  2. Remove background (fal/bria) so each asset can stand on its own.
  3. Detect + name + classify each asset in one vision call (Gemini 3 Pro outputs bbox + snake_case name + category per region).
  4. Crop each region with sharp.
  5. Optionally upscale any small slice via fal flux-2/edit i2i, preserving aspect.
  6. Save as a single pack ArtAsset with packFiles: [{url, name, type}] and metadata.sliceBboxes.

Categories the classifier outputs (used to route into downstream pipelines): character | terrain | nature | lighting | water | decorative | buildings | ui | vfx

When to use

  • "Make me a Japanese village tileset."
  • "Generate a sci-fi UI kit — buttons, panels, icons."
  • "I need 12 fantasy props for a dungeon — chest, torch, skeleton, gold, etc."
  • "Give me a character pack: 6 cute monsters."
  • "Build a forest biome — trees, rocks, plants, ground tiles."

When NOT to use

  • The user wants a single asset → summer:2d-assets/pixel-art or summer:2d-assets/character-portrait.
  • The user wants character animation (walk cycle, attack frames) → summer:2d-assets/sprite-sheet.
  • The user wants 3D models of a planned pack → not yet supported in one shot; loop summer:2d-assets/concept-art → image-to-3D per item, or use summer:asset-pipeline/asset-strategy to pick the right path.
  • The user wants terrain tiles that connect seamlessly (auto-tiling / Wang tiles) → summer:2d-assets/tileable-texture is the right home for edge logic; this skill produces standalone tiles, not edge variants.

The cleanest path: the studio wizard

The fastest, most reliable way to invoke this flow today is the Create Asset Sheet wizard in the Summer studio:

https://summerengine.com/studio/create-tileset

Direct the user there if they're working in the browser. The wizard:

  • Offers a 2D / 3D mode toggle (2D is the slice flow described here; 3D is a soft pointer to summer:2d-assets/concept-art + per-asset image-to-3D for now)
  • Surfaces six prompt templates (tile sheet, UI kit, menu, character pack, biome, freeform)
  • Lets the user upload an existing sheet if they have one (skip generation)
  • Shows variants in a grid with full-screen lightbox + arrow-key toggling
  • Runs the full slice pipeline on click
  • Has per-slice HD upscale + bulk "Upscale all"
  • Saves as a pack ArtAsset visible in the user's library

If the user is in a chat / agent context and can't open the browser, fall back to the programmatic path below.

Programmatic path (chat / agent driving the engine)

The slicing + classification endpoints are not yet exposed as summer_* MCP tools. Until they are, the agent can replicate the flow manually:

  1. Generate the sheet. Call summer_generate_image with a prompt like:

`` asset sheet: . Each item isolated with empty space around it, transparent or neutral background. ``

  • Pick model by style: pixel art → grok-imagine, painterly / illustrative / structured grids → gpt-image-2.
  • 1024x1024 is the sweet spot. Larger sheets fragment in the slicer when individual assets get below ~64px.
  • Keep the asset list to 6–20 items per sheet. Past 20, model attention degrades and slices get muddy.
  1. Remove background. Call fal-ai/bria/background/remove on the generated URL. Cost: $0.05.
  1. Detect + name + classify. Send the transparent PNG to a vision LLM (Gemini 3 Pro is currently the strongest at bbox + category in one shot). Use this system prompt structure:

``` Output strict JSON array, no prose: [{"name":"snakecasename","category":"character|terrain|nature|lighting|water|decorative|buildings|ui|vfx","x":,"y":,"w":,"h":}]

Coordinates are percentages of image dimensions, top-left origin. Names are 1-3 words, snakecase, specific (stonelantern, not lamp). ```

  1. Crop each region with sharp / PIL / equivalent. Pad bboxes by 4px to leave breathing room.
  1. Optional upscale. For any crop where longest side at high resolution. Preserve every detail, the exact pose, the exact style. Sharper edges, more detail. Transparent background. Single isolated asset, no scene.

```

  • Scale longest side to 1024, preserve aspect ratio (FLUX requires multiples of 32).
  • Don't blindly upscale everything — high-res slices get diminishing returns and you spend $0.04/slice.
  1. Save as a pack record in art_assets: isPack: true, packFiles: [{url, name, type: "image/png"}], metadata.sliceBboxes, parentAssetId pointing to the source sheet.

Prompt patterns that work

Tile sheet (terrain + props + buildings):

 tile sheet: , , . Each item isolated with empty space around it.

UI kit:

 game UI kit: round button, square button, panel background, slider, toggle switch, progress bar, icon set, banner header.

Menu screen:

 main menu UI: title banner, Start Game button, Settings button, Quit button, , ornate frame, decorative element.

Character pack:

 character pack, single front-facing frame each: , , ... . Each isolated.

Biome:

 biome assets: , , . Each item isolated.

Common failure modes

| Symptom | Cause | Fix | |---|---|---| | Slicer returns 1 giant bbox covering the whole sheet | Items overlap / no gaps in the source | Re-prompt with "each item fully isolated, empty space around each item". Re-generate. | | Slicer misses items | Items too small in the source, classifier dropped them as noise | Generate at higher resolution (2048) or with fewer items per sheet | | Two items merge into one slice | Items touching in the source | Re-prompt with more isolation. Or accept and let the user split manually in step 2's review. | | Slice has a sliver of neighbor in it | Vision bbox is off by 5–15px | Expected. The slicer pads but doesn't snap-to-content yet. Live with it or upscale the slice (FLUX often cleans the edge) | | Upscaled slice looks invented | Source was too small / too ambiguous | Don't upscale slices below ~32×32. Or accept the hallucination and edit | | Detection returns wrong category | Model misjudged context | User can override in the review step; not a blocker |

What this skill does NOT do (yet)

  • Per-asset planning + individual generation (the Codex-style flow where each asset is generated separately at full resolution). The planner endpoint exists (POST /api/art/plan-asset-pack) but the per-asset gen loop is not wired into the wizard yet.
  • 3D pack assembly. The 3D mode in the wizard is a placeholder pointer to summer:2d-assets/concept-art + image-to-3D for now.
  • Character animation routing. Once a slice is classified as character, the next step (sprite-sheet generation) is a separate skill that the user has to invoke manually. Auto-routing is on the roadmap.
  • Terrain auto-tiling / Wang-tile generation. Use summer:2d-assets/tileable-texture for that.
  • Level composition / scene assembly. Use summer:level-design/design-level.

Honest cost estimate

Per 12-asset sheet, end to end through the wizard:

  • Generate sheet: $0.04–0.10 (varies by model)
  • Background removal: $0.05
  • Vision detect + classify: $0.02–0.03
  • Save pack: free
  • Optional bulk upscale: ~$0.04 per slice ($0.48 for 12)

Without upscale: ~$0.12. With full upscale: ~$0.60. About a third of what a Photoshop hour would cost.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.