Problem
The plugin currently sets clientInfo.name to "Claude Code" in DEFAULT_CLIENT_INFO (app-server.mjs, line 28). This causes the Codex app-server to present Claude Code/x.x.x as the user-agent to upstream services, which creates several issues:
1. User-agent collision with the host application
Claude Code (Anthropic's CLI) already uses Claude Code/x.x.x as its own user-agent for Anthropic API requests. When the Codex plugin running inside Claude Code also presents the same UA string, upstream services cannot distinguish between:
- Native Claude Code requests (Anthropic Messages API)
- Codex requests routed through Claude Code (OpenAI Responses API)
This breaks any service that uses UA-based routing, rate limiting, or analytics.
2. Naming convention violation
Every other Codex surface uses a codex_* or Codex * prefix:
| Surface |
clientInfo.name |
| CLI (Rust) |
codex_cli_rs |
| TUI |
codex-tui |
| VS Code extension |
codex_vscode |
| Desktop app |
Codex Desktop |
| Claude Code plugin |
Claude Code ← only outlier |
The Claude Code plugin is the only surface that uses the host application's name instead of following the established codex_ + host platform pattern.
3. Compliance log misattribution
The app-server documentation states that clientInfo.name is used to identify the client for the OpenAI Compliance Logs Platform. Using "Claude Code" incorrectly attributes Codex plugin usage to a different vendor's product in compliance records.
Proposed fix
Rename clientInfo.name from "Claude Code" to "codex_claude_code", consistent with the codex_vscode naming pattern:
const DEFAULT_CLIENT_INFO = {
title: "Codex Plugin",
name: "codex_claude_code",
version: PLUGIN_MANIFEST.version ?? "0.0.0"
};
Problem
The plugin currently sets
clientInfo.nameto"Claude Code"inDEFAULT_CLIENT_INFO(app-server.mjs, line 28). This causes the Codex app-server to presentClaude Code/x.x.xas the user-agent to upstream services, which creates several issues:1. User-agent collision with the host application
Claude Code (Anthropic's CLI) already uses
Claude Code/x.x.xas its own user-agent for Anthropic API requests. When the Codex plugin running inside Claude Code also presents the same UA string, upstream services cannot distinguish between:This breaks any service that uses UA-based routing, rate limiting, or analytics.
2. Naming convention violation
Every other Codex surface uses a
codex_*orCodex *prefix:clientInfo.namecodex_cli_rscodex-tuicodex_vscodeCodex DesktopClaude Code← only outlierThe Claude Code plugin is the only surface that uses the host application's name instead of following the established
codex_+ host platform pattern.3. Compliance log misattribution
The app-server documentation states that
clientInfo.nameis used to identify the client for the OpenAI Compliance Logs Platform. Using"Claude Code"incorrectly attributes Codex plugin usage to a different vendor's product in compliance records.Proposed fix
Rename
clientInfo.namefrom"Claude Code"to"codex_claude_code", consistent with thecodex_vscodenaming pattern: