feat: skip onboard, go straight to web dashboard

- Remove CLI onboard wizard from startup scripts
- Auto-create minimal config on first run (gateway mode + token)
- Always start gateway → auto-open browser dashboard
- Users configure models and platforms in web UI instead of CLI
- Simpler flow: double-click → browser opens → configure in dashboard
This commit is contained in:
dongsheng123132
2026-03-10 16:23:40 +08:00
parent 1bcdbfca09
commit fb87b6658e
2 changed files with 60 additions and 51 deletions

View File

@@ -112,32 +112,30 @@ if [ ! -d "$OPENCLAW_DIR/dist" ]; then
echo "" echo ""
fi fi
# 启动 OpenClaw # 首次运行:自动写入最小配置(跳过 onboard
echo -e " ${CYAN}正在启动 OpenClaw...${NC}"
echo ""
cd "$OPENCLAW_DIR"
if [ ! -f "$PORTABLE_CONFIG_PATH" ]; then if [ ! -f "$PORTABLE_CONFIG_PATH" ]; then
echo -e " ${YELLOW}检测到你还没有完成首次配置。${NC}" echo -e " ${YELLOW}首次运行,正在初始化配置...${NC}"
echo " 首次配置会直接保存到 U 盘里,换电脑插上后还能继续用。" mkdir -p "$(dirname "$PORTABLE_CONFIG_PATH")"
cat > "$PORTABLE_CONFIG_PATH" << 'CFGEOF'
{
"gateway": {
"mode": "local",
"auth": { "token": "uclaw" }
}
}
CFGEOF
echo -e " ${GREEN}配置已初始化${NC}"
echo "" echo ""
read -p " 现在开始首次配置? (y/n) " -n 1 -r
echo ""
echo ""
if [[ $REPLY =~ ^[Yy]$ ]]; then
"$NODE_BIN" openclaw.mjs onboard
echo ""
echo -e " ${GREEN}首次配置完成,已保存到 U 盘。${NC}"
echo " 下次插到别的电脑,也会继续使用这套配置。"
else
echo " 已跳过首次配置。"
fi fi
else
echo -e " ${GREEN}正在启动网关服务...${NC}" # 启动网关
echo -e " ${CYAN}正在启动 OpenClaw...${NC}"
echo " 此窗口不要关闭,关闭后服务会停止。" echo " 此窗口不要关闭,关闭后服务会停止。"
echo "" echo ""
# 后台启动网关,等它就绪后自动打开浏览器 cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs gateway run --allow-unconfigured --force & "$NODE_BIN" openclaw.mjs gateway run --allow-unconfigured --force &
GW_PID=$! GW_PID=$!
# 等网关启动,最多等 15 秒 # 等网关启动,最多等 15 秒
for i in $(seq 1 30); do for i in $(seq 1 30); do
sleep 0.5 sleep 0.5
@@ -145,14 +143,21 @@ else
TOKEN=$(python3 -c "import json; d=json.load(open('$PORTABLE_CONFIG_PATH')); print(d.get('gateway',{}).get('auth',{}).get('token',''))" 2>/dev/null) TOKEN=$(python3 -c "import json; d=json.load(open('$PORTABLE_CONFIG_PATH')); print(d.get('gateway',{}).get('auth',{}).get('token',''))" 2>/dev/null)
URL="http://127.0.0.1:18789/#token=${TOKEN}" URL="http://127.0.0.1:18789/#token=${TOKEN}"
echo "" echo ""
echo -e " ${GREEN}控制台地址: ${URL}${NC}" echo -e " ${GREEN}✅ 启动成功!${NC}"
echo ""
echo -e " ${CYAN}控制台地址: ${URL}${NC}"
echo ""
echo -e " ${YELLOW}▸ 首次使用请在控制台中配置:${NC}"
echo " 1. 设置 AI 模型DeepSeek / Kimi / 通义千问 等)"
echo " 2. 接入聊天平台QQ / 飞书 / 钉钉 等)"
echo ""
open "$URL" 2>/dev/null open "$URL" 2>/dev/null
break break
fi fi
done done
# 前台等待网关进程 # 前台等待网关进程
wait $GW_PID wait $GW_PID
fi
echo "" echo ""
echo -e " ${YELLOW}OpenClaw 已退出。拔掉 U 盘后,本次便携运行就会结束。${NC}" echo -e " ${YELLOW}OpenClaw 已退出。拔掉 U 盘后,本次便携运行就会结束。${NC}"

View File

@@ -58,26 +58,30 @@ if not exist "%OPENCLAW_DIR%\dist" (
echo. echo.
) )
echo 正在启动 OpenClaw...
echo.
cd /d "%OPENCLAW_DIR%" cd /d "%OPENCLAW_DIR%"
REM 首次运行:自动写入最小配置(跳过 onboard
if not exist "%PORTABLE_CONFIG_PATH%" ( if not exist "%PORTABLE_CONFIG_PATH%" (
echo 检测到你还没有完成首次配置。 echo 首次运行,正在初始化配置...
echo 首次配置会直接保存到 U 盘里,换电脑插上后还能继续用。 if not exist "%PORTABLE_STATE_DIR%" mkdir "%PORTABLE_STATE_DIR%"
echo {"gateway":{"mode":"local","auth":{"token":"uclaw"}}} > "%PORTABLE_CONFIG_PATH%"
echo 配置已初始化
echo. echo.
set /p DO_ONBOARD=" 现在开始首次配置? (y/n) "
if /i "%DO_ONBOARD%"=="y" (
"%NODE_BIN%" openclaw.mjs onboard
echo.
echo 首次配置完成,已保存到 U 盘。
) )
) else (
echo 正在启动网关服务... echo 正在启动 OpenClaw...
echo 此窗口不要关闭,关闭后服务会停止。 echo 此窗口不要关闭,关闭后服务会停止。
echo. echo.
echo ────────────────────────────────────
echo 启动后浏览器会自动打开控制台
echo 首次使用请在控制台中配置:
echo 1. 设置 AI 模型DeepSeek / Kimi / 通义千问)
echo 2. 接入聊天平台QQ / 飞书 / 钉钉)
echo ────────────────────────────────────
echo.
start "" http://127.0.0.1:18789/#token=uclaw
"%NODE_BIN%" openclaw.mjs gateway run --allow-unconfigured --force "%NODE_BIN%" openclaw.mjs gateway run --allow-unconfigured --force
)
echo. echo.
echo OpenClaw 已退出。拔掉 U 盘后,本次便携运行就会结束。 echo OpenClaw 已退出。拔掉 U 盘后,本次便携运行就会结束。