What capability would you like to see?
Please expose a supported hook or client request that lets a local integration mutate the visible title for the currently open Codex Desktop thread and trigger the Desktop UI to repaint immediately.
Use case
We run a workflow orchestrator beside Codex Desktop. As work moves between GitHub issues and human gates, we want the current Codex thread title to stay aligned with the active issue and gate, for example:
#48 [Implement] Update Codex Desktop visible thread title store
#48 [PR Review] Update Codex Desktop visible thread title store
This makes long-running local Codex threads scannable without relying on the original auto-generated title.
Current behavior
We can update persisted local metadata successfully:
~/.codex/session_index.jsonl
~/.codex/state_5.sqlite threads.title
- rollout
session_meta.payload.dynamic_tools
thread_dynamic_tools SQLite rows
The stored title changes, but the already-open Codex Desktop sidebar/header keeps showing the stale title until Desktop eventually reloads/reopens the thread.
The documented app-server RPC thread/name/set is close, but Codex Desktop currently launches its local app-server over stdio and does not expose a control socket for the already-running Desktop process. Starting a separate codex app-server can persist changes, but it does not reliably live-refresh the already-open Desktop renderer.
Requested API shape
Any one of these would solve it:
- A
codex_app.set_thread_title dynamic tool exposed to Desktop threads by default, scoped to the current thread.
- A supported app-server or IPC request such as
thread/title/updateVisible that updates the loaded thread title and broadcasts the existing internal title-update notification.
- A supported renderer invalidation/refresh request for a specific thread title, if mutation must remain app-server-owned.
- A documented way for local integrations to connect to the Desktop-owned app-server control plane when Desktop launches app-server over stdio.
Expected behavior
A local integration should be able to request a new title for the active thread, and Codex Desktop should update all visible title surfaces immediately: sidebar, header, command/search results, and persisted history.
Why this matters
Codex Desktop is increasingly used for long-running, issue-backed workflows. Auto-generated thread names go stale quickly when the work scope changes. A supported title mutation/repaint hook would avoid unsupported local DB edits, renderer injection, app restarts, and stale thread history.
Related observations
This overlaps with the live Desktop refresh gap discussed in #21743 and the live co-presence/event fanout gap discussed in #21551, but this request is narrower: expose a supported way to mutate and repaint thread title state from a local integration.
What capability would you like to see?
Please expose a supported hook or client request that lets a local integration mutate the visible title for the currently open Codex Desktop thread and trigger the Desktop UI to repaint immediately.
Use case
We run a workflow orchestrator beside Codex Desktop. As work moves between GitHub issues and human gates, we want the current Codex thread title to stay aligned with the active issue and gate, for example:
This makes long-running local Codex threads scannable without relying on the original auto-generated title.
Current behavior
We can update persisted local metadata successfully:
~/.codex/session_index.jsonl~/.codex/state_5.sqlitethreads.titlesession_meta.payload.dynamic_toolsthread_dynamic_toolsSQLite rowsThe stored title changes, but the already-open Codex Desktop sidebar/header keeps showing the stale title until Desktop eventually reloads/reopens the thread.
The documented app-server RPC
thread/name/setis close, but Codex Desktop currently launches its local app-server over stdio and does not expose a control socket for the already-running Desktop process. Starting a separatecodex app-servercan persist changes, but it does not reliably live-refresh the already-open Desktop renderer.Requested API shape
Any one of these would solve it:
codex_app.set_thread_titledynamic tool exposed to Desktop threads by default, scoped to the current thread.thread/title/updateVisiblethat updates the loaded thread title and broadcasts the existing internal title-update notification.Expected behavior
A local integration should be able to request a new title for the active thread, and Codex Desktop should update all visible title surfaces immediately: sidebar, header, command/search results, and persisted history.
Why this matters
Codex Desktop is increasingly used for long-running, issue-backed workflows. Auto-generated thread names go stale quickly when the work scope changes. A supported title mutation/repaint hook would avoid unsupported local DB edits, renderer injection, app restarts, and stale thread history.
Related observations
This overlaps with the live Desktop refresh gap discussed in #21743 and the live co-presence/event fanout gap discussed in #21551, but this request is narrower: expose a supported way to mutate and repaint thread title state from a local integration.