Game Asset Generator
htdt/godogen
Generates game art from text prompts: PNG images, GLB 3D models, rigged characters, animations and sprites, with background removal.
Produces game-ready 2D characters, creatures, props, icons and effects as master stills, sheets or clips, and exports frames for common game engines.
$ npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install 0x0funky/agent-sprite-forge generate2dsprite --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/0x0funky/agent-sprite-forge.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/generate2dsprite .claude/skills/generate2dsprite && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "generate2dsprite" agent skill from https://github.com/0x0funky/agent-sprite-forge/tree/main/skills/generate2dsprite into .claude/skills/generate2dsprite/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "generate2dsprite", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/0x0funky/agent-sprite-forge/tree/main/skills/generate2dspriteType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install 0x0funky/agent-sprite-forge generate2dsprite --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/0x0funky/agent-sprite-forge.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/generate2dsprite .agents/skills/generate2dsprite && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "generate2dsprite" agent skill from https://github.com/0x0funky/agent-sprite-forge/tree/main/skills/generate2dsprite into .agents/skills/generate2dsprite/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "generate2dsprite", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install 0x0funky/agent-sprite-forge generate2dsprite --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/0x0funky/agent-sprite-forge.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/generate2dsprite .cursor/skills/generate2dsprite && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "generate2dsprite" agent skill from https://github.com/0x0funky/agent-sprite-forge/tree/main/skills/generate2dsprite into .cursor/skills/generate2dsprite/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "generate2dsprite", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/0x0funky/agent-sprite-forge.git --path skills/generate2dsprite--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install 0x0funky/agent-sprite-forge generate2dsprite --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/0x0funky/agent-sprite-forge.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/generate2dsprite .gemini/skills/generate2dsprite && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "generate2dsprite" agent skill from https://github.com/0x0funky/agent-sprite-forge/tree/main/skills/generate2dsprite into .gemini/skills/generate2dsprite/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "generate2dsprite", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install 0x0funky/agent-sprite-forge generate2dspriteInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/0x0funky/agent-sprite-forge.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/generate2dsprite .github/skills/generate2dsprite && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "generate2dsprite" agent skill from https://github.com/0x0funky/agent-sprite-forge/tree/main/skills/generate2dsprite into .github/skills/generate2dsprite/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "generate2dsprite", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install 0x0funky/agent-sprite-forge generate2dsprite --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/0x0funky/agent-sprite-forge.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/generate2dsprite .opencode/skills/generate2dsprite && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "generate2dsprite" agent skill from https://github.com/0x0funky/agent-sprite-forge/tree/main/skills/generate2dsprite into .opencode/skills/generate2dsprite/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "generate2dsprite", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
generate2dspriteProduces game-ready 2D characters, creatures, props, icons and effects as master stills, sheets or clips, and exports frames for common game engines.
The skill plans size, motion and finish for a 2D asset, generates the art, has you approve one master still per character, and then keys, slices, registers, scales, palettes, checks and exports the frames. Image generation is the default art source, routed through a `route_media.py` helper that uses an API when a key is set, from OpenAI, Gemini, xAI, BytePlus Seedream or fal.ai, and otherwise the local Codex or Grok CLI. Code-drawn art is used only on request.
Export targets are Aseprite JSON, Godot SpriteFrames and Sprite3D, with an HD finish by default and a pixel finish on request. Character animation is one image-to-video clip per action taken from the master, handled by the sibling `video2dsprite` skill, while sheets are meant for effects, icons and props. Maps, tiles and backgrounds belong to `generate2dmap`. A capability check with `forge_doctor.py` runs once per session to show which API keys and local tools are available.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 5324342. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
OPENAI_API_KEYGEMINI_API_KEYXAI_API_KEYARK_API_KEYFAL_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
2D Sprite Generator loads about 3.6k tokens when it runs, and up to ~57k if it reads all its reference files. Until then it costs about 238 tokens; SKILL.md has 1,655 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from 0x0funky/agent-sprite-forge at commit 5324342, republished under its MIT licence (© 0x0funky). 1,655 words, ~3,575 tokens.
.claude/skills/generate2dsprite/SKILL.md (or your agent's skills folder). This skill also uses 30 other files; get the full folder from GitHub.Make the smallest asset bundle the game needs, at its real display size, camera and style. Game logic (collision, damage, timing) stays independent of the art.
Run python "<skill-dir>/../generate2dmedia/scripts/forge_doctor.py" --host-tools <tools> --save <output>/doctor.json, where <tools> lists the media tools in your own tool list (image_gen, image_edit, image_to_video) or none. Its ROUTES block shows which API keys are configured (yes or no), the local readiness and the resolved order. If encoding.stdout fails, set PYTHONUTF8=1.
Image generation is the default art source for characters, creatures, props, icons and FX. Record it as art_source (api, host_image, existing, or code only on request) and name the route in your reply. A route the user names explicitly wins.
OPENAI_API_KEY), Google Gemini (GEMINI_API_KEY), xAI (XAI_API_KEY), BytePlus Seedream (ARK_API_KEY) or fal.ai (FAL_KEY), in the environment or the user config file (route-media.md). The configured key is the owner's consent, so there is no per-call question.image_gen, Grok's native tool) when you have one, otherwise the user's signed-in Codex CLI, then Grok CLI.route_media.py prints no-route (exit 3). Then say "code-drawn, no image model".Every image goes through one command: python "<skill-dir>/../generate2dmedia/scripts/route_media.py" image --prompt-file <txt> --reference <png> --size 1024x1024 --out-dir <new>. It picks the route in that order and prints one JSON line with route, artifact, sha256 and estimateUsd; resolve --kind image says which route would run. Existing art the user supplies is always welcome. Never claim a generation that did not happen; keep the prompt and contract and report a missing capability.
sprite_set.py). Keep every action's body height from the master's rest pose.One approved master still per character, then one image-to-video clip per action from it (video2dsprite); sheets are for FX, icons and props. Wording: prompt-rules.md; commands, framing and master.json: master-still.md.
--spec <json> and/or flags): --name, --subject, --identity (long and precise), --facing left|right|front|back, --class hero|mob|boss|prop, --finish hd|pixel (HD default; pixel only when asked), --identity-ref (FIRST image, copied exactly), --style-ref (SECOND: an approved peer sprite, style and framing only), --key (default #FF00FF; green or blue for purple and pink designs).python "<skill-dir>/scripts/master_still.py" generate --spec <json> --takes 3 --output-dir <new>. Each take goes through generate2dmedia route_media.py (API key first, then the local daemon); takes.png shows them side by side. Exit 3 means no route: say so; codeart2d is the fallback ("code-drawn, no image model"). With the host's own image tool: run master_still.py prompt and attach the listed references in that order.master_still.py edit --run <dir> --take N --change "<one change>" --output-dir <new> (or --master <dir>).master_still.py approve --run <dir> --take N --output-dir <new> (a still from elsewhere: --still <png> --route <what made it>). It keys the still, crops it with a 6 px margin, LANCZOS-scales it to the class framing on 1024x1024 (hero 788 px tall, top margin 138 px) and writes master.png (opaque, pure key), master_rgba.png and master.json (generate2dsprite.master.v1).master.json (identity_recap, facing, finish, class, framing, key, files, transform, route) and never re-measure the still; every clip prompt starts with "The same <identity_recap>".Report the route from master.json route. A FORGE_ROUTE_MEDIA_FAKE warning means the image is not a real generation.
image_gen is your own image tool; with no configured key use it and look at results with view_image. An image this session made that is not in the project: python "<skill-dir>/../generate2dmedia/scripts/cli_media.py" adopt --codex-thread <thread-id> --output-dir <new>, then process generated.png. codeart2d and generate2dmedia are explicit-only: open their SKILL.md when this one routes there.route_media.py takes the API or the local CLIs. Look at every PNG you make with Read; run tools with Bash; <skill-dir> is ${CLAUDE_SKILL_DIR}.Run each tool as one line from the user's project root: python "<skill-dir>/scripts/<tool>.py" .... <skill-dir> is this skill's folder; sibling skills sit beside it (<skill-dir>/../video2dsprite). Keep inputs and outputs inside the project. Every tool writes a new --output-dir: it refuses an existing one, stages beside it and publishes only after its checks (--strict-qc / --strict publish nothing on failure). Success prints one JSON line; errors print error: ... and exit 1; usage errors exit 2. Needs Python 3.10+, numpy and Pillow (scipy recommended). --help lists every flag.
Record identity and reference, camera and facing, style, game display size, finish (HD by default, pixel on request), action list and phases, loop or one-shot, motion envelope, shared root and output format. Keep one accepted master and one source-to-display scale per character; mobs are no taller than the hero unless planned. A grid is not smoothness: pose spacing, timing, the loop seam and ground contact matter more. Poses, NEAR/FAR legs and timing: animation-planning.md.
native_alpha keeps real transparency (a painted checkerboard is not alpha); chroma_key uses flat magenta only when the subject has none; opaque keeps whole images (assemble_frames.py).lanczos or a premultiplied area resize for generated art; nearest only for a verified pixel grid. A high-resolution pixel-like painting is not clean 32 px art.Write the prompt yourself (prompt-rules.md; grids, phases and presets in action-recipes.md). Attach references through --reference (or your tool's real image input); a path in prose is not a reference. Keep the accepted master in every generation and describe absolute phases, not chained edits; a fix is an edit of the approved still that names the only change. Generate one action family at a time and keep wide slashes, trails and projectiles out of the body sheet. Verify the actual route, model and returned size; never claim them from the prompt.
Sheets (FX, icons, props): sheet_qc.py spill on the raw sheet, then generate2dsprite.py process, then sheet_qc.py frames, then scale_frames.py, then build_animation_clips.py, then export_engine.py. Character actions come back from video2dsprite as packaged clips.
| Need | Route |
|---|---|
| Plan a sheet for an image tool (aspect, grid, guide, prompt) | plan_guide.py --frames N --cycle run --output-dir <new>; attach guide.png, paste prompt.txt. Fixed scale and feet line: make_anchor_layout.py; empty safe frame: make_layout_guide.py |
| Check a raw sheet before slicing | sheet_qc.py spill --input <sheet> --rows R --cols C --output-dir <new>; crossing parts mean regenerate with more margin or slice by ownership, never a largest-component filter |
| Key, slice and register a sheet | generate2dsprite.py process --input <sheet> --target asset --mode <mode> --rows R --cols C --output-dir <new> --strict-qc (geometry v2; processing.md) |
| Pixel art drawn at M source px per art px | process --resampler nearest --logical-pixel M --pixel-scale N (whole scales only) |
| Jumps, bob or recoil on one registration point | process --scale-strategy registered (or --anchor-px X,Y) |
| One character's scale across actions | process --write-scale-profile <p.json> on the grounded reference, then --scale-profile <p.json> --max-profile-scale-drift 0.08 |
| Canvas does not divide into the grid; other row order | process --grid-rounding nearest or --pad-to-grid; --direction-order down,up,left,right (modes.md) |
| Identity, NEAR/FAR alternation, drift, baselines | sheet_qc.py frames --sheet <sheet> --rows R --cols C --cycle run --output-dir <new>; a duplicated half-cycle means regenerate the second half. On code-drawn frames (art_source=code) identity_residual and torso_drift are advisory |
| Game size on one canvas and root, never clamped | scale_frames.py --frames <pngs> --root-lock torso-x --row-baseline --emit-clips --ticks N --output-dir <new>; later actions add --profile <first>/scale-frames.json --action-padding L,T,R,B |
| Clips with timing, events, transitions | build_animation_clips.py --manifest clips.json --output-dir <new>; read the lints and review/ (frames-and-clips.md) |
| Whole frames or a scene loop (no keying) | assemble_frames.py (--key chroma, --slice ownership; --loop-overlap K --ambient for ambient loops only) |
| Shared palette, locks, variants, flicker (pixel finish) | palette_tool.py build, apply, lock, quantize-seq, variants, luts; strict logical grid: pixel_reduce.py (palette-and-pixels.md) |
| Engine export | export_engine.py --clips <animation-clips.json> --target all --output-dir <new>; Sprite3D: --target godot-sprite3d --world-height <units> (engine-export.md) |
| Play clips in a game (gait, hit-stop, transitions) | runtime-integration.md |
| Code-drawn sprites, rigs or FX, only on request | codeart2d render_pixelspec.py, rig_animate.py or fx_build.py with --build-clips (never process), then export_engine.py; disclose them as code-drawn |
pipeline-meta.json matte.qa (a key_ring_spill warning: add --despill-radius 1 or --key-quality soft), sheet-qc.json, the clip builder's lints. Numeric QC finds symptoms; it never approves anatomy or motion.estimateUsd), QA and remaining limits. Keep the last accepted bundle when revising.processing.md (process flags, legacy switches), modes.md, prompt-rules.md, action-recipes.md, character-animation.md (animation index), frames-and-clips.md, palette-and-pixels.md, engine-export.md, runtime-integration.md, video-handoff.md; data contracts in references/schemas/sprite.schema.json.
© 0x0funky, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 30 other files (scripts, references) in skills/generate2dsprite of 0x0funky/agent-sprite-forge.
Open the folder on GitHubat commit 5324342
2D Sprite Generator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| 2D Sprite Generator this skill0x0funky/agent-sprite-forge | 4.3k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Game Asset Generatorhtdt/godogen | 7.1k | — | ~2.8k | Automated safety check: Pass | MIT | |
| Godot Asset Generatorjwynia/agent-skills | 166 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Img Gen Avatar4thfever/cultivation-world-simulator | 2.1k | — | ~641 | Automated safety check: Pass | Custom licence | |
| Gemini Interactions APIAyuilos/Miffan | 192 | — | ~4.6k | Automated safety check: Pass | AGPL-3.0 | |
| Fal AI Imageartwist-polyakov/polyakov-claude-skills | 206 | — | ~2.1k | Automated safety check: Notes | MIT |
htdt/godogen
Generates game art from text prompts: PNG images, GLB 3D models, rigged characters, animations and sprites, with background removal.
jwynia/agent-skills
Generate game assets using AI image generation APIs (DALL-E, Replicate, fal.ai) and prepare them for Godot.
4thfever/cultivation-world-simulator
A skill your agent uses when working on tools/imggen avatar image generation, OpenAI-compatible image API config, human or yaoguai portrait prompts, qi-refining base generation, image-to-image realm…
Ayuilos/Miffan
A skill your agent uses when writing code that calls the Gemini API for text generation, multi-turn chat, multimodal understanding, image generation, video generation, streaming responses…
artwist-polyakov/polyakov-claude-skills
Generate/edit images via fal.ai. An agent skill from artwist-polyakov/polyakov-claude-skills.
fal-ai-community/skills
Choose default fal.ai endpoint IDs for genmedia production skills.
0x0funky/agent-sprite-forge
Draws 2D game art from code with no image model: pixel sprites, SVG props and icons, rigged characters, FX, autotiles and layouts, only when explicitly asked for.
0x0funky/agent-sprite-forge
Plans and builds 2D game maps and scenes, from tilemaps and parallax backgrounds to HD-2D plates, with collision checks, a playable HTML preview and Tiled, Godot or LDtk export.
0x0funky/agent-sprite-forge
Generates an image or an image-to-video clip through a configured provider API or a signed-in Codex or Grok CLI, and reports the route, file, hash and cost estimate.
0x0funky/agent-sprite-forge
Turns one approved master still into a full set of animated action clips for a character, one image-to-video take per action, then packages them for a game engine.
Works with
Categories
Produces game-ready 2D characters, creatures, props, icons and effects as master stills, sheets or clips, and exports frames for common game engines. The skill plans size, motion and finish for a 2D asset, generates the art, has you approve one master still per character, and then keys, slices, registers, scales, palettes, checks and exports the frames.ai, and otherwise the local Codex or Grok CLI.
2D Sprite Generator fits situations like: creating a master still and sprite sheet for a game character; making icons, props or effect frames at their real display size; packaging existing frames for Godot or Aseprite.
Run `npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a claude-code`. Or copy the skill folder (skills/generate2dsprite in 0x0funky/agent-sprite-forge) into .claude/skills/generate2dsprite in your project. Claude Code loads it when a task matches its description.
Run `npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a codex`. Or copy the skill folder (skills/generate2dsprite in 0x0funky/agent-sprite-forge) into .agents/skills/generate2dsprite in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add 0x0funky/agent-sprite-forge --skill generate2dsprite -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/generate2dsprite, .gemini/skills/generate2dsprite, .github/skills/generate2dsprite and .opencode/skills/generate2dsprite in your project.
Going by SKILL.md and its folder, 2D Sprite Generator needs Python for the scripts in its folder, the command-line tools its instructions call (python) and credentials named OPENAI_API_KEY, GEMINI_API_KEY, XAI_API_KEY and ARK_API_KEY. Our summary lists: An image API key such as `OPENAI_API_KEY`, or a signed-in Codex or Grok CLI; Python to run the bundled scripts.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
2D Sprite Generator is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 54k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with 2D Sprite Generator: Game Asset Generator (htdt/godogen, 7.1k stars), Godot Asset Generator (jwynia/agent-skills, 166 stars), Img Gen Avatar (4thfever/cultivation-world-simulator, 2.1k stars) and Gemini Interactions API (Ayuilos/Miffan, 192 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
0x0funky (a GitHub user) maintains it in 0x0funky/agent-sprite-forge, which has 4,344 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 6, 2026.
Source: 0x0funky/agent-sprite-forge on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.