All platforms · 7 min · Codex Dream Skin checked July 29, 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.

Edited and reviewed by CodexTheme Tools editorial. Reviewed . Status: Published.

Sources: Reviewed against the current upstream Codex theme sources and Codex desktop behavior cited in this guide. No site-owned macOS or Windows device verification is claimed unless a published runtime receipt exists.

Platform behavior can change. Compare this guide with the Codex Dream Skin repository at commit 611c10176a27.
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. Before extracting, open the ZIP in the browser-local Pet Builder doctor. It rejects traversal, nested payloads, executable extras, encryption, symlinks, expansion beyond the size limit, manifest/atlas mismatches, and missing transparency without uploading the archive. 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