Update Builder CLI from fusion to builder binary#91
Conversation
✅ Deploy Preview for agent-native-fw ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
agent-native-calendar | b6013f5 | Commit Preview URL Branch Preview URL |
Mar 25 2026, 11:46 AM |
There was a problem hiding this comment.
Builder has reviewed your changes and found 1 potential issue.
Review Details
PR #91 Review: Builder CLI Rename (fusion → builder)
This PR performs a consistent rename of the Builder.io CLI identifier from fusion to builder across 9 files, and switches the install method from npx --yes @builder.io/fusion to a curl-based installer. The approach is sound and the changes are internally consistent.
Risk: Standard — While the code changes are low-complexity, the rename introduces a localStorage migration gap that causes a confirmed broken state for existing users.
Key Findings
🟡 MEDIUM — localStorage not migrated (confirmed by 2/2 agents)
Existing users who had previously selected Builder.io (stored as "fusion" under agent-native-cli-command) will load the new code and immediately hit a broken terminal: the PTY server rejects "fusion" as unrecognized since it was removed from CLI_REGISTRY, sending a WebSocket "not-found" error and closing the connection.
What Looks Good
- ✅
installPackage: ""is safe — both the PTY server and harness server guard withif (registry?.installPackage), so nonpx --yestrailing-empty-string is ever executed - ✅
App.tsxcorrectly usesconfig.installCommand || \npx --yes ${config.installPackage}`` — the curl command renders for Builder.io - ✅ The
terminal-plugin.tsstatus-endpoint fallback ("claude"→"builder") was a pre-existing inconsistency that is now correctly fixed - ✅
buildCliArgsswitch-case updated correctly; no other CLI-specific branches missed
Code review by Builder.io
|
|
||
| const CLI_STORAGE_KEY = "agent-native-cli-command"; | ||
| const CLI_DEFAULT = "fusion"; | ||
| const CLI_DEFAULT = "builder"; |
There was a problem hiding this comment.
🟡 Missing localStorage migration for "fusion" → "builder"
Existing users with "fusion" saved under agent-native-cli-command will get a broken terminal on next load: the PTY server rejects "fusion" (removed from CLI_REGISTRY) and closes the WebSocket with a "not-found" error. Add a one-time migration: if (saved === "fusion") { localStorage.setItem(CLI_STORAGE_KEY, "builder"); return "builder"; }
How did I do? React with 👍 or 👎 to help me improve.
Summary
Updates all references to the Builder.io CLI from the old
fusionexecutable and@builder.io/fusionnpm package to the newbuilderbinary installed via a curl script.Problem
The Builder.io agent-native CLI was rebranded and redistributed under a new name and installation method. The old executable name (
fusion) and install command (npx --yes @builder.io/fusion) were no longer valid, causing broken onboarding instructions and incorrect defaults throughout the codebase.Solution
Performed a consistent find-and-replace across all user-facing and internal references — defaults, docs, registry entries, CLI arg handling, and UI install instructions — replacing
fusionwithbuilderand swapping the npm-based install for the new curl-based installer.Key Changes
AgentPanel.tsx– UpdatedCLI_DEFAULTconstant from"fusion"to"builder"AgentTerminal.tsx– Updated JSDoc default reference from'fusion'to'builder'cli-registry.ts– Renamed registry key fromfusiontobuilder; clearedinstallPackage(no longer an npm package)terminal-plugin.ts– Updated all fallback command defaults from"fusion"to"builder"docs.harnesses.tsx– Updated the Builder.io row in the harness comparison table to usebuilderas the commandharnesses.ts– UpdatedfusionConfigto usecommand: "builder", clearedinstallPackage, and addedinstallCommand: "curl -fsSL https://www.builder.io/install.sh | bash"config.ts– Added optionalinstallCommandfield toHarnessConfiginterface to support non-npm install flowsApp.tsx– Updated install UI to renderinstallCommandwhen present, falling back to thenpx --yes {installPackage}patternutils.ts– Updated CLI args switch-case from"fusion"to"builder"To clone this PR locally use the Github CLI with command
gh pr checkout 91You can tag me at @BuilderIO for anything you want me to fix or change