Codex Desktop pet overlay does not reflect external Codex CLI sessions

Resolved 💬 1 comment Opened May 14, 2026 by zzh18877220541 Closed May 14, 2026

What happened?

Codex Desktop's floating pet/avatar overlay does not appear to respond to Codex CLI sessions started from a terminal.

When a normal codex CLI session is running, waiting for input, or completes work, the desktop pet remains idle and the avatar notification tray does not show the CLI session activity. The pet does respond to sessions created from Codex Desktop itself.

Expected behavior

Codex Desktop's pet/avatar overlay should reflect active local Codex CLI sessions in the same way it reflects Desktop-created local sessions:

  • running CLI turn -> pet shows a running/working state
  • CLI session waiting for approval or user input -> pet shows a waiting state and notification
  • CLI turn completed or failed -> pet shows the corresponding review/failed state

Actual behavior

External CLI sessions are not reflected by the pet/avatar overlay in real time. They may exist in local Codex state/history, but the overlay stays idle and does not surface their turn state.

Reproduction steps

  1. Install/open Codex Desktop and enable the floating pet/avatar overlay.
  2. In a separate terminal, start or resume a Codex CLI session, for example:

``sh
codex
# or
codex resume <thread-id>
``

  1. Ask the CLI session to perform a task that takes long enough to observe, or triggers a user-input/approval wait.
  2. Observe the Codex Desktop pet/avatar overlay.

Observed local details

On my machine, the same Codex data directory contains both Desktop-created threads and CLI-created threads. CLI-created threads are present with source = 'cli', while Desktop-created threads are present with source = 'vscode'/desktop app source values. The pet overlay appears to derive its state from Desktop app-server recent conversation/cache events, so external CLI lifecycle events are not being pushed into the overlay's live session model.

This looks like a missing bridge between external CLI session lifecycle events and Codex Desktop's avatar overlay state, rather than a custom pet spritesheet/manifest issue.

Environment

  • Codex CLI: codex-cli 0.130.0
  • Codex Desktop: 26.506.31421 (2620)
  • macOS: 15.3.1 (24D70)

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗