2D Sprite Generator
0x0funky/agent-sprite-forge
Produces game-ready 2D characters, creatures, props, icons and effects as master stills, sheets or clips, and exports frames for common game engines.
A skill your agent uses when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making…
$ npx skills add scenario-labs/skills --skill scenario-chatgpt-pet-create -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install scenario-labs/skills scenario-chatgpt-pet-create --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/scenario-labs/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/scenario-chatgpt-pet-create .claude/skills/scenario-chatgpt-pet-create && 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 "scenario-chatgpt-pet-create" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-chatgpt-pet-create into .claude/skills/scenario-chatgpt-pet-create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-chatgpt-pet-create", 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/scenario-labs/skills/tree/main/skills/scenario-chatgpt-pet-createType 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 scenario-labs/skills --skill scenario-chatgpt-pet-create -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install scenario-labs/skills scenario-chatgpt-pet-create --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/scenario-chatgpt-pet-create .agents/skills/scenario-chatgpt-pet-create && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "scenario-chatgpt-pet-create" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-chatgpt-pet-create into .agents/skills/scenario-chatgpt-pet-create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-chatgpt-pet-create", 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 scenario-labs/skills --skill scenario-chatgpt-pet-create -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install scenario-labs/skills scenario-chatgpt-pet-create --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/scenario-chatgpt-pet-create .cursor/skills/scenario-chatgpt-pet-create && 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 "scenario-chatgpt-pet-create" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-chatgpt-pet-create into .cursor/skills/scenario-chatgpt-pet-create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-chatgpt-pet-create", 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/scenario-labs/skills.git --path skills/scenario-chatgpt-pet-create--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 scenario-labs/skills --skill scenario-chatgpt-pet-create -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install scenario-labs/skills scenario-chatgpt-pet-create --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/scenario-chatgpt-pet-create .gemini/skills/scenario-chatgpt-pet-create && 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 "scenario-chatgpt-pet-create" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-chatgpt-pet-create into .gemini/skills/scenario-chatgpt-pet-create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-chatgpt-pet-create", 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 scenario-labs/skills scenario-chatgpt-pet-createInstalls 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 scenario-labs/skills --skill scenario-chatgpt-pet-create -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/scenario-chatgpt-pet-create .github/skills/scenario-chatgpt-pet-create && 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 "scenario-chatgpt-pet-create" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-chatgpt-pet-create into .github/skills/scenario-chatgpt-pet-create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-chatgpt-pet-create", 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 scenario-labs/skills --skill scenario-chatgpt-pet-create -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install scenario-labs/skills scenario-chatgpt-pet-create --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/scenario-chatgpt-pet-create .opencode/skills/scenario-chatgpt-pet-create && 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 "scenario-chatgpt-pet-create" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-chatgpt-pet-create into .opencode/skills/scenario-chatgpt-pet-create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-chatgpt-pet-create", 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.
scenario-chatgpt-pet-createA skill your agent uses when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making…
Scenario Chatgpt Pet Create is an agent skill from scenario-labs/skills. Use when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making the 1536x2288 v2 pet sprite sheet with nine animation states and sixteen look directions, the 1536x1872 v1 sheet ChatGPT web uploads, a pixel-perfect pixel-art pet, an animated GIF of the pet, or a Codex pet.json package.
Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 11 other files, including scripts and reference files (for example `README.md`, `references/sheet-contract.md` and `scripts/pet_build.py`).
It sits in Game Development, covering Sprites and pixel art, Social media graphics and Design to code. It works with OpenAI. The repository describes itself as: Get production-ready images, video, audio, and 3D from any AI agent: skills that pick the right model, price before spending, and keep characters and brands consistent through… The licence is MIT.
9 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit f6f8ab7. 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 7 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
npxpippython3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx and pip, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Scenario Chatgpt Pet Create loads about 3.6k tokens when it runs, and up to ~5.2k if it reads all its reference files. Until then it costs about 107 tokens; SKILL.md has 1,904 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 scenario-labs/skills at commit f6f8ab7, republished under its MIT licence (© scenario-labs). 1,904 words, ~3,592 tokens.
.claude/skills/scenario-chatgpt-pet-create/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.A ChatGPT pet is one transparent sprite sheet: 192x208 cells, 8 columns, nine animation rows (v1, 1536x1872) plus two rows of sixteen look directions (v2, 1536x2288). Rows, frame counts, what each state must show, the look directions, the verdict file and the package layout: references/sheet-contract.md. Read it before the first generation.
This skill delivers, next to the run: a v2 sheet (unless the user wants v1 only), a v1 copy for ChatGPT web upload, pet.gif on a soft background and pet-transparent.gif, and a Codex pet.json package, installed only when the user says yes. Every image is generated through the Scenario MCP server; the frame cutting, sheet assembly, validation, GIFs and packaging run locally in the shipped scripts, because the deliverable is a file for ChatGPT or Codex and no MCP tool assembles a pet sheet. An image model never draws the whole sheet: it draws one row at a time, and the scripts place every frame.
Connection, scope and the core loop: the scenario skill. Changing a pet that already has a sheet: scenario-chatgpt-pet-update. If a sibling skill named here is missing from your available skills, ask the user to install it (npx skills add scenario-labs/skills --skill <name>); unattended, proceed from tool schemas and flag the gap.
Scripts, run by the agent with Python 3, Pillow and NumPy (pip install pillow numpy, in a virtual environment outside the run folder when the system Python refuses), by their path in this skill's scripts/ folder from the user's working folder (the commands below shorten that path); each prints JSON, or error: ... with exit code 1, and --help lists every option:
init), extra prompt sentences (note), pixel grid and palette (pixel).extract); reads an existing sheet (split, used by the update skill).| Step | Do |
|---|---|
| Brief | Text, reference images, or both; one round of at most four questions |
| Set up | pet_prepare.py init; upload_asset each file a job lists in references |
| Model, in this order | model_openai-gpt-image-2-5-sunburst, then model_google-gemini-nano-banana-2-1; recommend only when both are blocked |
| Each generation | model_schema_get once per model, dry_run, model_run with the job's prompt and sizes, jobs_wait, asset_download format: "png" to the job's output |
| Pixel-perfect | After the base is approved and before any row: Pixel Snapper (model_pixel-snapper) on the base once, then pet_prepare.py pixel |
| Each strip | pet_frames.py extract RUN --job <id>; read the JSON; look at frames/<id>/preview.png |
| Rows 0-8 done | pet_build.py RUN --version 1 --out RUN/qa/checkpoint, then pet_preview.py contact and gif |
| Finish | pet_build.py RUN, pet_preview.py looks, verdicts, pet_check.py, pet_preview.py gif, pet_package.py make |
The model ids are named on purpose: both keep one character across a row of eight poses from a reference image, which is what this job needs, and a team that cannot run either falls back to recommend with the need and the families (GPT Image, Nano Banana). Pixel Snapper is Scenario's tool for snapping generated pixel art to a clean grid and palette. Read every schema rather than trusting the sizes below: at authoring time Sunburst took referenceImages (an array, up to 10), width and height (16 to 3840, steps of 16), background (opaque here) and quality (left at its default in every run behind these notes), and widened extreme shapes on its own (asked for 3584x512, it returned 3584x1200), which is why init asks for a height of at least a third of the width; Nano Banana took up to 14 referenceImages and an aspectRatio preset (4:1, 8:1). Budget from the dry_run quote, which is what each job is charged: the cuCost that jobs_wait reports can leave out add-ons such as a project's Quality Gate, so tracking it understates spend. At authoring time the quotes were 13.75 CU for the base, 13.75 to 17.75 CU per strip (wider strips cost more) and 6.75 CU for a Snapper call, so a pixel-perfect v2 pet (12 generations with running-left mirrored, plus the Snapper) came to about 198 CU before any repair, about 216 CU when running-left has to be generated: agree a budget with room for two or three repaired rows. Unattended, never launch a job that would take the quotes already spent plus those still needed past the budget: if only the look rows are left, deliver v1 without them; otherwise stop and report.
auto, pixel, plush, clay, sticker, flat-vector, 3d-toy, painterly, brand-inspired), pixel-perfect or not, and v2 with look directions (default) or v1 only. A brand name with no visual cues: ask for colors, shapes and attitude; never copy a logo or readable text. Unattended, infer and record the answers, make every approval below yourself against the brief (recording why), and never install. Resolve the team and project, then create one collection for the pet (collection_create, then collection_add_assets for every kept output, per the scenario skill).python3 scripts/pet_prepare.py init --name Biscuit --notes "corgi in a yellow raincoat, red collar" --reference photo.jpg --out pets/biscuit (add --pixel for pixel-perfect: it sets the pixel style in every prompt; --version 1 skips the look rows). It picks a background key that contrasts with the references (or with the notes: a pink pet gets green, never magenta) and writes jobs.json: per job an id, frames, prompt, retry_prompt, references (run-relative files), sizes per model, depends_on and output. Just before a job runs, upload_asset each local file it lists under references/ (once per file, noting the id); a generated/ file is already an asset, so pass the id its job returned instead of uploading the download.base job with referenceImages set to the uploaded photo ids (none for a text-only pet), its prompt verbatim, and its Sunburst width/height, background: "opaque". Download to generated/base.png, run pet_frames.py extract RUN --job base, which writes the clean identity reference references/base.png, and show the base with asset_display. Nothing else starts before the user approves it; a warning that the pet is close to the key color means init --force --chroma-key with another key and a new base.model_pixel-snapper on the approved base asset as generated, background and all (image, colors 24 unless the user wants fewer, any fixed seed), download it, then pet_prepare.py pixel RUN --snapped snapped.png --colors <same>. It picks a grid of 8, 4, 2 or 1 screen pixels per art pixel, keeps the palette, and rewrites references/base.png as the enlarged pixel version (upload that new file), so every row is drawn from clean pixels and the build snaps every frame to the same grid and palette. Snap only the base: snapping each frame puts frames on different grids and costs a call per frame.running-left, which waits for running-right. Launch idle and running-right first as identity and gait checks, then the rest in waves under the team's concurrency limit (wait: false, one jobs_wait over the batch; a 429 naming parallel-custom-jobs gives the limit, per the scenario skill). Each row: referenceImages = the uploaded references/base.png plus the user's photos, the job's prompt and sizes. After each download, extract, read its JSON and look at the preview: an error (wrong count, a pose touching the image edge) or a wrong pose means regenerating that row now, with retry_prompt or a sentence added by pet_prepare.py note RUN --jobs <id> --text "...". When the pet looks the same mirrored (nothing handed, lettered or leaning to one side, so not a corgi with a one-sided patch or a robot with a tilted leaf), skip generating running-left and pass --mirror-left to every pet_build.py call instead.pet_build.py RUN --version 1 --out RUN/qa/checkpoint, then pet_preview.py contact RUN/qa/checkpoint.png --out RUN/qa/contact.png and pet_preview.py gif RUN/qa/checkpoint.png --out-dir RUN/qa/checkpoint-previews; pet_check.py RUN/qa/checkpoint.png --run RUN --json-out RUN/qa/checkpoint-check.json catches height and jump errors before the look rows are paid for. Show the GIF (open the local file, or upload it and share the app_url from asset_display); feedback goes into the affected rows, never into the sheet.note --jobs look-cardinals,look-9,look-10, then run look-cardinals (four poses: up, right, down, left). Extract it and approve all four by eye before anything else: a cardinal that does not read at pet size is regenerated now. Then look-9, extract, pet_build.py RUN --out RUN/qa/checkpoint (it warns that look-10 is still empty) and pet_preview.py looks RUN/qa/checkpoint.png --out RUN/qa/looks.png to look at it; then look-10, whose references include generated/look-9.png so the sweep continues.pet_build.py RUN writes final/spritesheet.png and final/spritesheet.webp with one edge cleanup pass. pet_preview.py looks RUN/final/spritesheet.webp --out RUN/qa/looks.png, look at it, and write qa/direction-semantics.json (format in the contract). pet_check.py RUN/final/spritesheet.webp --run RUN --require-v2 (no --require-v2 for a v1-only pet) must print ok: true; fix what it names and rebuild. pet_preview.py gif RUN/final/spritesheet.webp --out-dir RUN/previews, then upload_asset the sheet and both GIFs (kind: "image" takes WebP and GIF, and a GIF keeps its animation), file them with collection_add_assets, then show the local pet.gif (an inline asset_display can show a single frame; the app_url it returns plays the animation).pet_package.py make RUN writes package/biscuit/ (pet.json, spritesheet.webp), package/spritesheet-v1.png and the GIFs. Tell the user: ChatGPT web takes the v1 file under Settings > Personalization > Pet > Select pet > Upload pet, where the name is set and the look directions are absent (they exist only in the v2 file); Codex desktop takes the package folder. Ask before pet_package.py install RUN: it copies into ${CODEX_HOME:-~/.codex}/pets/biscuit/, refuses to replace an existing pet without --force, and backs it up into the run first.extract finds each pose by its shapes and pet_build.py places it.note sentence, fewer props) instead of rerunning the same prompt.000 is up, not neutral, and right means the viewer's right.pet_check.py: the package step compares SHA-256 and refuses other bytes; rebuild and check again.spritesheet-v1.png.install needs --force for that, and the user's yes.© scenario-labs, 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 9 other files (scripts, references) in skills/scenario-chatgpt-pet-create of scenario-labs/skills.
Open the folder on GitHubat commit f6f8ab7
Scenario Chatgpt Pet Create 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 |
|---|---|---|---|---|---|---|
| Scenario Chatgpt Pet Create this skillscenario-labs/skills | 946 | — | ~3.6k | Automated safety check: Pass | MIT | |
| 2D Sprite Generator0x0funky/agent-sprite-forge | 4.4k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Img Gen Avatar4thfever/cultivation-world-simulator | 2.1k | — | ~641 | Automated safety check: Pass | Custom licence | |
| Godot Asset Generatorjwynia/agent-skills | 170 | — | ~3.8k | Automated safety check: Pass | MIT | |
| Animated Spriteselithrar/dotfiles | 202 | — | ~1k | Automated safety check: Pass | MIT | |
| Pixijs Assetsnetaart/cohub | 572 | 1 repos | ~5k | Automated safety check: Pass | MIT |
0x0funky/agent-sprite-forge
Produces game-ready 2D characters, creatures, props, icons and effects as master stills, sheets or clips, and exports frames for common game engines.
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…
jwynia/agent-skills
Generate game assets using AI image generation APIs (DALL-E, Replicate, fal.ai) and prepare them for Godot.
elithrar/dotfiles
Create, repair, and review custom characters for 2D animation, animated sprite sheets, and custom Codex or ChatGPT pets, with consistent identity, readable motion, and timing-faithful previews.
netaart/cohub
A skill your agent uses when loading and managing resources in PixiJS v8.
nolantait/bevy-starter
Reference for Bevy sprites — rendering images, custom size, anchors, z-ordering, sprite sheets, texture atlases, pixel-perfect rendering, and bounding boxes.
scenario-labs/skills
A skill your agent uses when drawing or animating with Grease Pencil in Blender 5.x from Python: 2D or 2.5D illustration, frame-by-frame animation, a cutout or part-based 2D character, strokes with…
scenario-labs/skills
A skill your agent uses when grooming hair or fur in Blender with hair curves, such as a character hairstyle, animal fur, procedural fur in geometry nodes, or hair cards and mesh hair for games.
scenario-labs/skills
A skill your agent uses when lighting, rendering or compositing in Blender: light a character, product or hero shot, interior at dusk or night, three-point or motivated lighting, sun and sky, HDRI…
scenario-labs/skills
A skill your agent uses when animating characters or scenes in Godot 4.7: AnimationPlayer clips and RESET, AnimationTree state machines and blend spaces built in code, Mixamo or glTF import, loop…
scenario-labs/skills
A skill your agent uses when adding or fixing sound in Godot 4.7: audio buses and effects, volume sliders, 'too many sounds', combat audio with hundreds of enemies, sounds clipping or distorting, 3D…
scenario-labs/skills
A skill your agent uses when a Godot 4 game goes online or co-op: host and join with ENet, WebSocket for a web build, RPCs (@rpc, rpcid, anypeer), MultiplayerSpawner and MultiplayerSynchronizer…
Works with
Categories
A skill your agent uses when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making…. Scenario Chatgpt Pet Create is an agent skill from scenario-labs/skills.json package.
Scenario Chatgpt Pet Create fits situations like: creating a ChatGPT pet; Codex pet with Scenario: hatching an animated companion from a text idea; reference photos and art; making the 1536x2288 v2 pet sprite sheet with nine animation states and sixteen look directions.
Run `npx skills add scenario-labs/skills --skill scenario-chatgpt-pet-create -a claude-code`. Or copy the skill folder (skills/scenario-chatgpt-pet-create in scenario-labs/skills) into .claude/skills/scenario-chatgpt-pet-create in your project. Claude Code loads it when a task matches its description.
Run `npx skills add scenario-labs/skills --skill scenario-chatgpt-pet-create -a codex`. Or copy the skill folder (skills/scenario-chatgpt-pet-create in scenario-labs/skills) into .agents/skills/scenario-chatgpt-pet-create 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 scenario-labs/skills --skill scenario-chatgpt-pet-create -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/scenario-chatgpt-pet-create, .gemini/skills/scenario-chatgpt-pet-create, .github/skills/scenario-chatgpt-pet-create and .opencode/skills/scenario-chatgpt-pet-create in your project.
Going by SKILL.md and its folder, Scenario Chatgpt Pet Create needs Python for the scripts in its folder and the command-line tools its instructions call (npx, pip and python3). Our summary lists: Python 3; Node.js.
SKILL.md contains no URLs. Its commands use npx and pip, which can reach the network depending on how they are called. 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.
Scenario Chatgpt Pet Create is published under the MIT licence (declared in SKILL.md). 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 1.6k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Scenario Chatgpt Pet Create: 2D Sprite Generator (0x0funky/agent-sprite-forge, 4.4k stars), Img Gen Avatar (4thfever/cultivation-world-simulator, 2.1k stars), Godot Asset Generator (jwynia/agent-skills, 170 stars) and Animated Sprites (elithrar/dotfiles, 202 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
scenario-labs (a GitHub organization) maintains it in scenario-labs/skills, which has 946 GitHub stars. The repository holds 146 skills in this directory. The repository was last updated on October 10, 2026.
Source: scenario-labs/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.