[Bug]: Claude Desktop picker mode breaks claude.ai chat (sends time out, picker 502s) since the merged chat/Cowork front end; picker off fixes it
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 65/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- typescript
Research direction
Start by tracing the claude-intercept egress proxy at 127.0.0.1:10201 and the picker GET/POST paths that log “other 502.” Reproduce with Claude Desktop chat while picker mode is on, then compare with picker mode off; the issue reports that plain curl succeeds, so focus on the failing Desktop requests. Done means chat sends and session loads work with picker mode enabled, without the reported 502s and timeouts.
Written by the indexing model from the issue text.
Description
Client or integration
Claude Desktop (macOS), first-party mode with picker mode on
Area
Proxy / Claude Desktop picker (claude-intercept egress on 127.0.0.1:10201)
Summary
With picker mode active, Claude Desktop pins all of its traffic to the opencodex egress proxy ([egress-proxy] pinned to fixed proxy at 127.0.0.1:10201; OS proxy settings ignored). Since 2026-10-02 ~12:00 local, the chat side of Desktop no longer works: a sent message spins and eventually fails with "message could not be sent", and sessions fail with "Timed out loading session". The Code tab keeps working, and opencodex models still appear in the Code tab picker.
The breakage lines up with a new claude.ai front-end build loading in Desktop (the merged chat/Cowork experience, served remotely, so no app update was needed). The first failed send was 16 minutes after that build first loaded. Picker mode had worked with chat since 2026-09-26.
Turning the picker off (ocx claude desktop picker off, restart Desktop) removes the egress pin, and chat works with zero errors. Turning it back on brings the failures back. Upgrading 2.72.0 → 2.76.0 did not fix it.
Reproduction
- macOS, opencodex in first-party mode with
ocx claude desktop picker on(status:effective: true, reason: active, trust: trusted). - Claude Desktop 2.19675.0, on an account that has the merged chat/Cowork front end.
- Open the chat side (not the Code tab) and send any message.
- The message spins, then "message could not be sent". Existing chats fail to load with "Timed out loading session. Check your connection and try again."
- Run
ocx claude desktop picker off, quit and reopen Desktop. Chat works.
Version
- opencodex 2.72.0 (when it started), still reproduces on 2.76.0
- Claude Desktop 2.19675.0, bundled Claude Code 2.1.286
Operating system
macOS 26.6.2 (25G83), arm64
Provider and model
Not model-specific. The failing traffic is Desktop's own claude.ai traffic (chat UI, session loads, feature flags), not routed model requests.
Logs or error output
Desktop claude.ai-web.log (renderer), starting 2026-10-02:
12:16:15 [error] [useSendChannelMessage] send failed [object DOMException]
12:16:57 [warn] [REACT_QUERY_CLIENT] QueryClient error: {"name":"TimeoutError","message":"Timed out loading session. Check your connection and try again."}
Desktop main.log: main-process fetches to claude.ai time out continuously while the picker is active (349 on 10-02, 517 on 10-03 so far):
[warn] [my-access] fetch failed { error: DOMException [TimeoutError]: The operation was aborted due to timeout }
[error] [growthbook] network error: DOMException [TimeoutError]
[error] Failed to check allowlist status: DOMException [TimeoutError]
[warn] [RemotePluginManager] Failed to fetch enabled state; defaulting to all-enabled This operation was aborted
opencodex stdout during the same window: the picker answers some claude.ai requests with 502 (2.72.0: 590 GET + 368 POST 502s in the log; 2.76.0 since this morning: 15 GET + 3 POST 502s):
[claude-picker] picker GET other 502
[claude-picker] picker POST other 502
Timeline (local time):
- 2026-09-26: picker mode applied. Chat works through the egress proxy.
- 2026-10-02 ~12:00: new claude.ai web build (asset
c219730b0) first loads in Desktop. - 2026-10-02 12:16: first failed send. Failures continue all day.
- 2026-10-02 22:16: Desktop restarted with the picker off: zero timeouts or failed sends afterwards.
- 2026-10-03 00:13: opencodex auto-updated to 2.76.0, picker back on. Failures resume (latest 08:55 on 10-03).
Plain curl -x http://127.0.0.1:10201 https://claude.ai/ returns quickly with the same status as a direct request, so the listener is up. The failures look specific to the requests the new front end makes.
Redacted configuration
"claudeCode": { "enabled": true, "desktopMode": "first-party", "desktopNativeModels": true, "intercept": { "picker": true } }
Desktop applied profile (Claude-3p/configLibrary, "opencodex-picker"): {"egressProxyUrl":"http://127.0.0.1:10201"}
Checks
- I searched existing issues and PRs (nothing open about Desktop chat failing under picker mode; #6487 touches picker cleanup and catalog bounds, not passthrough).
- I removed secrets, tokens and personal data.
- Dominant language
- TypeScript
- Stars
- 16.9k
- Forks
- 1.3k
- Avg merge
- 8h 13m
- Merged PRs (30d)
- 625
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
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 lidge-jun/opencodex
-
bug proxy
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
docs(ko): installation guide still names Bun 1.4.2 after the 1.4.4 runtime pinPossibly taken A pull request linked to this issue is open or already merged. Openbug
Difficulty 1/5 Under an hour Newbie friendliness 94/100
lidge-jun/opencodex#7612 · 2 comments · 1 reaction ·
Maintainers usually reply within 1 day
-
[Bug]: ocx-launcher-runtime "missing bundle reaches validated PATH Bun" times out at 5 s under host loadPossibly taken A pull request linked to this issue is open or already merged. Openbug cli install
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
lidge-jun/opencodex#7578 · 1 comment ·
Maintainers usually reply within 1 day
-
[Bug]: Business Premium seat plan self_serve_business_prolite is counted at baseline capacity weight 1 instead of 5Possibly taken A pull request linked to this issue is open or already merged. Openaccount-pool bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
lidge-jun/opencodex#7440 · 2 comments ·
Maintainers usually reply within 1 day
-
[Docs]: translate the #7395 OpenGateway and Mistral provider-guide sectionsPossibly taken @MannXo claimed this 3 days ago. Opendocumentation
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
lidge-jun/opencodex#7405 · 3 comments ·
Maintainers usually reply within 1 day
All issues in lidge-jun/opencodex
Similar issues
-
area: image-engine bug priority: low
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
snapotter-hq/SnapOtter#3885 ·
Maintainers usually reply within 1 day
-
Mend: dependency security vulnerability
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 3 days
-
pending triage
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
bug P3 UI/UX
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
openclaw/openclaw#182077 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day