mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-12 21:53:00 -06:00
fix(onboard): keep the wizard alive through provider auth failures and polish standalone install UX (#100632)
Fixes rough edges in the standalone install flow (install.sh -> openclaw onboard), found and verified by running the flow in a clean container and on a clean macOS Tahoe VM: - Provider auth setup failures (e.g. the preselected "Anthropic Claude CLI" option on a host without a Claude CLI login) no longer kill the whole wizard. The interactive wizard notes the error and returns to the provider picker; explicit --auth-choice automation still fails fast. - Onboarding config now persists before the channel/search/skills steps, so a crash or cancel during channel pairing no longer loses auth + gateway decisions. - With model auth skipped, finalize no longer auto-sends the "Wake up, my friend!" message (which always failed with a provider auth error). The hatch seed is gated on usable model credentials and a "Model auth missing" note explains the next step. - Search provider picker no longer labels non-key credentials (e.g. SearXNG base URL) as "API key required". - install.sh no longer warns "PATH missing npm global bin dir" with manual fix steps after it already persisted the export line; it reports the PATH was updated and how to reload the current shell. - Removed the dead interactive hooks onboarding step (setupInternalHooks); quickstart enables default hooks silently. Verified live per fix in a clean Debian/Node 24 container and on a clean macOS 26.5 Parallels VM (wizard re-prompt, SearXNG label), plus wizard/onboard test suites and tsgo:core. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
This commit is contained in:
committed by
GitHub
parent
95f46743e4
commit
21d919deb8
@@ -2487,6 +2487,20 @@ warn_shell_path_missing_dir() {
|
||||
return 0
|
||||
fi
|
||||
|
||||
# persist_shell_path_prepend may already have written the export line; in
|
||||
# that case new shells are fine and the user only needs to reload this one.
|
||||
# RC lines may spell the home dir as $HOME instead of the expanded path.
|
||||
local dir_home_form="\$HOME${dir#"$HOME"}"
|
||||
for rc in "$HOME/.bashrc" "$HOME/.zshrc"; do
|
||||
if [[ -f "$rc" ]] && { grep -Fq "$dir" "$rc" || grep -Fq "$dir_home_form" "$rc"; }; then
|
||||
echo ""
|
||||
ui_info "PATH updated in ${rc}: added ${label} (${dir})"
|
||||
echo " New terminals pick this up automatically."
|
||||
echo " For this shell, run: source ${rc}"
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
|
||||
echo ""
|
||||
ui_warn "PATH missing ${label}: ${dir}"
|
||||
echo " This can make openclaw show as \"command not found\" in new terminals."
|
||||
|
||||
Reference in New Issue
Block a user