Skip to content

Expose supported hook to update Codex Desktop thread titles live #24202

@aaronhbridges

Description

@aaronhbridges

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:

  1. A codex_app.set_thread_title dynamic tool exposed to Desktop threads by default, scoped to the current thread.
  2. 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.
  3. A supported renderer invalidation/refresh request for a specific thread title, if mutation must remain app-server-owned.
  4. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appapp-serverIssues involving app server protocol or interfacesenhancementNew feature or requestsessionIssues involving session (thread) management, resuming, forking, naming, archiving

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions