claude update fails: multiple installations detected, cannot determine installation type
Bug Description
claude update fails to update from 2.1.87 → 2.1.90 due to conflicting installation detection.
Steps to Reproduce
- Have Claude Code installed (version 2.1.87)
- Run
claude update
Observed Behavior
The updater detects multiple installations and cannot determine which one to update:
Warning: Multiple installations found
- npm-global-orphan at /usr/local/Cellar/node/24.6.0/lib/node_modules/@anthropic-ai/claude-code
- native at /Users/hamsaomar/.local/bin/claude
Warning: Configuration mismatch
Config expects: global installation
Currently running: unknown
Config updated to reflect current installation method: unknown
New version available: 2.1.90 (current: 2.1.87)
Installing update...
Warning: Could not determine installation type
Attempting global update based on file detection...
Using global installation update method...
Error: Failed to install update
Or consider using native installation with: claude install
Expected Behavior
claude update should either:
- Successfully update the active installation, or
- Provide clear guidance on resolving the conflict between the two installations
Environment
- OS: macOS (Darwin, Apple Silicon)
- Node: 24.6.0 (Homebrew)
- Claude Code version: 2.1.87
- Installation paths:
- npm-global-orphan:
/usr/local/Cellar/node/24.6.0/lib/node_modules/@anthropic-ai/claude-code - native:
/Users/hamsaomar/.local/bin/claude - Config expects: global installation
- Currently running: unknown
Notes
The root cause appears to be a stale npm-global installation left behind from a previous Node.js version (installed via Homebrew), conflicting with a newer native installation. The updater gets confused by the dual presence and falls back to "unknown" installation type, then fails.
Running claude install as suggested may resolve it, but the updater should handle this gracefully — either by cleaning up the orphan or by clearly identifying and updating the active binary.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗