anomalyco / anomalyco/opencode
Desktop drops shell environment when interactive probe times out
@Brendonovich is already working on this.
Since Sep 17, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Description
Desktop probes the user shell with -il for up to five seconds. If that probe returns ETIMEDOUT, loadShellEnv returns null immediately instead of trying the existing -l fallback. The local sidecar then starts with the minimal GUI environment, so commands installed through Homebrew or user-local paths can intermittently fail with command not found.
This is a timeout edge case left after #26449.
Plugins
N/A - the failure occurs while Desktop initializes the sidecar environment.
OpenCode version
Desktop 1.18.29
Steps to reproduce
- Launch Desktop from Finder with a minimal GUI
PATH. - Use a login shell where interactive startup takes longer than five seconds, while login-only startup succeeds.
- Observe
[server] Interactive shell env probe timed outinmain.log. - Run an agent shell command that needs a binary added by the login environment.
- Observe
command not found.
Expected: after the -il timeout, Desktop retries with -l before falling back to the app environment.
A deterministic source-level reproduction can mock spawnSync to return ETIMEDOUT: the current implementation returns null and calls only -il.
Screenshot and/or share link
N/A
Operating System
macOS 15.7.9
Terminal
OpenCode Desktop
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.
Assessment
This issue has not been assessed yet.