Install
openclaw skills install openclaw-bot-dashboardLaunch and manage the OpenClaw Dashboard web UI for monitoring all your bots, agents, models, and sessions. Automatically detects OS, checks for updates, installs dependencies, and starts the development server. Supports macOS, Windows, and Linux with automatic git detection and fallback download methods. Triggers include "打开机器人大盘", "打开 OpenClaw-bot-review", "打开Openclaw大盘", "打开 bot review", "open openclaw dashboard", "open OpenClaw-bot-review", "open bot dashboard", "open bot review", "launch bot review".
openclaw skills install openclaw-bot-dashboardLaunch and manage the OpenClaw Dashboard web UI for monitoring all your bots, agents, models, and sessions.
Activate when user says:
~/projects/OpenClaw-bot-review/%USERPROFILE%\projects\OpenClaw-bot-review\~/.openclaw/openclaw.json (or %USERPROFILE%\.openclaw\openclaw.json on Windows)# Check if process is already running on port 3000
# macOS/Linux
lsof -ti:3000
# Windows
netstat -ano | findstr :3000
If already running:
macOS/Linux:
lsof -ti:3000 | xargs kill -9 2>/dev/null
echo "已停止旧服务"
Windows (PowerShell):
Get-Process -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess | Stop-Process -Force
Write-Host "已停止旧服务"
Windows (cmd):
for /f "tokens=5" %a in ('netstat -ano ^| findstr :3000') do taskkill /F /PID %a
echo 已停止旧服务
Then proceed to Step 1.5.
If project exists, check if there's a newer version:
If git is available:
# macOS/Linux
cd ~/projects/OpenClaw-bot-review
git fetch origin main 2>/dev/null
LOCAL=$(git rev-parse HEAD 2>/dev/null)
REMOTE=$(git rev-parse origin/main 2>/dev/null)
if [ "$LOCAL" != "$REMOTE" ]; then
echo "update_available"
else
echo "up_to_date"
fi
# Windows (PowerShell)
cd "$env:USERPROFILE\projects\OpenClaw-bot-review"
git fetch origin main 2>$null
$local = git rev-parse HEAD 2>$null
$remote = git rev-parse origin/main 2>$null
if ($local -ne $remote) { "update_available" } else { "up_to_date" }
If update available:
git pull origin mainnpm installIf up to date:
If git is NOT available:
# macOS/Linux
rm -rf ~/projects/OpenClaw-bot-review
# Windows (PowerShell)
Remove-Item -Recurse -Force "$env:USERPROFILE\projects\OpenClaw-bot-review"
# macOS/Linux
test -d ~/projects/OpenClaw-bot-review && echo "exists" || echo "not found"
# Windows (PowerShell)
Test-Path "$env:USERPROFILE\projects\OpenClaw-bot-review"
If exists, skip to Step 4.
Option A: With git (preferred)
# macOS/Linux
mkdir -p ~/projects
cd ~/projects
git clone https://github.com/xmanrui/OpenClaw-bot-review.git
# Windows (PowerShell)
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\projects"
cd "$env:USERPROFILE\projects"
git clone https://github.com/xmanrui/OpenClaw-bot-review.git
Option B: Without git (fallback)
macOS/Linux:
mkdir -p ~/projects
cd ~/projects
curl -L https://github.com/xmanrui/OpenClaw-bot-review/archive/refs/heads/main.zip -o openclaw-dashboard.zip
unzip openclaw-dashboard.zip
mv OpenClaw-bot-review-main OpenClaw-bot-review
rm openclaw-dashboard.zip
Windows (PowerShell):
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\projects"
cd "$env:USERPROFILE\projects"
Invoke-WebRequest -Uri "https://github.com/xmanrui/OpenClaw-bot-review/archive/refs/heads/main.zip" -OutFile "openclaw-dashboard.zip"
Expand-Archive -Path "openclaw-dashboard.zip" -DestinationPath "."
Rename-Item -Path "OpenClaw-bot-review-main" -NewName "OpenClaw-bot-review"
Remove-Item "openclaw-dashboard.zip"
Windows (cmd with curl - Windows 10+):
mkdir "%USERPROFILE%\projects" 2>nul
cd /d "%USERPROFILE%\projects"
curl -L https://github.com/xmanrui/OpenClaw-bot-review/archive/refs/heads/main.zip -o openclaw-dashboard.zip
tar -xf openclaw-dashboard.zip
ren OpenClaw-bot-review-main OpenClaw-bot-review
del openclaw-dashboard.zip
Check if node_modules exists. If not:
# macOS/Linux
cd ~/projects/OpenClaw-bot-review
npm install
# Windows
cd "%USERPROFILE%\projects\OpenClaw-bot-review"
npm install
macOS/Linux:
cd ~/projects/OpenClaw-bot-review
npm run dev > /dev/null 2>&1 &
Windows (PowerShell):
cd "$env:USERPROFILE\projects\OpenClaw-bot-review"
Start-Process -NoNewWindow -FilePath "npm" -ArgumentList "run", "dev"
Windows (cmd):
cd /d "%USERPROFILE%\projects\OpenClaw-bot-review"
start /B npm run dev
Poll http://localhost:3000 until it responds (max 30 seconds).
# macOS/Linux
for i in {1..30}; do
curl -s http://localhost:3000 > /dev/null && break
sleep 1
done
# Windows (PowerShell)
for ($i=0; $i -lt 30; $i++) {
try {
Invoke-WebRequest -Uri "http://localhost:3000" -UseBasicParsing -TimeoutSec 1 | Out-Null
break
} catch {
Start-Sleep -Seconds 1
}
}
You MUST return both:
First, actually detect the machine's LAN IPv4 address. Do not guess it.
macOS/Linux:
(ipconfig getifaddr en0 || ipconfig getifaddr en1 || hostname -I | awk '{print $1}') 2>/dev/null
Windows (PowerShell):
(Get-NetIPAddress -AddressFamily IPv4 -InterfaceAlias "Ethernet*","Wi-Fi*" | Select-Object -First 1).IPAddress
Rules:
Return message format:
✅ OpenClaw Dashboard 已启动!
访问地址:
- 本地访问:http://localhost:3000
- 局域网访问:http://<LAN-IP>:3000
Dashboard 会自动读取你的 OpenClaw 配置,展示所有机器人、模型、会话的状态。
需要停止服务时告诉我一声。
If LAN IP detection fails, use:
✅ OpenClaw Dashboard 已启动!
访问地址:
- 本地访问:http://localhost:3000
- 局域网访问:获取失败
原因:未能检测到当前机器的局域网 IPv4 地址。
需要停止服务时告诉我一声。
When user asks to stop:
macOS/Linux:
lsof -ti:3000 | xargs kill -9
Windows (PowerShell):
Get-Process -Id (Get-NetTCPConnection -LocalPort 3000).OwningProcess | Stop-Process -Force
Windows (cmd):
for /f "tokens=5" %a in ('netstat -ano ^| findstr :3000') do taskkill /F /PID %a
PORT=3001 npm run dev)~/.openclaw/openclaw.jsonnpm cache clean --force and retrying~/.openclaw/openclaw.json - no database needed# Detect OS
uname -s # macOS: Darwin, Linux: Linux, Windows (Git Bash): MINGW*/MSYS*
# Windows detection in PowerShell
$PSVersionTable.Platform # Win32NT or empty on Windows
# Check if git is available
git --version
# Exit code 0 = installed, non-zero = not installed
Detection logic:
git --version at the beginningIf git not available: