feat: add navigation page and rename scripts to English prefixes

- Add U-Claw.html navigation page with OS auto-detection and live status
- Rename scripts: start → Mac-Start/Windows-Start, menu → Mac-Menu/Windows-Menu
- Update installer scripts to reference new v2 directory structure (app/core)
- Update .gitignore to exclude build artifacts and marketing assets
This commit is contained in:
dongsheng123132
2026-03-10 22:55:20 +08:00
parent 797593c398
commit c1e94d4dd9
8 changed files with 209 additions and 9 deletions

242
portable/Windows-Menu.bat Normal file
View File

@@ -0,0 +1,242 @@
@echo off
chcp 65001 >/dev/null 2>&1
title U-Claw - Full Menu
set "UCLAW_DIR=%~dp0"
set "CORE_DIR=%UCLAW_DIR%app\core"
set "DATA_DIR=%UCLAW_DIR%data"
set "STATE_DIR=%DATA_DIR%\.openclaw"
set "NODE_DIR=%UCLAW_DIR%app\runtime\node-win-x64"
set "NODE_BIN=%NODE_DIR%\node.exe"
set "NPM_BIN=%NODE_DIR%\npm.cmd"
set "OPENCLAW_HOME=%DATA_DIR%"
set "OPENCLAW_STATE_DIR=%STATE_DIR%"
set "OPENCLAW_CONFIG_PATH=%STATE_DIR%\openclaw.json"
set "PATH=%NODE_DIR%;%NODE_DIR%\node_modules\.bin;%PATH%"
if not exist "%STATE_DIR%" mkdir "%STATE_DIR%"
if not exist "%DATA_DIR%\memory" mkdir "%DATA_DIR%\memory"
if not exist "%DATA_DIR%\backups" mkdir "%DATA_DIR%\backups"
:menu
cls
echo.
echo ========================================
echo U-Claw v1.1 - Full Menu
echo ========================================
echo.
if exist "%NODE_BIN%" (
for /f "tokens=*" %%v in ('"%NODE_BIN%" --version') do echo Node.js: %%v
) else (
echo [!] Node.js not found
)
if exist "%CORE_DIR%\node_modules" (echo Dependencies: OK) else (echo Dependencies: NOT INSTALLED)
if exist "%CORE_DIR%\dist" (echo Build: OK) else (echo Build: NOT BUILT)
if exist "%STATE_DIR%\openclaw.json" (echo Config: OK) else (echo Config: NOT SET)
echo.
echo -- Start --
echo [1] Quick start (gateway + browser)
echo [2] Setup wizard (choose model, API key)
echo.
echo -- China Platforms --
echo [3] QQ Bot setup (Tencent official)
echo [4] Feishu / DingTalk / WeChat
echo.
echo -- Skills --
echo [5] Browse pre-installed skills (52)
echo [6] Install skill from ClawHub
echo.
echo -- Maintenance --
echo [7] Diagnostics (openclaw doctor)
echo [8] Backup config and memory
echo [9] Restore backup
echo [10] Reset (factory default)
echo.
echo -- Other --
echo [11] Open web dashboard
echo [12] System info
echo [13] Set China mirror
echo [0] Exit
echo.
set /p choice=" Choose [0-13]: "
if "%choice%"=="1" goto :start
if "%choice%"=="2" goto :onboard
if "%choice%"=="3" goto :qqbot
if "%choice%"=="4" goto :channels
if "%choice%"=="5" goto :skills
if "%choice%"=="6" goto :install_skill
if "%choice%"=="7" goto :doctor
if "%choice%"=="8" goto :backup
if "%choice%"=="9" goto :restore
if "%choice%"=="10" goto :reset
if "%choice%"=="11" goto :dashboard
if "%choice%"=="12" goto :sysinfo
if "%choice%"=="13" goto :mirror
if "%choice%"=="0" exit /b 0
echo Invalid choice
pause
goto :menu
:start
call "%UCLAW_DIR%start.bat"
goto :end
:onboard
cd /d "%CORE_DIR%"
"%NODE_BIN%" openclaw.mjs onboard
pause
goto :menu
:qqbot
echo.
echo === QQ Bot Setup (Tencent Official) ===
echo.
echo 1. Register: http://q.qq.com/qqbot/openclaw/login.html
echo 2. Create bot, get AppID and AppSecret
echo 3. Run these commands:
echo.
echo openclaw plugins install @sliverp/qqbot@latest
echo openclaw channels add --channel qqbot --token "AppID:AppSecret"
echo openclaw config set channels.qqbot.allowFrom "your_qq_number"
echo openclaw gateway restart
echo.
set /p qqinstall=" Install QQ plugin now? (y/n): "
if /i "%qqinstall%"=="y" (
cd /d "%CORE_DIR%"
"%NODE_BIN%" openclaw.mjs plugins install @sliverp/qqbot@latest
echo.
set /p qqid=" AppID: "
set /p qqsecret=" AppSecret: "
if not "%qqid%"=="" if not "%qqsecret%"=="" (
"%NODE_BIN%" openclaw.mjs channels add --channel qqbot --token "%qqid%:%qqsecret%"
set /p qqallow=" Your QQ number (allowlist): "
if not "%qqallow%"=="" "%NODE_BIN%" openclaw.mjs config set channels.qqbot.allowFrom "%qqallow%"
echo QQ Bot configured!
)
)
pause
goto :menu
:channels
echo.
echo === Chat Platforms ===
echo.
echo [a] Feishu - https://open.feishu.cn/app
echo [b] WeChat - openclaw plugins install @icesword760/openclaw-wechat
echo [c] DingTalk - built-in
echo [d] Telegram / Discord / WhatsApp / Slack - built-in
echo.
echo Use [2] Setup wizard to configure these platforms.
pause
goto :menu
:skills
echo.
echo === Pre-installed Skills (52) ===
echo.
echo Productivity: github, coding-agent, summarize, nano-pdf, clawhub
echo Notes: apple-notes, obsidian, notion, trello, bear-notes
echo AI: openai-image-gen, openai-whisper, gemini, sherpa-onnx-tts
echo Social: himalaya (email), discord, slack, wacli (WhatsApp)
echo System: weather, peekaboo, tmux, healthcheck, 1password
echo IoT: openhue, sonoscli, eightctl, camsnap
echo.
echo Use "openclaw skills list" for full list.
pause
goto :menu
:install_skill
echo.
set /p skillname=" Skill name: "
if not "%skillname%"=="" (
cd /d "%CORE_DIR%"
"%NODE_BIN%" openclaw.mjs skills install %skillname%
)
pause
goto :menu
:doctor
cd /d "%CORE_DIR%"
"%NODE_BIN%" openclaw.mjs doctor --repair
pause
goto :menu
:backup
echo.
set "TIMESTAMP=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%"
set "TIMESTAMP=%TIMESTAMP: =0%"
set "BACKUP_PATH=%DATA_DIR%\backups\backup_%TIMESTAMP%"
mkdir "%BACKUP_PATH%" 2>/dev/null
if exist "%STATE_DIR%\openclaw.json" copy "%STATE_DIR%\openclaw.json" "%BACKUP_PATH%\" >/dev/null
if exist "%DATA_DIR%\memory" xcopy /s /q "%DATA_DIR%\memory" "%BACKUP_PATH%\memory\" >/dev/null 2>/dev/null
echo Backup saved to: %BACKUP_PATH%
pause
goto :menu
:restore
echo.
echo Backups:
dir /b "%DATA_DIR%\backups\" 2>/dev/null
echo.
set /p restorename=" Backup folder name: "
if exist "%DATA_DIR%\backups\%restorename%\openclaw.json" (
copy "%DATA_DIR%\backups\%restorename%\openclaw.json" "%STATE_DIR%\" >/dev/null
echo Config restored!
)
pause
goto :menu
:reset
echo.
echo WARNING: This will reset your config!
set /p confirm=" Type YES to confirm: "
if "%confirm%"=="YES" (
del "%STATE_DIR%\openclaw.json" 2>/dev/null
echo {"gateway":{"mode":"local","auth":{"token":"uclaw"}}} > "%STATE_DIR%\openclaw.json"
echo Reset complete.
)
pause
goto :menu
:dashboard
echo.
echo Starting gateway...
set PORT=18789
:find_port
netstat -an | findstr ":%PORT% " | findstr "LISTENING" >/dev/null 2>&1
if %errorlevel%==0 (
set /a PORT+=1
if %PORT% gtr 18799 (echo No available port & pause & goto :menu)
goto :find_port
)
cd /d "%CORE_DIR%"
if not exist "%STATE_DIR%\openclaw.json" (
echo {"gateway":{"mode":"local","auth":{"token":"uclaw"}}} > "%STATE_DIR%\openclaw.json"
)
start "" http://127.0.0.1:%PORT%/#token=uclaw
"%NODE_BIN%" openclaw.mjs gateway run --allow-unconfigured --force --port %PORT%
pause
goto :menu
:sysinfo
echo.
echo OS: Windows
echo Node:
"%NODE_BIN%" --version
echo U-Claw: %UCLAW_DIR%
echo Data: %DATA_DIR%
pause
goto :menu
:mirror
echo.
cd /d "%CORE_DIR%"
"%NODE_BIN%" "%NPM_BIN%" config set registry https://registry.npmmirror.com --location=project
echo npm mirror set to: registry.npmmirror.com
pause
goto :menu
:end