Conversation
The bundled Claude Code ships inside Phoenix and is replaced when Phoenix
updates, so its own auto-updater has nothing useful to do — and it cannot
do it anyway: it resolves the npm prefix of whatever install it thinks it
is and tries to write there. It failed on every launch and said so in red
across the CLI pane ("Auto-update failed: no write permission to npm
prefix").
Set DISABLE_AUTOUPDATER for it, the supported way out (Anthropic set the
same var for their own managed runs). Keyed on the locator's `source`, so
a CLI the user installed keeps its updater: that copy is theirs to keep
current, and it is how their version eventually overtakes the bundled one.
Both spawn paths carry it — the CLI pane's PTY and the SDK query, which
runs the same executable. The SDK path now resolves through locateCli
directly for the source, retiring the findGlobalClaudeCli wrapper.
Also includes the `userInstalled` field on locate results, reporting that
the user has a Claude Code of their own even when the newer bundled copy
is the one that runs.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



The bundled Claude Code ships inside Phoenix and is replaced when Phoenix updates, so its own auto-updater has nothing useful to do — and it cannot do it anyway: it resolves the npm prefix of whatever install it thinks it is and tries to write there. It failed on every launch and said so in red across the CLI pane ("Auto-update failed: no write permission to npm prefix").
Set DISABLE_AUTOUPDATER for it, the supported way out (Anthropic set the same var for their own managed runs). Keyed on the locator's
source, so a CLI the user installed keeps its updater: that copy is theirs to keep current, and it is how their version eventually overtakes the bundled one.Both spawn paths carry it — the CLI pane's PTY and the SDK query, which runs the same executable. The SDK path now resolves through locateCli directly for the source, retiring the findGlobalClaudeCli wrapper.
Also includes the
userInstalledfield on locate results, reporting that the user has a Claude Code of their own even when the newer bundled copy is the one that runs.