Download a Codex pet package zip, then put it where Codex expects it.

A Codex pet download is a package zip with a manifest and a spritesheet. Once the folder is installed, use /pet inside Codex, or open Settings, choose Appearance, then Pets to change the active companion. If you are still choosing a package, start in the Codex pet gallery. If you need the concept first, read what Codex pets are.

A Codex pet package zip should be boring and predictable.

A downloadable package from this site is intentionally small: it should unzip into one pet folder with pet.json and spritesheet.webp. The manifest names the pet, and its spritesheetPath should point at the spritesheet file in the same folder. If those files are missing or renamed, preview the package before installing it.

When you are checking a Codex pet.json file, treat spritesheetPath as the pointer from the manifest to the actual image file. Keep it relative for a local package, then use the preview tool if the path or atlas dimensions are uncertain.

Install finished packages; generate only when you need a new pet.

Install hatch-pet before generation

~/.codex/skills/hatch-pet/
  SKILL.md
  scripts/
  references/

hatch-pet is the generation workflow skill. It is separate from the finished pet package. If Codex cannot discover this skill, a copied prompt should stop at the install step instead of claiming a pet was generated. Because the installed skill can evolve, use its reported atlas and manifest contract for newly generated pets rather than assuming the catalog package dimensions.

pet.json and spritesheetPath stay together

~/.codex/pets/my-pet/
  pet.json
  spritesheet.webp

The manifest identifies the pet, and spritesheetPath points Codex to the spritesheet file inside the same package folder.

Minimum manifest

{
  "id": "my-pet",
  "displayName": "My Pet",
  "description": "A concise pet description.",
  "spritesheetPath": "spritesheet.webp"
}

Spritesheet dimensions

1536 x 1872 px8 columns x 9 rows192 x 208 px cells

The animation rows are idle, running right, running left, waving, jumping, failed, waiting, running, and review.

Local install snippet
# After downloading tater-codex-pet.zip
mkdir -p "$HOME/.codex/pets/tater"
unzip -o "./tater-codex-pet.zip" -d "$HOME/.codex/pets/tater"

# In Codex
/pet

# Or manually
Settings -> Appearance -> Pets -> choose tater

Download the package zip first, then run this command from the folder that contains the zip file. After installation, use /pet or open Settings, choose Appearance, then Pets. Use Refresh custom pets if the package does not appear immediately.

How to install a Codex pet

  1. 01

    Download a package

    Choose a finished Codex pet in the gallery and download its package zip before creating the local pet folder.

  2. 02

    Create the pet folder

    Make a dedicated ~/.codex/pets/<pet-id>/ directory so Codex can discover the package by id.

  3. 03

    Add the required files

    Place pet.json and spritesheet.webp in that folder, keeping the manifest id aligned with the folder name.

  4. 04

    Confirm the atlas contract

    Use a 1536 by 1872 spritesheet with 8 columns, 9 rows, 72 frames, and 192 by 208 frame cells unless your renderer contract changes.

  5. 05

    Activate it in Codex

    Use /pet or open Settings -> Appearance -> Pets and choose the installed Codex pet. If it is missing, use Open folder to confirm the active directory, then Refresh custom pets.

Codex pet installation questions

How do I download a Codex pet package?

Open the Codex pet gallery, choose a pet, and download its package zip from the pet detail page. The package should contain pet.json and spritesheet.webp so you can place both files under ~/.codex/pets/<pet-id>/.

Do I need hatch-pet to use an existing Codex pet?

No. hatch-pet is for generating a new pet, not for using an existing package. To use an existing Codex pet, add its pet.json and spritesheet.webp under ~/.codex/pets/<pet-id>/ or use the pet detail page's AI setup prompt.

Where do custom Codex pets go?

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.

How do I turn on the pet after installing it?

Use /pet inside Codex after the package is in the local pets folder, or open Settings -> Appearance -> Pets and choose the installed pet. Use Open folder or Refresh custom pets when those controls are available. If the pet still does not appear, confirm the folder name, pet.json id, and spritesheetPath all match.

What size should a Codex pet spritesheet be?

The downloadable Codex pets on this site use a 1536 x 1872 spritesheet with 8 columns, 9 rows, and 192 x 208 frame cells. For a newly generated pet, follow the current installed hatch-pet and renderer contract and verify the reported dimensions before installation.

Can spritesheetPath be an external URL?

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.

What causes a Codex pet preview to look broken?

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.

Why can a custom pet path fail in WSL?

Codex and WSL can disagree about Windows and Linux path forms. Keep the package under the Codex home used by the running app, use the Pets settings Open folder action when available, and refresh custom pets after copying the files.

Can pet.json define custom animation timing and app events?

Do not rely on that today. Custom packages provide the manifest and spritesheet, while the Codex app still owns animation timing, frame sequences, state chaining, and activity-event mapping.