{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreick25cpnczd6al6ybfgrwswzhjqk5yebpcggxadvktxoyrsutlaja",
    "uri": "at://did:plc:lk3jfj3zq4k4wxnk474axylu/app.bsky.feed.post/3mpd5gay654v2"
  },
  "path": "/t/codex-vs-code-extension-on-code-server-precise-version-boundary-root-cause-analysis/1385104#post_1",
  "publishedAt": "2026-06-28T04:17:47.000Z",
  "site": "https://community.openai.com",
  "tags": [
    "openai/codex#26951",
    "10421",
    "10515",
    "Using Proposed API guide",
    "see vscode source",
    "Issues · openai/codex · GitHub",
    "@deprecated"
  ],
  "textContent": "# Codex VS Code extension on code-server: precise version boundary + root cause analysis\n\n## TL;DR\n\nIf you run Codex (`openai.chatgpt`) extension inside **code-server** (browser VS Code), Send may freeze the entire input box. Root cause is a VS Code proposed-API mismatch. **Downgrade to`0.5.22`** (Oct 2025) to fix.\n\n## Context\n\nWe deploy browser-based coding sandboxes for end-users using code-server 4.100 + Codex extension. Many users hit “Send doesn’t work, refresh sometimes fixes it” — same pattern as in openai/codex#26951, #10421, #10515, and others.\n\nAfter ~2 days of log archaeology, we located the precise root cause and version cutoff.\n\n## What’s actually happening\n\nThe Codex extension version `0.5.23` (Oct 2025) onward declares `enabledApiProposals: ['chatSessionsProvider', 'languageModelProxy']` and calls `vscode.chat.registerChatSessionItemProvider`.\n\nThat API was introduced in **VS Code 1.103** (July 2025) and is still marked **proposed** — see Microsoft’s Using Proposed API guide: “subject to change, only available in Insiders distribution, should not be used in published extensions.”\n\ncode-server releases lag upstream VS Code. If your code-server is based on VS Code < 1.103, the API doesn’t exist. The Codex extension catches the TypeError (good), logs it as info (less good), but the downstream broadcast handlers never get registered (bad).\n\nUser-visible result: hundreds of `[IpcClient] Received broadcast but no handler is configured method=thread-stream-state-changed` warnings, eventually the webview JS main thread saturates, composer freezes.\n\n## Empirical version boundary (the new data)\n\nDownloaded VSIXs and inspected `package.json`:\n\nVersion | `chatSessionsProvider` | Safe on code-server 1.100?\n---|---|---\n0.3.3 ~ 0.5.22 | NO |  YES\n**0.5.23** (2025-10-23) | YES |  NO\nAll later (including 26.5xxx, 26.6xx) | YES |  NO\n\n**0.5.22 is the last working version.**\n\n## Why upgrading code-server doesn’t help\n\nWe tested code-server 4.118 (VS Code 1.118.0). The `chatSessionsProvider` TypeError goes away, BUT:\n\n  1. New error: `PendingMigrationError: navigator is now a global in nodejs` (Node 22 issue, #10515). Still unmigrated in latest stable 26.5623.42026.\n  2. The broadcast handlers still don’t fully wire up (API shape evolved between 1.103 and 1.118).\n  3. End-user experience actually got _worse_ than 4.100 + 0.5.22.\n\n\n\nSo upgrading code-server isn’t a real fix.\n\n## Workaround (verified working)\n\n\n    # 1. Uninstall whatever's there\n    code-server --uninstall-extension openai.chatgpt\n\n    # 2. Download 0.5.22 linux-x64\n    curl -L -o /tmp/codex.vsix \\\n      'https://openai.gallery.vsassets.io/_apis/public/gallery/publisher/openai/extension/chatgpt/0.5.22/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage'\n\n    # 3. Install\n    code-server --install-extension /tmp/codex.vsix\n\n    # 4. Disable auto-update so it doesn't get bumped back\n    cat >> ~/.local/share/code-server/User/settings.json <<'EOF'\n      \"extensions.autoUpdate\": false,\n      \"extensions.autoCheckUpdates\": false,\n    EOF\n\n\n## What you lose\n\n`0.5.22` is from Oct 2025, so you miss ~8 months of features:\n\n  * Native VS Code chat-panel integration (the `chatSessionsProvider` itself)\n  * Apps SDK / MCP apps marketplace\n  * New plan-summary / progress view\n\n\n\nFor our end-users these are mostly invisible. Core chat / multi-thread / streaming / tool use / context all work.\n\n## Future-proofing thought\n\n`chatSessionsProvider` is still proposed and Microsoft has already marked `registerChatSessionItemProvider` as `@deprecated` in favor of `ChatSessionItemController` (see vscode source). So when the next Codex extension migrates to the new controller API, even latest VS Code Insiders users may break.\n\nIf you’re shipping anything production-critical that depends on the Codex extension, consider moving to `codex exec` (non-interactive) or the Codex SDK with your own thin UI. That’s the only path that doesn’t depend on the proposed-API churn.\n\n## Filed an issue too\n\nPosted full report at Issues · openai/codex · GitHub [fill in once filed] with reproducer.\n\nHope this saves someone the 2 days I spent.",
  "title": "Codex VS Code extension on code-server: precise version boundary + root cause analysis"
}