Description
claude doctor misclassifies a mise-managed Claude Code installation as a "native" install because the executable path contains .local/share. The native install detection heuristic is too broad — it matches ~/.local/share/mise/installs/claude/ when it should only match ~/.local/share/claude/.
Reproduction
- Install Claude Code via mise (a polyglot tool version manager)
- Run
claude doctor
Diagnostics
└ Currently running: native (2.1.42)
└ Path: ~/.local/share/mise/installs/claude/2.1.42/claude
└ Config install method: global
└ Search: OK (bundled)
Warning: Native installation exists but ~/.local/bin is not in your PATH
Warning: Running native installation but config install method is 'global'
The binary is at ~/.local/share/mise/installs/claude/<version>/claude, but doctor reports it as native.
Expected behavior
Installs managed by external package managers (mise, asdf, brew, etc.) should not be classified as "native". The native detection should check for ~/.local/share/claude/ specifically rather than matching any path containing .local/share.
Ideally there would be a package-manager installation type, or at minimum the path check should be more specific.
Additional context
DISABLE_INSTALLATION_CHECKS=1 does not suppress these warnings — it only gates the config mismatch checks, not the upstream path-based classification
- macOS, Claude Code 2.1.42
Description
claude doctormisclassifies a mise-managed Claude Code installation as a "native" install because the executable path contains.local/share. The native install detection heuristic is too broad — it matches~/.local/share/mise/installs/claude/when it should only match~/.local/share/claude/.Reproduction
claude doctorThe binary is at
~/.local/share/mise/installs/claude/<version>/claude, but doctor reports it asnative.Expected behavior
Installs managed by external package managers (mise, asdf, brew, etc.) should not be classified as "native". The native detection should check for
~/.local/share/claude/specifically rather than matching any path containing.local/share.Ideally there would be a
package-managerinstallation type, or at minimum the path check should be more specific.Additional context
DISABLE_INSTALLATION_CHECKS=1does not suppress these warnings — it only gates the config mismatch checks, not the upstream path-based classification