Bundled plugins (browser/computer-use) silently break after every MS Store auto-update — incomplete marketplace sync + stale config cascade
Environment
- OS: Windows 11 Home
- Codex: Microsoft Store edition, currently 26.602.4764.0
- Affected plugins: browser@openai-bundled, computer-use@openai-bundled
- Occurrences: 3 times across versions 26.527.x → 26.601.x → 26.602.x
Summary
After every MS Store auto-update of Codex Desktop, the browser and computer-use bundled plugins become unavailable. The chrome plugin survives. The root cause is a
multi-link cascade failure in how Codex syncs the openai-bundled marketplace from the app package to the runtime cache.
Root Cause Chain
- Incomplete marketplace extraction
After an update, the runtime marketplace source at:
%USERPROFILE%\.codex\.tmp\bundled-marketplaces\openai-bundled\
is supposed to mirror the app package at:
C:\Program Files\WindowsApps\OpenAI.Codex_<version>_x64__2p2nqsd0c76g0\app\resources\plugins\openai-bundled\
The app package contains 5 plugins: browser, chrome, computer-use, latex, sites. However, after extraction, the .tmp source only contains chrome/extension-host/ —
the other 4 plugin directories are missing entirely. The marketplace manifest (.agents/plugins/marketplace.json) is also absent.
This causes Codex to see no source for browser/computer-use and either disable them or fail to load them.
- Stale plugin version cache
The cached plugins at %USERPROFILE%\.codex\plugins\cache\openai-bundled\ retain the old version (e.g., 26.601.21317) while the app is now 26.602.x. The latest
pointers for browser/computer-use are missing or broken after the sync failure.
- Configuration staleness (ripple effect)
- chrome-native-hosts.json: codexCliPath, nodePath, nodeReplPath, resourcesPath still reference old app binary hashes and old app package paths
- config.toml: marketplace source points to the incomplete .tmp directory
- .codex-global-state.json: electron-chrome-extension-sync-managed-plugin-ids only contains chrome@openai-bundled, omitting browser/computer-use
- Self-reinforcing cycle
On restart, Codex re-syncs from the broken .tmp source, sees no browser/computer-use, and the plugins remain unavailable indefinitely — until manual intervention.
Reproduction
- Let MS Store auto-update Codex (or install a newer Store version)
- Open Codex
- Check Settings → Plugins: browser and computer-use are unavailable
- chrome plugin still works
Manual Workaround
- Replace the .tmp marketplace with a junction to the app package:
mklink /J %USERPROFILE%\.codex\.tmp\bundled-marketplaces\openai-bundled "C:\Program
Files\WindowsApps\OpenAI.Codex_<version>_x64__2p2nqsd0c76g0\app\resources\plugins\openai-bundled"
- Copy the missing plugin dirs to cache, update latest pointers
- Fix chrome-native-hosts.json paths and pluginVersion
- Add browser@openai-bundled and computer-use@openai-bundled to electron-chrome-extension-sync-managed-plugin-ids in global state
- Restart Codex
Suggested Fixes
- Complete marketplace extraction: Ensure ALL plugins from the app package are extracted to .tmp, not just chrome
- Include .agents/plugins/marketplace.json: This manifest is critical for plugin discovery
- Auto-repair on version mismatch: If the plugin cache version doesn't match the app version, trigger a full re-sync from the app package
- Centralize version references: Avoid scattering app version and binary hash paths across 4 separate config files
Timeline
┌───────┬──────────────────────────┬─────────────────┐
│ Date │ From → To │ Trigger │
├───────┼──────────────────────────┼─────────────────┤
│ Jun 1 │ 26.527.7698.0 → ? │ MS Store update │
├───────┼──────────────────────────┼─────────────────┤
│ Jun 2 │ ? → 26.601.x │ MS Store update │
├───────┼──────────────────────────┼─────────────────┤
│ Jun 6 │ 26.601.x → 26.602.4764.0 │ MS Store update │
└───────┴──────────────────────────┴─────────────────┘
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗