codex - 💡(How to fix) Fix Codex Desktop Chrome plugin tab.goto fails on Windows: failed to start codex app-server (os error 2)

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…

Error Message

failed to start codex app-server: The system cannot find the file specified. (os error 2) failed to start codex app-server: The system cannot find the file specified. (os error 2)

  • tab.goto("https://example.com/") consistently fails with the codex app-server file-not-found error.
  • Earlier in the same troubleshooting flow, CUA keyboard navigation also failed with ClipboardItem is not available, though the primary remaining blocker is the codex app-server error.

Root Cause

This blocks the main Chrome plugin workflow because navigation to public URLs and local test pages cannot proceed.

Code Example

failed to start codex app-server: The system cannot find the file specified. (os error 2)

---

node scripts/chrome-is-running.js --json
# running: true

node scripts/check-extension-installed.js --json
# installed: true
# registered: true
# enabled: true
# versions: ["1.1.4_0"]

node scripts/check-native-host-manifest.js --json
# exists: true
# nameMatches: true
# hasExpectedOrigin: true
# registryMatchesManifestPath: true
# correct: true

---

{
  "name": "com.openai.codexextension",
  "type": "stdio",
  "path": "C:\\Users\\asus\\.codex\\plugins\\cache\\openai-bundled\\chrome\\latest\\extension-host\\windows\\x64\\extension-host.exe",
  "allowed_origins": ["chrome-extension://hehggadaopoacecdllhhajmbjkdcmajg/"]
}

---

node scripts/open-chrome-window.js

---

if (!globalThis.agent) {
  const { setupAtlasRuntime } = await import("file:///C:/Users/asus/.codex/plugins/cache/openai-bundled/chrome/0.1.7/scripts/browser-client.mjs");
  await setupAtlasRuntime({ globals: globalThis });
}
globalThis.browser = await agent.browsers.get("extension");
await browser.nameSession("Chrome post Codex update test");
globalThis.finalTab = await browser.tabs.new();
await finalTab.goto("https://example.com/");

---

failed to start codex app-server: The system cannot find the file specified. (os error 2)

---

await browser.tabs.new();
await browser.tabs.list();
await finalTab.playwright.domSnapshot();
await finalTab.playwright.screenshot({ fullPage: false });
await finalTab.dev.logs({ limit: 10 });
await finalTab.clipboard.writeText("post update chrome plugin test");
await finalTab.clipboard.readText();
RAW_BUFFERClick to expand / collapse

What happened?

After installing/enabling the Codex Chrome Extension and verifying that Chrome, the extension, and the native messaging host are all healthy, the Chrome plugin can connect to the browser and perform several basic tab operations, but tab.goto("https://example.com/") consistently fails on Windows with:

failed to start codex app-server: The system cannot find the file specified. (os error 2)

This blocks the main Chrome plugin workflow because navigation to public URLs and local test pages cannot proceed.

Environment

  • OS: Windows
  • Workspace shell: PowerShell
  • Codex Desktop app: updated/restarted by user before final retest
  • Chrome plugin cache path: C:\Users\asus\.codex\plugins\cache\openai-bundled\chrome\0.1.7
  • Chrome plugin version/path observed: chrome\0.1.7, latest symlink present
  • Codex Chrome Extension ID: hehggadaopoacecdllhhajmbjkdcmajg
  • Codex Chrome Extension version: 1.1.4_0
  • Chrome profile detected after reinstall: C:\Users\asus\AppData\Local\Google\Chrome\User Data\Default
  • Native host manifest path: C:\Users\asus\AppData\Local\OpenAI\extension\com.openai.codexextension.json

Verified setup checks

The bundled plugin scripts report success for the Chrome/extension/native-host setup:

node scripts/chrome-is-running.js --json
# running: true

node scripts/check-extension-installed.js --json
# installed: true
# registered: true
# enabled: true
# versions: ["1.1.4_0"]

node scripts/check-native-host-manifest.js --json
# exists: true
# nameMatches: true
# hasExpectedOrigin: true
# registryMatchesManifestPath: true
# correct: true

The native host manifest points to an existing file:

{
  "name": "com.openai.codexextension",
  "type": "stdio",
  "path": "C:\\Users\\asus\\.codex\\plugins\\cache\\openai-bundled\\chrome\\latest\\extension-host\\windows\\x64\\extension-host.exe",
  "allowed_origins": ["chrome-extension://hehggadaopoacecdllhhajmbjkdcmajg/"]
}

extension-host.exe exists at that path.

Reproduction steps

  1. Install/enable the Chrome plugin in Codex Desktop.
  2. Install/enable the Codex Chrome Extension in Google Chrome.
  3. Verify Chrome is running, the extension is installed/enabled, and native host manifest is correct using bundled scripts.
  4. Open the selected Chrome profile using:
node scripts/open-chrome-window.js
  1. In the Node REPL tool, bootstrap the Chrome extension backend:
if (!globalThis.agent) {
  const { setupAtlasRuntime } = await import("file:///C:/Users/asus/.codex/plugins/cache/openai-bundled/chrome/0.1.7/scripts/browser-client.mjs");
  await setupAtlasRuntime({ globals: globalThis });
}
globalThis.browser = await agent.browsers.get("extension");
await browser.nameSession("Chrome post Codex update test");
globalThis.finalTab = await browser.tabs.new();
await finalTab.goto("https://example.com/");

Expected behavior

tab.goto("https://example.com/") should navigate the controlled Chrome tab to Example Domain, allowing follow-up calls such as DOM reads, screenshots, and interactions.

Actual behavior

tab.goto("https://example.com/") fails with:

failed to start codex app-server: The system cannot find the file specified. (os error 2)

The tab remains at about:blank.

Operations that do work

After setup, these calls succeeded in the same environment:

await browser.tabs.new();
await browser.tabs.list();
await finalTab.playwright.domSnapshot();
await finalTab.playwright.screenshot({ fullPage: false });
await finalTab.dev.logs({ limit: 10 });
await finalTab.clipboard.writeText("post update chrome plugin test");
await finalTab.clipboard.readText();

Operations blocked or unstable

  • tab.goto("https://example.com/") consistently fails with the codex app-server file-not-found error.
  • Local page navigation could not be tested because goto() fails before reaching the page.
  • Earlier in the same troubleshooting flow, CUA keyboard navigation also failed with ClipboardItem is not available, though the primary remaining blocker is the codex app-server error.

Notes

The Chrome extension and native host appear healthy. The failing component seems to be an internal Codex Desktop / Chrome plugin dependency invoked by navigation: codex app-server cannot be started because a file is missing or not found on Windows.

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…

FAQ

Expected behavior

tab.goto("https://example.com/") should navigate the controlled Chrome tab to Example Domain, allowing follow-up calls such as DOM reads, screenshots, and interactions.

Still need to ship something?

×6

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

Back to top recommendations

TRENDING

codex - 💡(How to fix) Fix Codex Desktop Chrome plugin tab.goto fails on Windows: failed to start codex app-server (os error 2)