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

Image Sprite Sheet Split

skill-godot-fun-godot-framework-image-sprite-sheet-split · by godot-fun

Splits uniform sprite sheet grids into individual frame PNGs using FFmpeg crop. Use when the user wants to split sprite sheets, extract animation frames, divide grid images into cells, cut 4x4 or NxM sheets, slice tilesets, or prepare frames for background removal.

No reviews yet
0 installs
0 views
view→install

Install

$ agentstack add skill-godot-fun-godot-framework-image-sprite-sheet-split

✓ 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-godot-fun-godot-framework-image-sprite-sheet-split)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
yesterday

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 Image Sprite Sheet Split? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Image Sprite Sheet Split

Split uniform grid sprite sheets into individual PNG frames via FFmpeg crop. Preserves per-cell dimensions and alpha. Does not remove backgrounds — run [image-remove-background](../image-remove-background/SKILL.md) on frames afterward if needed.

Rules

When this skill applies, read and follow [skill-dependency-manager](../../rules/skill-dependency-manager.md) — run scripts as documented, install missing tools into .dependency/.

  • Run split_frames.py through the python manifest entry (.dependency/python/). Never use host python, py, or python3.
  • Do not hand-write FFmpeg crop commands — use the bundled script.
  • populated: false is not a reason to skip. Install first, set populated: true, retry the same command.
  • Never overwrite sources. Output goes into a frames// folder beside each sheet (or under --output-dir).
  • Never copy or move input images. Pass the user's actual file or directory path.

Quick Start

Default: /frames// next to each input sheet:

# 4×4 sheet → Downloads/frames/explosion/explosion_001.png … explosion_016.png
.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  C:/Users/me/Downloads/explosion.png --grid 4x4

# Project-relative path
.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  image/effects/fire_sheet.png --cols 4 --rows 4

Directory batch:

.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  image/effects -r --grid 4x4

Custom output root:

.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  image/effects -r --grid 4x4 --output-dir image/effects/frames

Grid layout

| Option | Default | Notes | |--------|---------|-------| | --grid | (required) | Shorthand COLSxROWS (columns first), e.g. 4x4, 6x3 | | --cols / --rows | — | Alternative to --grid | | --offset-x, --offset-y | 0 | Skip border padding before the grid | | --gutter / --gutter-x / --gutter-y | 0 | Spacing between cells | | --cell-width, --cell-height | auto | Override when auto division leaves remainder pixels | | --trim | 0 | Shrink each cell crop to skip 1 px grid lines | | --start-index | 1 | Frame numbering in filenames | | Output | frames// | Use --output-dir or --output-subdir to customize | | --overwrite | off | Replace existing frame files | | --dry-run | off | Preview crop plan without writing |

Frames are exported row-major (left→right, top→bottom): 001, 002, …

When to use

| Good fit | Poor fit | |----------|----------| | Uniform N×M grid (4×4, 3×6, 8×1) | Irregular / free-form layouts | | Gemini or Aseprite-style sheets | Packed texture atlases with variable frame sizes | | Sheets with optional fixed gutters | Single full-frame images | | Preparing frames for per-frame background removal | Auto-detecting grid size (must be supplied) |

rembg on whole sheets removes animation content — split frames first, then remove backgrounds per frame if needed.

Agent workflow

  1. Confirm grid size — ask or infer from context (4x4, 3x6, etc.). Use --dry-run to verify cell size.
  2. Trial first — split one sheet, inspect frames//001.png and the last frame.
  3. Check remainder warnings — if image size is not evenly divisible, set --cell-width / --cell-height or adjust --offset-*.
  4. Grid lines — if black dividers appear in frames, retry with --trim 1.
  5. Batch — run on the directory with -r once the trial looks correct.
  6. Revert — delete the frames/ output folder; sources are never modified.

Examples

4×4 explosion sheet (2048×2048 → 16 × 512×512):

.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  sheet.png --grid 4x4 --dry-run

3×6 sheet with 1 px grid lines (6 columns × 3 rows):

.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  sheet.png --grid 6x3 --trim 1

Sheet with 2 px gutters and 4 px outer border:

.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  sheet.png --grid 4x4 --offset-x 4 --offset-y 4 --gutter 2

Non-uniform cell width (2816×1536, 6 columns × 3 rows):

.dependency/python/python .cursor/skills/image-sprite-sheet-split/scripts/split_frames.py \
  sheet.png --grid 6x3 --cell-width 469 --cell-height 512

Troubleshooting

| Issue | Fix | |-------|-----| | FFmpeg not found | Populate ffmpeg in .dependency/manifest.json | | Wrong frame count | Verify --grid matches the sheet layout | | Grid lines in frames | Add --trim 1 (or 2 for thick dividers) | | Cropped too much / misaligned | Adjust --offset-x/y, --gutter-*, or set explicit --cell-width/height | | Unused pixels warning | Set explicit cell dimensions or offsets | | Need transparent frames | Split first, then [image-remove-background](../image-remove-background/SKILL.md) on frames/ |

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.