Codex Desktop pet/avatar floating overlay is clipped to the top-left quarter
What version of the Codex App are you using (From “About Codex” dialog)?
Version 26.429.30905 (2345)
What subscription do you have?
Plus
What platform is your computer?
macOS Darwin 24.6.0 arm64 arm
What issue are you seeing?
The Codex Desktop floating pet/avatar overlay is clipped. Only the upper-left portion of the avatar and notification bubble is visible.
This happens with both:
- A custom pet
- Codex built-in pets
So the issue does not appear to be caused by a custom spritesheet or pet.json. It also reproduces on both an external monitor and the built-in Mac display.
- App: Codex Desktop
- Version: 26.429.30905
- Bundle version: 2345
- Platform: macOS
- Display setup: Reproduced on external monitor and built-in Mac display
- Feedback ID: 019df341-31ff-7181-91ab-1eea2ed447a0
<img width="301" height="146" alt="Image" src="https://github.com/user-attachments/assets/9f04f2e2-5fc4-40e2-a2aa-9f25e60dbbaa" />
What steps can reproduce the bug?
- Open Codex Desktop on macOS.
- Enable/show the floating pet/avatar overlay.
- Select either a built-in Codex pet or a custom pet.
- Observe the floating overlay on screen.
- Try moving between an external monitor and the built-in Mac display.
Result: the pet/avatar and notification bubble remain clipped.
What is the expected behavior?
The floating pet/avatar overlay should show the full mascot and the full notification bubble, with the overlay window sized to fit the rendered content.
Additional information
Local inspection suggests a mismatch between the avatar overlay's rendered/measured size and the default size expected by the main process.
Persisted global state recorded the avatar overlay mascot/anchor size as approximately 80x87:
{
"electron-avatar-overlay-bounds": {
"width": 356,
"height": 320,
"anchor": { "width": 80, "height": 87 },
"mascot": { "width": 80, "height": 87 }
}
}
However, the bundled avatar overlay code appears to use a default mascot size around 112x121:
gO = { width: 112, height: 121 }
The avatar CSS also implies a roughly 112px-wide mascot:
.codex-avatar-root {
aspect-ratio: 192 / 208;
width: 7.04rem;
}
The overlay wrapper appears to use Tailwind size-20, which is about 80px:
"relative flex size-20 cursor-interaction ..."
This may cause the renderer to report an 80px-ish element size via avatar-overlay-element-size-changed, after which the main process persists/reuses a too-small overlay geometry. The result is stable window-level clipping.
Make the avatar overlay wrapper, sprite root CSS, and main-process default mascot geometry use one consistent size.
For example:
- Avoid constraining the mascot wrapper to size-20 if the sprite/default layout expects about 112x121.
- Measure the actual .codex-avatar-root rendered size instead of the smaller wrapper.
- Clear or migrate persisted electron-avatar-overlay-bounds if invalid small bounds were saved.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗