codex - 💡(How to fix) Fix [Bug] VS Code Codex extension host stays above 300% CPU on macOS

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

The Codex VS Code extension appears to trigger persistent high CPU usage in the VS Code extension host process on macOS. The process shown in Activity Monitor is Code Helper (Plugin), and it remains around 280-350% CPU for multiple minutes after VS Code starts.

The high CPU is in the VS Code extension host process, not in the spawned codex app-server child process. The extension host has openai.chatgpt activated and has spawned:

~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

Error Message

WARN codex_core_plugins::manager: failed to warm featured plugin ids cache remote plugin sync request to https://chatgpt.com/backend-api/plugins/featured failed with status 403 Forbidden

codex_features: unknown feature key in config: remote_connections

Request failed ... method=experimentalFeature/enablement/set unsupported feature enablement auth_elicitation

Error fetching httpStatus=403 ... url=https://chatgpt.com/ces/v1/rgstr...

Failed to list resource templates for MCP server 'godot-mcp-pro': Mcp error: -32601: Method not found Failed to list resources for MCP server 'computer-use': Mcp error: -32601: Method not found

Root Cause

The Codex VS Code extension appears to trigger persistent high CPU usage in the VS Code extension host process on macOS. The process shown in Activity Monitor is Code Helper (Plugin), and it remains around 280-350% CPU for multiple minutes after VS Code starts.

The high CPU is in the VS Code extension host process, not in the spawned codex app-server child process. The extension host has openai.chatgpt activated and has spawned:

~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

Code Example

~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

---

OS: macOS 15.7.4 (24G517)
Architecture: arm64
VS Code: 1.120.0
Extension ID: openai.chatgpt
Extension display name: Codex - OpenAI's coding agent
Extension version: 26.5513.21555
Extension path: ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64

---

2026-05-18 15:37:15 CST
35998 35259 329.9 6.7 03:28 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:26 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled
36440 35998   0.0 0.3 03:26 .../jsonServerMain --node-ipc --clientProcessId=35998
36649 35998   0.0 0.2 03:21 .../dbaeumer.vscode-eslint-3.0.24/server/out/eslintServer.js --node-ipc --clientProcessId=35998

2026-05-18 15:37:20 CST
35998 35259 328.0 5.5 03:33 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:31 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

2026-05-18 15:37:25 CST
35998 35259 345.1 6.2 03:38 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:36 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

2026-05-18 15:37:30 CST
35998 35259 356.3 8.3 03:43 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:41 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

2026-05-18 15:37:35 CST
35998 35259 336.5 7.2 03:48 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:46 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

---

Code Helper (Plugin): 319.8% CPU, CPU time 2:20.23
Code Helper (Plugin): 285.2% CPU, CPU time 2:35.83

---

2026-05-18 15:33:48.322 [info] Extension host with pid 35998 started
2026-05-18 15:33:48.418 [info] ExtensionService#_doActivateExtension openai.chatgpt, startup: false, activationEvent: 'onChatSession:openai-codex'
...
2026-05-18 15:33:49.847 [info] ExtensionService#_doActivateExtension dbaeumer.vscode-eslint, startup: false, activationEvent: 'onStartupFinished'

---

2026-05-18 15:33:49.540 [info] Activating Codex extension
2026-05-18 15:33:49.540 [info] [CodexMcpConnection] Spawning codex app-server
2026-05-18 15:33:49.540 [info] ChatGPT desktop bridge active
2026-05-18 15:33:49.540 [info] Desktop bridge registered
2026-05-18 15:33:49.540 [info] Work with apps desktop bridge initialized

---

WARN codex_core_plugins::manager: failed to warm featured plugin ids cache
remote plugin sync request to https://chatgpt.com/backend-api/plugins/featured failed with status 403 Forbidden

codex_features: unknown feature key in config: remote_connections

Request failed ... method=experimentalFeature/enablement/set
unsupported feature enablement `auth_elicitation`

Error fetching httpStatus=403 ... url=https://chatgpt.com/ces/v1/rgstr...

Failed to list resource templates for MCP server 'godot-mcp-pro': Mcp error: -32601: Method not found
Failed to list resources for MCP server 'computer-use': Mcp error: -32601: Method not found
RAW_BUFFERClick to expand / collapse

Bug: VS Code Codex extension host stays above 300% CPU on macOS

Summary

The Codex VS Code extension appears to trigger persistent high CPU usage in the VS Code extension host process on macOS. The process shown in Activity Monitor is Code Helper (Plugin), and it remains around 280-350% CPU for multiple minutes after VS Code starts.

The high CPU is in the VS Code extension host process, not in the spawned codex app-server child process. The extension host has openai.chatgpt activated and has spawned:

~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

Environment

OS: macOS 15.7.4 (24G517)
Architecture: arm64
VS Code: 1.120.0
Extension ID: openai.chatgpt
Extension display name: Codex - OpenAI's coding agent
Extension version: 26.5513.21555
Extension path: ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64

Reproduction

  1. Open VS Code normally.
  2. Wait for the Codex extension to activate.
  3. Observe Activity Monitor or ps.
  4. Code Helper (Plugin) remains above 250-300% CPU for several minutes.

The issue is reproducible after restarting VS Code. Running code --disable-extension openai.chatgpt did not persistently disable the extension and did not stop the already-running extension host.

Observed CPU Evidence

Process snapshots taken every 5 seconds:

2026-05-18 15:37:15 CST
35998 35259 329.9 6.7 03:28 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:26 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled
36440 35998   0.0 0.3 03:26 .../jsonServerMain --node-ipc --clientProcessId=35998
36649 35998   0.0 0.2 03:21 .../dbaeumer.vscode-eslint-3.0.24/server/out/eslintServer.js --node-ipc --clientProcessId=35998

2026-05-18 15:37:20 CST
35998 35259 328.0 5.5 03:33 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:31 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

2026-05-18 15:37:25 CST
35998 35259 345.1 6.2 03:38 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:36 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

2026-05-18 15:37:30 CST
35998 35259 356.3 8.3 03:43 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:41 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

2026-05-18 15:37:35 CST
35998 35259 336.5 7.2 03:48 Code Helper (Plugin) --type=utility --utility-sub-type=node.mojom.NodeService ...
36420 35998   0.0 0.1 03:46 ~/.vscode/extensions/openai.chatgpt-26.5513.21555-darwin-arm64/bin/macos-aarch64/codex app-server --analytics-default-enabled

Activity Monitor screenshots also showed:

Code Helper (Plugin): 319.8% CPU, CPU time 2:20.23
Code Helper (Plugin): 285.2% CPU, CPU time 2:35.83

VS Code Extension Host Log Evidence

From ~/Library/Application Support/Code/logs/20260518T153346/window1/exthost/exthost.log:

2026-05-18 15:33:48.322 [info] Extension host with pid 35998 started
2026-05-18 15:33:48.418 [info] ExtensionService#_doActivateExtension openai.chatgpt, startup: false, activationEvent: 'onChatSession:openai-codex'
...
2026-05-18 15:33:49.847 [info] ExtensionService#_doActivateExtension dbaeumer.vscode-eslint, startup: false, activationEvent: 'onStartupFinished'

From ~/Library/Application Support/Code/logs/20260518T153346/window1/exthost/openai.chatgpt/Codex.log:

2026-05-18 15:33:49.540 [info] Activating Codex extension
2026-05-18 15:33:49.540 [info] [CodexMcpConnection] Spawning codex app-server
2026-05-18 15:33:49.540 [info] ChatGPT desktop bridge active
2026-05-18 15:33:49.540 [info] Desktop bridge registered
2026-05-18 15:33:49.540 [info] Work with apps desktop bridge initialized

The same log contains repeated warnings/errors around feature sync and network/API responses:

WARN codex_core_plugins::manager: failed to warm featured plugin ids cache
remote plugin sync request to https://chatgpt.com/backend-api/plugins/featured failed with status 403 Forbidden

codex_features: unknown feature key in config: remote_connections

Request failed ... method=experimentalFeature/enablement/set
unsupported feature enablement `auth_elicitation`

Error fetching httpStatus=403 ... url=https://chatgpt.com/ces/v1/rgstr...

Failed to list resource templates for MCP server 'godot-mcp-pro': Mcp error: -32601: Method not found
Failed to list resources for MCP server 'computer-use': Mcp error: -32601: Method not found

Expected Behavior

The VS Code extension host should return to low CPU after Codex activation completes. Background network failures, feature flag sync errors, telemetry failures, or MCP resource-listing failures should not cause persistent extension host CPU above 250-300%.

Actual Behavior

The VS Code extension host remains above 300% CPU for multiple minutes. The spawned Codex app-server child process remains at 0.0% CPU, which suggests the hot loop is likely in the VS Code extension host side rather than the app-server child.

Notes / Hypothesis

This may be related to one or more repeated background loops after extension activation:

  • feature enablement sync repeatedly trying unsupported keys such as auth_elicitation;
  • repeated handling of remote_connections as an unknown feature key;
  • repeated Cloudflare/403 HTML response handling for backend-api/plugins/featured;
  • repeated telemetry /ces/v1/rgstr 403 handling;
  • repeated MCP resource/resource-template listing against servers that return -32601 Method not found.

The logs above do not prove which loop burns CPU, but they are the recurring Codex-side events visible during the high CPU period.

Request

Could the Codex VS Code extension team investigate why the extension host process can remain above 300% CPU after activation on macOS?

It would also help if the extension had:

  • backoff/deduplication for repeated 403/network failures;
  • backoff/deduplication for unsupported feature enablement sync;
  • backoff/deduplication for MCP resources/list and resources/templates/list calls when a server returns -32601 Method not found;
  • a clear way to disable Codex persistently from the CLI, or documentation explaining that code --disable-extension openai.chatgpt is launch-scoped and does not write VS Code's global disabled extension state.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING