Codex Desktop silently omits a valid V2 custom pet on native Windows
What version of the Codex App are you using (From “About Codex” dialog)?
26.707.9981.0 (Windows app package)
What subscription do you have?
Unknown / not relevant to local pet discovery
What platform is your computer?
Microsoft Windows NT 10.0.26200.0 x64
What issue are you seeing?
Codex Desktop does not discover a valid V2 custom pet on native Windows. The pet directory is silently omitted from Settings > Appearance > Pets after clicking Refresh, and no actionable error is shown.
A V1 custom pet under the same CODEX_HOME\pets directory loads and can be selected, so custom pets are enabled and the root directory is readable. The V2 package passes the current hatch-pet validation, but it never appears in the pet list.
This is not a WSL setup: the Codex app-server is running as a native Windows process, and WSL_DISTRO_NAME / WSL_INTEROP are unset.
What steps can reproduce the bug?
- Run Codex Desktop natively on Windows (no WSL app-server).
- Create
C:\Users\<USER>\.codex\pets\watt300png\pet.json:
{
"displayName": "Watt300",
"description": "A custom Codex pet",
"spriteVersionNumber": 2,
"spritesheetPath": "spritesheet.webp"
}
- Add a valid V2
spritesheet.webp:
- dimensions: 1536 x 2288
- 11 animation rows, including the required looking directions
- lossless WebP (VP8L)
- file size: 1,078,118 bytes
- Validate the package with the current
hatch-petvalidator; validation passes. - Open Settings > Appearance > Pets and click Refresh custom pets.
- Restart Codex Desktop and refresh again.
- Observe that the V1 pet is listed, while this V2 pet is absent and cannot be selected.
What is the expected behavior?
A valid V2 custom pet should appear in Settings > Appearance > Pets and be selectable.
If a package cannot be loaded, Codex should show the per-folder validation/read error instead of silently dropping the directory.
Additional information
The following possible causes were checked without changing the result:
- manifest JSON syntax and formatting
- adding/removing an explicit
id - removing unrelated PNG files from the pet directory
- Windows file ACL/read access
- required V2 atlas dimensions, rows, populated cells, and looking directions
The WebP is slightly larger than 1 MiB. A size/encoding boundary is only a hypothesis; I found no documented fs/readFile limit that confirms it.
Related WSL path issues: #20730, #20905, and #21471. This report is a different case because the app-server and pet directory are both native Windows paths.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗