Folder contract
Local package shape
~/.codex/pets/my-pet/ pet.json spritesheet.webp
The manifest identifies the pet and points Codex to the spritesheet file inside the same package folder.
How to install Codex pets
A Codex pet is a folder with a manifest and a spritesheet. Once the folder is installed, use /pet inside Codex to show or hide the companion.
Folder contract
~/.codex/pets/my-pet/ pet.json spritesheet.webp
The manifest identifies the pet and points Codex to the spritesheet file inside the same package folder.
pet.json
{
"id": "my-pet",
"displayName": "My Pet",
"description": "A concise pet description.",
"spritesheetPath": "spritesheet.webp"
}Atlas
The animation rows are idle, running right, running left, waving, jumping, failed, waiting, running, and review.
mkdir "$HOME/.codex/pets/tater" cp pet.json "$HOME/.codex/pets/tater/pet.json" cp spritesheet.webp "$HOME/.codex/pets/tater/spritesheet.webp" # In Codex /pet
How to use
Make a dedicated ~/.codex/pets/<pet-id>/ directory so Codex can discover the package by id.
Place pet.json and spritesheet.webp in that folder, keeping the manifest id aligned with the folder name.
Use a 1536 by 1872 spritesheet with 8 columns, 9 rows, 72 frames, and 192 by 208 frame cells unless your renderer contract changes.
Restart or refresh Codex if needed, then use /pet to select the installed Codex pet.
Install FAQ
Custom Codex pets go under ~/.codex/pets/<pet-id>/. The folder should contain pet.json and spritesheet.webp, with the manifest spritesheetPath pointing to the image file.
Use /pet inside Codex after the package is in the local pets folder. If the custom pet does not appear, confirm the folder name, pet.json id, and spritesheetPath all match the installed files.
For local Codex installation, spritesheetPath should point to the image file inside the pet folder. For web preview, this tool can load a browser-accessible URL because the React renderer only needs an image src.
The most common cause is an image that does not follow the shared atlas dimensions. Check that the spritesheet is 1536 x 1872, uses 8 columns and 9 rows, and keeps each frame aligned to 192 x 208 cells.