Skip to content

fix(desktop): expand ACP discovery to include version-manager shim dirs#375

Merged
wesbillman merged 1 commit into
mainfrom
better-acp-discovery
Apr 20, 2026
Merged

fix(desktop): expand ACP discovery to include version-manager shim dirs#375
wesbillman merged 1 commit into
mainfrom
better-acp-discovery

Conversation

@wesbillman
Copy link
Copy Markdown
Collaborator

Summary

  • Replaces static COMMON_BINARY_PATHS const with an OnceLock-cached common_binary_paths() function that includes version-manager shim directories (~/.local/share/mise/shims, ~/.local/bin, ~/.volta/bin, ~/.asdf/shims)
  • Resolves $HOME at runtime via dirs::home_dir() (already a dependency)
  • Fixes ACP discovery for DMG users whose binaries are installed via mise, volta, asdf, pip, etc.

Context

Users running the release DMG couldn't discover Claude ACP when installed via version managers (e.g. ~/.local/share/mise/installs/node/23.11.0/bin/claude-agent-acp). PR #372 fixed the spawn-side PATH but not discovery. This adds the common shim directories as a last-resort fallback in the existing resolution chain.

Test plan

  • All Rust tests pass (including discovery tests)
  • cargo check compiles cleanly
  • cargo clippy clean
  • File stays within 500-line limit
  • Manual: install claude-agent-acp via mise, verify DMG build discovers it

🤖 Generated with Claude Code

Users with Claude ACP installed via mise, volta, asdf, or pip had the
binary in non-standard paths (e.g. ~/.local/share/mise/shims/) that the
app couldn't find when launched from the release DMG. Replaces the static
COMMON_BINARY_PATHS const with an OnceLock-cached function that includes
version-manager shim directories resolved via $HOME at runtime.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@wesbillman wesbillman merged commit f57e549 into main Apr 20, 2026
13 checks passed
@wesbillman wesbillman deleted the better-acp-discovery branch April 20, 2026 23:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant