Technical reference
Codex Pet package format
A Codex custom pet package is a local folder that contains pet.json and spritesheet.webp.
Quick facts
| Package folder | ~/.codex/pets/<pet-name>/ |
|---|---|
| Required manifest | pet.json |
| Required spritesheet | spritesheet.webp |
| Atlas size | Not enforced |
| Grid | Varies by pack |
| Cell size | Derived by client/runtime |
| Format | transparent WebP / RGBA |
Manifest shape
{
"id": "codie",
"displayName": "Codie",
"description": "A tiny pixel robot companion for Codex Pet.",
"spritesheetPath": "spritesheet.webp"
}Animation rows
Each row represents one animation state. The standard layout has 9 rows matching the Codex pet runtime states. Frame counts below are recommendations based on the Codie reference pack — your pack may use fewer or more frames per row.
| Row | State | Recommended frames |
|---|---|---|
| 0 | idle | 6 |
| 1 | running-right | 8 |
| 2 | running-left | 8 |
| 3 | waving | 4 |
| 4 | jumping | 5 |
| 5 | failed | 8 |
| 6 | waiting | 6 |
| 7 | running | 6 |
| 8 | review | 6 |
Validation rules
- spritesheet.webp is a readable transparent WebP image.
- Atlas dimensions are visible in admin review but are not automatically rejected.
- Each action row must have at least one non-empty frame. Playback uses consecutive non-empty frames starting from column 0; trailing empty cells are ignored.
- No grid lines, labels, or frame numbers are present.
- The pet identity stays consistent across rows.