All platforms · 7 min · Upstream checked July 17, 2026

How to install a custom Codex pet safely

Inspect a Codex pet package, place data files under the custom pets directory, refresh the picker, and diagnose without running an opaque installer.

Platform behavior can change. Compare this guide with the original repository at commit a1c48b3a84cc.
01Inspect the ZIP contents
02Validate manifest and spritesheet
03Copy one pet folder under Codex Home
04Refresh, select, and test the pet

A pet package should be data only

The essential files are pet.json and the referenced spritesheet PNG or WebP. Inspect the archive before extracting. Reject shell scripts, PowerShell, applications, browser extensions, symlinks, absolute paths, or parent-directory paths. A visual companion does not need to change API keys, model settings, the signed Codex app, WindowsApps, or app.asar.

Use one explicit folder

Place the files together under the current Codex Home pets directory, normally ~/.codex/pets/<pet-id>/ for native macOS, Linux, or Windows user storage. Keep the folder id aligned with pet.json, preserve the exact spritesheet filename, and avoid copying a ZIP inside another unnecessary nested directory.

Refresh and test in the application

Open Codex Settings, Appearance, and Pets, then refresh custom pets and select the new entry. Restart Codex once if the picker does not update. Use /pet and observe idle, working, waiting, review, and failure changes. Remove only the specific pet folder if you decide not to keep it.

Windows native and WSL can resolve different Codex Home paths. Install into the environment used by the running Codex app instead of copying the same folder into multiple homes blindly.

Completion checklist

Related guides