V1
8 × 9Best for preserving or repairing an existing legacy pet. Omit spriteVersionNumber or set it to 1.
- Atlas
- 1536 × 1872
- Action rows
- 9
- Look directions
- 0
Craft, review, and share
From version choice and action-by-action direction to clean transparent edges, packaging, and sharing: this is the quality bar for our selected pet gallery.
Fastest workflow
Open the workflow in local Codex, or copy the prompt for another AI assistant.
Start from references or attach existing files. Codex creates or repairs the pet, validates it, and opens a pull request.
Use English throughout this task. Help me create, finish, or submit my own Codex pet to https://github.com/legeling/awesome-codex-pet. Use the GitHub API by default so I do not need to clone the full repository. The default outcome is a reviewable pull request, not a blocker report. First ask whether I want to make the pet now from a character or references, finish an in-progress pet, or submit an existing pet folder or spritesheet.webp. Collect all missing decisions in one compact question set. Requirements: 1. Read AGENTS.md, CONTRIBUTING.md, pets.json, collections.json, the validation scripts, and .agents/skills/submit-codex-pet/SKILL.md through the GitHub API. Search canonical_key, names, and franchise collections. canonical_key groups versions of one character rather than being unique per author. Different authors may submit independently produced versions when variant_note explains the distinction, but a byte-identical spritesheet is not allowed. 2. Based on my choice, decide whether to create from references, finish existing assets, add metadata, or validate a complete three-file package. When production or repair is required, fetch and follow the repository's hatch-pet-v1 or hatch-pet-v2 skill without assuming the repository is cloned. 3. The final folder must be pets/<pet-slug>--<author-slug>/ and contain only submission.json, pet.json, and spritesheet.webp. V1 uses 1536x1872. V2 uses 1536x2288 and spriteVersionNumber: 2. 4. Review actions, look directions, identity, scale, and baseline frame by frame. Repair purple, green, cyan, or magenta fringe and transparent holes on dark, light, and checkerboard backgrounds without globally deleting legitimate character colors. 5. Separate final-pet provenance from reference provenance. Credit the submitter or adapter for original or independently AI-generated final pixels. A public source_url may be empty when the source is described honestly and repository use is marked non-commercial. Character references that are not uploaded remain reference-only; do not miscredit their artists as the pet author. Record direct crops, traces, cleanup, or substantial pixel reuse honestly; regenerate or repair them when they cause inconsistent identity, weak actions, damaged outlines, or chroma residue. When bilingual naming is selected, provide both localized_names.en and localized_names.zh. 6. In a temporary local workspace, run or equivalently perform npm run validate:pr, npm run lint, and an isolated installation test. Do not include QA, references, videos, README files, pets.json, generated previews, or temporary files in the pull request. 7. Before publication, show me the contact sheet or final spritesheet and obtain visual approval. Then use the GitHub API to create or reuse a submission branch in my fork, upload the three final files, and open one focused pull request against the upstream repository. A full clone is not required. Once the package, visual approval, and required validation are complete, open it as a **ready-for-review pull request, not a draft**. Use a draft only when I explicitly request one or the submission is knowingly unfinished, and state the remaining work. Attach the contact sheet to the pull request description rather than committing it to the pet directory. Document duplicate research, final-asset authorship, reference/source notes, the non-commercial statement, version, and validation, and link any existing issue. Repository CI also produces a downloadable preview artifact. 8. Do not block because a public source_url or formal license name is absent. Record authorship and source honestly and state "Non-commercial use only." Put review effort into character fidelity, frame consistency, action direction, alternating running gait, look directions, animation continuity, and transparent edges. If GitHub is not authorized, ask me to connect it and retry. 9. Only after those recovery steps still cannot complete, and after I explicitly approve the fallback, create a [Submission] issue containing <!-- pet-flow: submission -->. State one genuine blocker and the exact resolution step, use the exact headings ### Pet runtime version and ### Primary category, and attach a contact sheet plus an accessible spritesheet or compact package. Filenames and local paths are not attachments. Do not publish a long validation report for inaccessible local files. 10. Follow the CI run. Fix deterministic structural or formatting failures; stop for my confirmation when the decision concerns visual direction, pet quality, or duplicate acceptance. Ask whether I want live creation, continued production, or submission of existing files first. Then inspect my references and assets and carry production or repair, frame-by-frame review, validation, GitHub API upload, pull request creation, and CI follow-up through end to end.
Runtime contract
Both versions share the nine standard actions. V2 adds two rows of 16 clockwise look directions and is the default for new work; V1 remains fully supported for legacy pets.
Best for preserving or repairing an existing legacy pet. Omit spriteVersionNumber or set it to 1.
Recommended for new pets and upgrades. Set spriteVersionNumber to 2 and review the full 16-direction loop.
Upgrading a V1 pet preserves approved standard rows and adds look directions. In Codex, open Settings → Pets, choose Update, then review the complete result before submitting the final three files.
Nine distinct states
A strong pet keeps one identity while giving each row a clear purpose. Write and refine each action separately; shared proportions, palette, anchor, and prop rules keep the whole set coherent.
A living rest loop with subtle breathing, blinking, or weight shift. It should never read as a frozen still.
A readable right-facing travel gait with alternating cadence and stable props. Avoid speed lines, dust, and floor shadows.
A true left-facing gait. Mirror only when markings, text, lighting, props, and handedness remain correct.
A clear greeting led by the hand, paw, ear, or body. Use the pet itself, not detached wave marks.
Show takeoff, airborne motion, and return while keeping scale and the ground anchor visually stable.
Make frustration or failure readable through pose and expression. Any tears, smoke, or stars must stay attached and sprite-like.
An expectant pose that asks for approval or input, clearly different from ordinary idle and focused review.
A non-directional busy state for ongoing work, not another left-or-right travel loop.
A focused inspection or thinking loop using gaze, head angle, posture, or hands without inventing unrelated props.
Transparent-edge craft
Green, cyan, magenta, purple, or pink halos often come from chroma-key cleanup. They are quality defects, but broad color deletion can erase real hair, clothing, eyes, or props.
Each pet lives under pets/<pet-slug>--<author-slug>/ and only contains three files.
pets/
└── pet-slug--author-slug/
├── submission.json
├── pet.json
└── spritesheet.webpGenerated previews land in assets/previews/<pet-id>/ and are produced by the build pipeline.
Categories come from the repository taxonomy. Pick the closest primary type when you submit.
Use submission.json.collections to reference franchise series or theme slugs from the repository's collections.json. The website groups pets automatically and publishes a collection after it reaches three members.
{
"collections": ["genshin-impact"]
}Selection standard
Community distribution
Every pet page keeps its creator and source visible. Share the complete page, a ready-to-post message, a Markdown link, or the native system share sheet so people can preview and install from the original listing.