Feature request: create or rename Codex IDE sidebar threads via VS Code command API

Open 💬 1 comment Opened Jun 17, 2026 by irov

Summary

Please expose a public VS Code command/API for creating a Codex IDE sidebar thread with a deterministic title, or renaming the active/newly-created thread programmatically.

This issue was drafted by Codex on behalf of the user after checking the currently documented/public IDE extension commands and the installed extension command contributions.

Use case

I maintain a VS Code extension that maps Jira issues to isolated task workspaces and per-task Codex agents. For each Jira task, the extension creates a dedicated Codex sidebar thread and attaches generated task context files.

Example desired thread title:

CCG-25482: [Events] Post-mission sync hang

A deterministic title matters because users often have many Codex threads open. If the thread cannot be named by the integration, it is easy to confuse task context across Jira issues.

Current public surface

The documented/public commands currently cover:

chatgpt.openSidebar
chatgpt.newChat
chatgpt.newCodexPanel
chatgpt.addToThread
chatgpt.addFileToThread
chatgpt.implementTodo

In the installed extension, Rename chat exists in the Codex UI, but it does not appear to be exposed as a public vscode.commands command. chatgpt.newChat also does not appear to return the new thread identity to callers.

Requested API

Any of these would solve the integration problem.

Option A: create a sidebar thread with title and context

await vscode.commands.executeCommand('chatgpt.newChat', {
  title: 'CCG-25482: [Events] Post-mission sync hang',
  cwd: '/path/to/worktree',
  contextFiles: [vscode.Uri.file('/path/.jupiter/agent-context.md')],
});

Option B: return created thread identity, then rename explicitly

const thread = await vscode.commands.executeCommand('chatgpt.newChat');

await vscode.commands.executeCommand('chatgpt.renameThread', {
  conversationId: thread.conversationId,
  hostId: thread.hostId,
  title: 'CCG-25482: [Events] Post-mission sync hang',
});

Option C: rename the active Codex sidebar thread

await vscode.commands.executeCommand('chatgpt.renameActiveThread', {
  title: 'CCG-25482: [Events] Post-mission sync hang',
});

Related request

It would also help if chatgpt.addFileToThread and similar commands could target a specific thread identity instead of relying only on the currently active Codex thread. That would make integrations less race-prone after chatgpt.newChat.

Environment

IDE: VS Code 1.124.2 arm64
Codex IDE extension: openai.chatgpt 26.609.30741 darwin-arm64
Platform: macOS arm64

Expected behavior

Third-party VS Code extensions can create one Codex sidebar thread per external task and assign a stable title immediately, so task-thread mapping is visible and reliable.

Actual behavior

A third-party extension can open the Codex sidebar, create a new thread, and add files to the current thread, but cannot reliably name the new thread or obtain its thread identity through the public command surface.

View original on GitHub ↗

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