关于 openclaw-bot-dashboard
openclaw-bot-dashboard 是用于下载、更新和启动 OpenClaw Dashboard 网页界面的技能,面向 OpenClaw 用户。它在本机运行仪表盘,以查看机器人、Agent、模型和会话状态。
主要功能
- 01检测操作系统与 Git 状态
- 02下载或更新仪表盘
- 03安装 npm 依赖
- 04在后台启动服务
- 05返回本地和局域网访问地址
适用场景
- 01启动 OpenClaw Dashboard
- 02更新已有仪表盘安装
- 03查看机器人、模型和会话状态
- 04重启 3000 端口上的仪表盘服务
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ xmanrui/ openclaw-bot-dashboard --skill openclaw-bot-dashboard安装后在 Claude Code 中输入/openclaw-bot-dashboard确认已加载。
附带文件skill.jsonREADME.md
详细介绍
OpenClaw Dashboard 技能
启动并管理 OpenClaw Dashboard 网页 UI,以监控所有机器人、Agent、模型和会话。
激活方式
用户说以下内容时激活:
- "打开 OpenClaw-bot-review"
- "打开 Openclaw dashboard"
- "打开 bot review"
- "打开机器人大盘"
- "打开 bot-review"
- "打开openclaw机器人大盘"
- "open openclaw dashboard"
- "open OpenClaw-bot-review"
- "open bot review"
- "open bot-review"
- "launch bot review"
- "start dashboard"
此技能的功能
- 检测操作系统(macOS/Windows)
- 检查是否已安装 git
- 如果尚未下载,则下载/克隆 OpenClaw Dashboard 项目
- 安装依赖项(npm install)
- 在后台启动开发服务器
- 向用户返回访问 URL
安装目录
- macOS/Linux:
~/projects/OpenClaw-bot-review/ - Windows:
%USERPROFILE%\projects\OpenClaw-bot-review\
前提条件
- 必须安装 Node.js 18+
- OpenClaw 配置文件位于
~/.openclaw/openclaw.json(Windows 上为%USERPROFILE%\.openclaw\openclaw.json)
工作流
步骤 1:检查是否已在运行并将其停止
# Check if process is already running on port 3000
# macOS/Linux
lsof -ti:3000
# Windows
netstat -ano | findstr :3000
如果已在运行:
- 先停止服务(确保干净重启)
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 已停止旧服务
然后继续执行步骤 1.5。
步骤 1.5:检查更新(如果项目已存在)
如果项目已存在,请检查是否有更新版本:
如果 git 可用:
# 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" }
如果有可用更新:
- 告知用户:"检测到新版本,正在更新..."
- 拉取最新代码:
git pull origin main - 重新安装依赖项:
npm install - 继续执行步骤 5(启动服务)
如果已是最新版本:
- 继续执行步骤 5(启动服务)
如果 git 不可用:
- 告知用户:"检测到项目无 git 管理,正在重新下载最新版本..."
- 删除旧项目目录:
# macOS/Linux rm -rf ~/projects/OpenClaw-bot-review # Windows (PowerShell) Remove-Item -Recurse -Force "$env:USERPROFILE\projects\OpenClaw-bot-review" - 前往步骤 3(通过 ZIP 下载项目)
步骤 2:检查项目是否存在
# macOS/Linux
test -d ~/projects/OpenClaw-bot-review && echo "exists" || echo "not found"
# Windows (PowerShell)
Test-Path "$env:USERPROFILE\projects\OpenClaw-bot-review"
如果存在,则跳过至步骤 4。
步骤 3:下载项目
选项 A:使用 git(首选)
# 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
选项 B:不使用 git(备用方案)
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(使用 curl 的 cmd - 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
步骤 4:安装依赖项(如有需要)
检查 node_modules 是否存在。如果不存在:
# macOS/Linux
cd ~/projects/OpenClaw-bot-review
npm install
# Windows
cd "%USERPROFILE%\projects\OpenClaw-bot-review"
npm install
步骤 5:启动服务器
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
步骤 6:等待服务器就绪
轮询 http://localhost:3000,直到收到响应(最长等待 30 秒)。
# 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
}
}
步骤 7:返回访问 URL(必需)
必须同时返回:
- 本地 URL
- 局域网 URL
首先,实际检测计算机的局域网 IPv4 地址。不要猜测。
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
规则:
- 必须先执行 IP 检测命令,再撰写最终回复。
- 不要猜测或伪造局域网 IP。
- 不要仅因 localhost 可用就省略局域网 URL。
- 最终回复中必须同时包含本地 URL 和局域网 URL。
- 如果局域网 IP 检测失败,仍必须包含本地 URL,并明确说明:
- 局域网访问地址:获取失败
- 并简要说明局域网 IP 检测失败。
- 不要只以 localhost URL 结束回复。
返回消息格式:
✅ OpenClaw Dashboard 已启动!
访问地址:
- 本地访问:http://localhost:3000
- 局域网访问:http://<LAN-IP>:3000
Dashboard 会自动读取你的 OpenClaw 配置,展示所有机器人、模型、会话的状态。
需要停止服务时告诉我一声。
如果局域网 IP 检测失败,请使用:
✅ OpenClaw Dashboard 已启动!
访问地址:
- 本地访问:http://localhost:3000
- 局域网访问:获取失败
原因:未能检测到当前机器的局域网 IPv4 地址。
需要停止服务时告诉我一声。
停止服务器
用户要求停止时:
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
错误处理
- 找不到 Node.js:告知用户从 https://nodejs.org/ 安装 Node.js 18+
- 端口 3000 已被占用:检查占用端口的是 Dashboard(返回 URL)还是其他服务(建议使用其他端口:
PORT=3001 npm run dev) - 找不到 OpenClaw 配置文件:警告用户,如果没有
~/.openclaw/openclaw.json,Dashboard 可能无法正常工作 - 下载失败:建议检查网络连接,或从 GitHub 手动下载
- npm install 失败:建议运行
npm cache clean --force后重试
备注
- 服务在后台运行,并会一直运行,直到停止或系统重启
- 仪表板直接读取
~/.openclaw/openclaw.json中的配置——无需数据库 - 支持自动刷新、深色/浅色主题、国际化(中文/英文)
- 包含像素风办公室动画,提供趣味可视化效果
平台检测
# Detect OS
uname -s # macOS: Darwin, Linux: Linux, Windows (Git Bash): MINGW*/MSYS*
# Windows detection in PowerShell
$PSVersionTable.Platform # Win32NT or empty on Windows
Git 检测
# Check if git is available
git --version
# Exit code 0 = installed, non-zero = not installed
检测逻辑:
- 开始时运行
git --version - 保存结果(可用/不可用)
- 在整个工作流中使用此结果
如果 git 不可用:
- 始终使用 ZIP 下载方式
- 如果项目已存在,始终强制重新下载(以获取最新版本)
- 下载前清理旧目录
实现提示
- 始终先停止旧服务——确保使用最新代码干净地重启
- 在开始时检查 git 是否可用——以确定更新策略
- **使用 git 时:**检查更新,并在需要时拉取
- **不使用 git 时:**强制重新下载 ZIP,以确保获取最新版本
- 无需用户确认——自动更新并重启,以获得最佳用户体验
- 使用后台进程管理,避免阻塞
- 在每个步骤提供清晰的反馈(“已停止旧服务”、“检测到新版本,正在更新...”、“正在重新下载最新版本...”)
- 在 Windows 上同时处理 PowerShell 和 cmd
- 清理临时文件(ZIP 压缩包)
- 记录错误以便调试,但用户提示应保持简洁
- 始终确保使用最新代码——通过 git pull 或重新下载实现