/status diagnostic false positive: ~/.local/bin not in PATH when using PowerShell
Bug description
The /status System Diagnostics section shows a warning:
⚠ Native installation exists but ~/.local/bin is not in your PATH.
This is a false positive. The binary at ~/.local/bin/claude resolves correctly and is the actively running process.
Evidence
$ command -v claude
claude
$ type -a claude
claude is /Users/<user>/.local/bin/claude
$ echo $PATH | tr ':' '\n' | grep .local/bin
~/.local/bin
/Users/<user>/.local/bin
Environment
- Version: 2.1.70 (native binary)
- OS: macOS (Darwin 25.3.0)
- Default shell: PowerShell (
/usr/local/bin/pwsh) - API provider: AWS Bedrock
Likely cause
The default shell is PowerShell, which adds ~/.local/bin to $PATH via the profile at ~/.config/powershell/profile.ps1. The diagnostic check likely evaluates PATH in a context where the PowerShell profile hasn't been sourced (e.g., reading process.env.PATH from the Node.js process or a non-login shell snapshot), so ~/.local/bin appears absent even though it's present in the interactive shell.
Suggested fix
Instead of a substring match on $PATH, check whether the claude binary is actually resolvable (e.g., which claude or command -v claude in the user's configured shell), or spawn a login shell to evaluate PATH.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗