[macOS] Bundled plugin installation fails: spawn ditto ENOENT
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 55/100
Research direction
Start by tracing BundledPluginsMarketplace during the copy_plugins phase, using the reported spawn ditto ENOENT and the bundled marketplace source and target paths. Check how the desktop app resolves macOS utilities, then verify that Chrome installation copies the marketplace and installs its native-messaging host successfully.
Written by the indexing model from the issue text.
Description
Summary
Installing a bundled plugin (Chrome) from the Codex desktop app consistently fails with the UI toast “Failed to install plugin.”
The failure occurs while Codex copies the bundled marketplace. The machine has an executable /usr/bin/ditto, so the app appears to be spawning ditto with a PATH that cannot resolve macOS system utilities.
Environment
- macOS
- Codex desktop plugin version:
26.616.71553 - Bundled marketplace source:
/Applications/ChatGPT.app/Contents/Resources/plugins/openai-bundled
Reproduction
- Open Plugins → Chrome in Codex Desktop.
- Click Install plugin.
- Observe the “Failed to install plugin” toast.
Relevant log
2026-07-20T20:46:59.415Z warning [BundledPluginsMarketplace] plugin_marketplace_folder_write_failed errorCode=ENOENT errorMessage="spawn ditto ENOENT" folderWritePhase=copy_plugins marketplaceName=openai-bundled sourceMarketplaceRoot=/Applications/ChatGPT.app/Contents/Resources/plugins/openai-bundled targetMarketplaceRoot=/Users/decimalsols/.codex/.tmp/bundled-marketplaces/openai-bundled
The logs then report bundled_plugins_marketplace_resolve_failed with the same spawn ditto ENOENT error. /usr/bin/ditto exists and is executable on this Mac.
Expected behavior
Codex should copy the bundled marketplace and complete plugin installation. For Chrome, this should also install the native-messaging host needed by the extension.
Actual behavior / impact
Plugin installation never completes, so the Chrome native-messaging host is absent and Chrome control cannot connect.
Related but distinct
This fails before browser bootstrap/tab discovery, so it is distinct from #32954 (Cannot redefine property: process), although that issue may still affect Chrome after installation succeeds.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- Avg merge
- 1m
- Merged PRs (30d)
- 1k
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openai/codex
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
bug CLI windows-os
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
macOS sandbox blocks hw.optional.arm64 sysctl, causing Flutter to misdetect Apple Silicon as x64 Openbug CLI sandbox
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug CLI TUI
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
-
CLI config enhancement skills
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Similar issues
-
risk:low runtime status:in-progress type:test
Difficulty 1/5 Under an hour Newbie friendliness 92/100
zeroclaw-labs/zeroclaw#11023 ·
-
good first issue refactor
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
EricSpencer00/Resilient#4835 · 1 comment ·
-
agent:ready documentation
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
cesarferreira/stax#890 ·
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 90/100