feat: U-Claw v1.0 - OpenClaw offline installer USB for China

- Build script to package Node.js (Mac ARM64/x64 + Win x64) + OpenClaw + all deps
- YuLinMuFeng-style launcher menu with 16 functions (install/repair/backup/reset)
- 8 Chinese AI models one-click config (DeepSeek/Kimi/Qwen/GLM/MiniMax/Doubao/Qianfan/Mimo)
- QQ official integration (Tencent), Feishu, WeChat, Telegram, Discord, WhatsApp, Slack
- 52 pre-installed skills, all offline
- Bilingual README (Chinese + English)
- Full China tutorial (12 chapters)
- MIT license
This commit is contained in:
dongsheng123132
2026-03-09 10:01:38 +08:00
commit 6f54151a79
13 changed files with 2803 additions and 0 deletions

20
.gitignore vendored Normal file
View File

@@ -0,0 +1,20 @@
# U-Claw build outputs (too large for git)
U-Claw/runtime/
U-Claw/openclaw/node_modules/
U-Claw/openclaw/dist/
U-Claw/openclaw/.git/
U-Claw/backups/
# OpenClaw source (users download separately)
openclaw-2026.3.7/
openclaw-2026.3.7.zip
# Build cache
.download-cache/
# OS files
.DS_Store
Thumbs.db
# Claude
.claude/

21
LICENSE Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2026 U-Claw Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

270
README.md Normal file
View File

@@ -0,0 +1,270 @@
# 🦞 U-Claw
**OpenClaw Offline Installer USB — Built for China, Works Everywhere**
**OpenClaw 离线安装 U 盘 — 专为中国用户打造,全球可用**
> Like the legendary [YuLinMuFeng](https://en.wikipedia.org/wiki/Ylmf) Windows discs, but for AI.
> 就像当年的雨林木风,把 AI 助手的安装简化到"插 U 盘,双击运行"。
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
---
## Why U-Claw? / 为什么需要 U-Claw
[OpenClaw](https://github.com/openclaw/openclaw) is the most powerful open-source AI assistant framework — 20+ chat platforms, 50+ AI models. But in China, installing it is a nightmare:
[OpenClaw](https://github.com/openclaw/openclaw) 是最强的开源 AI 助手框架,但在中国安装它是个噩梦:
- ❌ GitHub blocked / GitHub 访问不了
- ❌ npm install timeout / npm install 超时
- ❌ Node.js download slow / Node.js 下载慢
- ❌ Dependencies fail / 依赖装不上
**U-Claw solves all of this.** Node.js runtime, OpenClaw source, all npm dependencies, 52 pre-installed skills — everything bundled on a USB drive. Plug in, double-click, done.
**U-Claw 解决所有这些问题。** Node.js + OpenClaw + 所有依赖 + 52个技能全部打包。插上 U 盘,双击即用。
## Features / 特性
- 🚀 **One-click install / 一键安装** — macOS + Windows, double-click to start
- 📦 **Fully offline / 完全离线** — No internet needed for installation
- 🇨🇳 **China-optimized / 中国优化** — 8 Chinese AI models (DeepSeek, Kimi, Qwen, GLM, MiniMax, Doubao, Qianfan, Mimo)
- 💬 **Multi-platform / 多平台** — QQ (official) / Feishu / WeChat / Telegram / Discord / WhatsApp / Slack
- 🔧 **Maintenance tools / 维护工具** — Diagnose, backup, restore, reset
- 🎯 **52 skills / 52个技能** — Pre-installed productivity skills
- 📖 **Bilingual docs / 双语文档** — Chinese + English
## Quick Start / 快速开始
### Option 1: Download Release / 下载发布版(推荐)
```bash
# Download from Releases / 从 Releases 下载
# https://github.com/dongsheng123132/u-claw/releases
# After extracting / 解压后:
# Mac: double-click "启动菜单.command"
# Win: double-click "启动菜单.bat"
```
### Option 2: Build Your Own / 自己构建
```bash
# Clone this repo / 克隆仓库
git clone https://github.com/dongsheng123132/u-claw.git
cd u-claw
# Download OpenClaw source / 下载 OpenClaw 源码
git clone https://github.com/openclaw/openclaw.git openclaw-2026.3.7
# Build (downloads Node.js + installs deps + builds)
# 构建(自动下载 Node.js + 安装依赖 + 构建)
chmod +x build-uclaw.sh
./build-uclaw.sh
# Copy U-Claw/ folder to USB drive
# 把 U-Claw/ 文件夹复制到 U 盘
```
### Option 3: Copy from a Friend / 复制别人的
Just copy the `U-Claw/` folder. That's it.
直接把 `U-Claw/` 文件夹复制一份就行。
## USB Contents / U 盘内容
```
U-Claw/ (~1.3GB, 8GB USB minimum)
├── 启动菜单.command / .bat ← Launcher menu (YuLinMuFeng style)
├── 运行.command / .bat ← Quick start (skip menu)
├── 安装到电脑.command / .bat ← Install to computer (permanent)
├── 使用说明.txt ← Basic instructions
├── 中国用户指南.txt ← China quick-start guide
├── 教程-OpenClaw中国区完全指南.md ← Full tutorial (12 chapters)
├── runtime/ ← Node.js 22 runtimes
│ ├── node-mac-arm64/ ← Mac Apple Silicon (M1-M4)
│ ├── node-mac-x64/ ← Mac Intel
│ └── node-win-x64/ ← Windows 64-bit
├── openclaw/ ← OpenClaw + node_modules + dist
│ ├── skills/ ← 52 pre-installed skills
│ └── extensions/ ← 42 channel extensions
├── memory/ ← AI memory (user data)
├── persona/ ← AI personality config
└── backups/ ← Auto-created backups
```
## Launcher Menu / 启动菜单
16 functions, inspired by YuLinMuFeng (雨林木风) installer UI:
```
╔════════════════════════════════════════════════════════╗
║ 🦞 U-Claw v1.0 ║
║ Optimized for China · Offline · One-click ║
╠════════════════════════════════════════════════════════╣
━━ Install ━━
[1] Install to computer [2] Install deps
[3] Build project [4] Run from USB
━━ China Optimization ━━
[5] Chinese AI models [6] Chat platforms (QQ/Feishu/WeChat)
[7] Set China mirror
━━ Maintenance ━━
[8] Diagnose & repair [9] Backup [10] Restore
[11] Reset (3 levels) [12] Clean cache
━━ Skills & Usage ━━
[13] Browse 52 skills [14] China user guide
[15] Instructions [16] System info
```
## Supported AI Models / 支持的 AI 模型
### Chinese Models (no VPN needed) / 国产模型(无需翻墙)
| Model 模型 | Provider 提供商 | Best for 推荐场景 |
|------------|----------------|-------------------|
| DeepSeek | 深度求索 | Coding, best value / 编程,性价比首选 |
| Kimi K2.5 | 月之暗面 Moonshot | Long docs, 256K context / 长文档 |
| Qwen | 阿里通义千问 | Large free tier / 免费额度大 |
| GLM 4.7 | 智谱AI Zhipu | Academic, Chinese NLP / 学术 |
| MiniMax | MiniMax | Voice, multimodal / 语音 |
| Doubao | 字节豆包 ByteDance | Volcano Engine / 火山引擎 |
| Qianfan | 百度千帆 Baidu | Baidu Cloud / 百度云 |
| Mimo | 小米 Xiaomi | Xiaomi ecosystem / 小米生态 |
### International Models / 国际模型
| Model | Provider | Best for |
|-------|----------|----------|
| Claude | Anthropic | Best overall + coding |
| GPT | OpenAI | Wide compatibility |
| Gemini | Google | Free tier |
## Supported Chat Platforms / 支持的聊天平台
| Platform 平台 | Status 状态 | Notes 说明 |
|---------------|------------|------------|
| QQ | ✅ **Official** 腾讯官方 | 3 commands, 1 min, free / 3条命令搞定 |
| Feishu 飞书 | ✅ Built-in 已内置 | Enterprise best / 企业首选 |
| WeChat 微信 | ✅ Community plugin | iPad protocol |
| Telegram | ✅ Built-in | Recommended for intl users |
| Discord | ✅ Built-in | Gaming / community |
| WhatsApp | ✅ Built-in | International users |
| Slack | ✅ Built-in | Enterprise (intl) |
| WeCom 企业微信 | 🔜 Coming | — |
| DingTalk 钉钉 | 🔜 Coming | — |
### QQ Setup (1 minute) / QQ 接入1 分钟)
Tencent officially supports OpenClaw QQ bots. 腾讯官方支持:
```bash
# 1. Register / 注册: http://q.qq.com/qqbot/openclaw/login.html
# 2. Create bot, get AppID:AppSecret / 创建机器人
# 3. Run 3 commands / 运行3条命令:
openclaw plugins install @sliverp/qqbot@latest
openclaw channels add --channel qqbot --token "AppID:AppSecret"
openclaw gateway restart
# 4. Set allowlist! / 设置白名单!
openclaw config set channels.qqbot.allowFrom "your_qq_number"
```
## System Requirements / 系统要求
- **macOS**: 12+ (Intel or Apple Silicon)
- **Windows**: 10/11 (64-bit)
- **RAM**: 2GB+ (4GB+ recommended)
- **USB**: 8GB+ (16GB recommended)
## Build Guide / 构建指南
### Prerequisites / 前提
- macOS or Linux (build environment)
- Internet access (only needed for building, not for end users)
- ~2GB disk space
### What the build script does / 构建脚本做了什么
1. Downloads Node.js 22 for 3 platforms (Mac ARM64 + Mac x64 + Win x64), prefers China mirror
2. Copies OpenClaw source to `U-Claw/openclaw/`
3. Runs `npm install` with China mirror (registry.npmmirror.com)
4. Runs `npm run build` to build OpenClaw
5. Copies launcher scripts and docs
6. Output: ~1.3GB ready to copy to USB
### Updating / 更新
```bash
# Download new OpenClaw source, replace openclaw-2026.3.7/
./build-uclaw.sh
# Copy new U-Claw/ to USB
```
## Contributing / 参与贡献
PRs welcome! Especially needed / 欢迎 PR特别需要
- 🔧 More platform repair scripts / 更多平台修复脚本
- 📖 Tutorials and guides / 教程
- 💬 More chat bridges (WeCom, DingTalk) / 企业微信、钉钉桥接
- 🎯 Useful skills / 实用技能
- 🌐 Translations / 翻译
```bash
# Fork → Branch → Commit → PR
git checkout -b feature/my-feature
git commit -m "feat: add xxx"
git push origin feature/my-feature
```
## Related Projects / 相关项目
| Project 项目 | Stars | Description 说明 |
|-------------|-------|-----------------|
| [OpenClaw](https://github.com/openclaw/openclaw) | — | The AI assistant framework / AI 助手框架 |
| [hello-claw](https://github.com/datawhalechina/hello-claw) | 90+ | Systematic Chinese tutorial / 体系化中文教程 |
| [openclaw-docs](https://github.com/yeuxuan/openclaw-docs) | 500+ | 276 source-level docs / 源码级文档 |
| [awesome-openclaw-skills-zh](https://github.com/clawdbot-ai/awesome-openclaw-skills-zh) | 2500+ | Chinese skill library / 中文技能库 |
| [NapCatQQ](https://github.com/NapNeko/NapCatQQ) | — | QQ bot framework (OneBot v11) |
## FAQ
**Q: Do end users need a VPN? / 用户需要翻墙吗?**
A: No for installation. Runtime needs internet for AI APIs — Chinese models (DeepSeek etc.) work without VPN.
安装不需要。运行需要联网调 API国产模型无需翻墙。
**Q: USB drive size? / U 盘要多大?**
A: 8GB minimum, 16GB recommended.
**Q: Can I share it? / 能分发吗?**
A: Yes, unlimited. MIT license, copy freely.
可以无限制MIT 协议。
**Q: Windows needs WSL? / Windows 需要 WSL 吗?**
A: No. U-Claw bundles Windows Node.js, runs natively via `.bat`.
不需要。自带 Windows 版 Node.js。
## License
[MIT](LICENSE) — Free to use, modify, distribute.
自由使用、修改、分发。
---
**Made with 🦞 by [dongsheng](https://github.com/dongsheng123132) & OpenClaw Community**
**Website: [u-claw.org](https://u-claw.org)**

157
build-uclaw.sh Executable file
View File

@@ -0,0 +1,157 @@
#!/bin/bash
# ============================================================
# U-Claw 虾盘 构建脚本
# 在你的 Mac 上运行,打包所有依赖到 U-Claw 目录
# 用法: ./build-uclaw.sh
# ============================================================
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
UCLAW_DIR="$SCRIPT_DIR/U-Claw"
SOURCE_DIR="$SCRIPT_DIR/openclaw-2026.3.7"
NODE_VERSION="22.16.0"
# 颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
CYAN='\033[0;36m'
NC='\033[0m'
info() { echo -e "${CYAN}[U-Claw]${NC} $1"; }
ok() { echo -e "${GREEN}[✓]${NC} $1"; }
warn() { echo -e "${YELLOW}[!]${NC} $1"; }
error() { echo -e "${RED}[✗]${NC} $1"; exit 1; }
echo ""
echo " 🦞 U-Claw 虾盘 构建工具"
echo " ========================"
echo " OpenClaw 一键安装 U 盘制作"
echo ""
# ---- 1. 创建 U-Claw 目录结构 ----
info "创建 U-Claw 目录结构..."
rm -rf "$UCLAW_DIR"
mkdir -p "$UCLAW_DIR"/{runtime/{node-mac-arm64,node-mac-x64,node-win-x64},openclaw,memory,persona,skills,tools}
# ---- 2. 下载 Node.js 各平台版本 ----
DOWNLOAD_DIR="$SCRIPT_DIR/.download-cache"
mkdir -p "$DOWNLOAD_DIR"
download_node() {
local PLATFORM=$1 # darwin, win
local ARCH=$2 # arm64, x64
local EXT=$3 # tar.gz, zip
local DEST=$4 # 目标目录名
local FILENAME="node-v${NODE_VERSION}-${PLATFORM}-${ARCH}"
local URL="https://nodejs.org/dist/v${NODE_VERSION}/${FILENAME}.${EXT}"
local CACHED="$DOWNLOAD_DIR/${FILENAME}.${EXT}"
if [ -f "$CACHED" ]; then
ok "Node.js ${PLATFORM}-${ARCH} 已缓存"
else
info "下载 Node.js ${PLATFORM}-${ARCH}..."
# 尝试直接下载,如果失败则使用镜像
if ! curl -fL --connect-timeout 10 -o "$CACHED" "$URL" 2>/dev/null; then
warn "官方源下载失败,尝试淘宝镜像..."
local MIRROR_URL="https://npmmirror.com/mirrors/node/v${NODE_VERSION}/${FILENAME}.${EXT}"
curl -fL -o "$CACHED" "$MIRROR_URL" || error "下载 Node.js ${PLATFORM}-${ARCH} 失败"
fi
ok "下载完成: Node.js ${PLATFORM}-${ARCH}"
fi
info "解压 Node.js ${PLATFORM}-${ARCH}..."
if [ "$EXT" = "tar.gz" ]; then
tar xzf "$CACHED" -C "$UCLAW_DIR/runtime/$DEST/" --strip-components=1
elif [ "$EXT" = "zip" ]; then
# Windows zip
local TMP_UNZIP="$DOWNLOAD_DIR/tmp-unzip-$$"
mkdir -p "$TMP_UNZIP"
unzip -q "$CACHED" -d "$TMP_UNZIP"
cp -R "$TMP_UNZIP"/${FILENAME}/* "$UCLAW_DIR/runtime/$DEST/"
rm -rf "$TMP_UNZIP"
fi
ok "Node.js ${PLATFORM}-${ARCH} 就绪"
}
# 下载三个平台的 Node.js
download_node "darwin" "arm64" "tar.gz" "node-mac-arm64" # Mac Apple Silicon
download_node "darwin" "x64" "tar.gz" "node-mac-x64" # Mac Intel
download_node "win" "x64" "zip" "node-win-x64" # Windows x64
# ---- 3. 复制 OpenClaw 源码 ----
info "复制 OpenClaw 源码..."
rsync -a --exclude='.git' --exclude='node_modules' --exclude='.github' \
"$SOURCE_DIR/" "$UCLAW_DIR/openclaw/"
ok "OpenClaw 源码复制完成"
# ---- 4. 安装依赖 (使用淘宝镜像) ----
info "安装 npm 依赖(使用淘宝镜像)..."
# 使用 U-Claw 自带的 Node.js 来安装
if [ "$(uname -m)" = "arm64" ]; then
NODE_BIN="$UCLAW_DIR/runtime/node-mac-arm64/bin/node"
NPM_BIN="$UCLAW_DIR/runtime/node-mac-arm64/bin/npm"
else
NODE_BIN="$UCLAW_DIR/runtime/node-mac-x64/bin/node"
NPM_BIN="$UCLAW_DIR/runtime/node-mac-x64/bin/npm"
fi
cd "$UCLAW_DIR/openclaw"
# 设置淘宝镜像
"$NODE_BIN" "$NPM_BIN" config set registry https://registry.npmmirror.com --location=project 2>/dev/null || true
# 安装依赖
info "npm install 中...(可能需要几分钟)"
"$NODE_BIN" "$NPM_BIN" install --registry=https://registry.npmmirror.com --prefer-offline 2>&1 | tail -5
ok "npm 依赖安装完成"
# ---- 5. 构建 OpenClaw ----
info "构建 OpenClaw..."
# 检查是否有 pnpm 可用OpenClaw 使用 pnpm build
if [ -f "$UCLAW_DIR/openclaw/node_modules/.bin/tsdown" ]; then
# 尝试简单构建
cd "$UCLAW_DIR/openclaw"
"$NODE_BIN" "$NPM_BIN" run build 2>&1 | tail -10 || warn "build 可能有错误,继续..."
fi
ok "构建步骤完成"
cd "$SCRIPT_DIR"
# ---- 6. 复制用户脚本和说明 ----
info "复制用户脚本..."
# 从 scripts 模板目录复制(构建脚本同级的 uclaw-scripts/ 目录)
SCRIPTS_SRC="$SCRIPT_DIR/uclaw-scripts"
if [ -d "$SCRIPTS_SRC" ]; then
cp "$SCRIPTS_SRC/运行.command" "$UCLAW_DIR/" 2>/dev/null || true
cp "$SCRIPTS_SRC/运行.bat" "$UCLAW_DIR/" 2>/dev/null || true
cp "$SCRIPTS_SRC/安装到电脑.command" "$UCLAW_DIR/" 2>/dev/null || true
cp "$SCRIPTS_SRC/安装到电脑.bat" "$UCLAW_DIR/" 2>/dev/null || true
cp "$SCRIPTS_SRC/使用说明.txt" "$UCLAW_DIR/" 2>/dev/null || true
chmod +x "$UCLAW_DIR/运行.command" "$UCLAW_DIR/安装到电脑.command" 2>/dev/null || true
ok "用户脚本已复制"
else
warn "找不到 uclaw-scripts/ 目录,请手动复制脚本到 U-Claw/"
fi
# ---- 7. 计算大小 ----
echo ""
echo " ============================================"
info "U-Claw 构建完成!"
echo ""
TOTAL_SIZE=$(du -sh "$UCLAW_DIR" | cut -f1)
echo " 总大小: $TOTAL_SIZE"
echo ""
du -sh "$UCLAW_DIR"/runtime/node-mac-arm64 2>/dev/null | awk '{print " Node.js Mac ARM64: "$1}'
du -sh "$UCLAW_DIR"/runtime/node-mac-x64 2>/dev/null | awk '{print " Node.js Mac x64: "$1}'
du -sh "$UCLAW_DIR"/runtime/node-win-x64 2>/dev/null | awk '{print " Node.js Win x64: "$1}'
du -sh "$UCLAW_DIR"/openclaw 2>/dev/null | awk '{print " OpenClaw + 依赖: "$1}'
echo ""
echo " 将 U-Claw 文件夹整个复制到 U 盘即可"
echo " ============================================"
echo ""

View File

@@ -0,0 +1,515 @@
# OpenClaw 中国区完全指南
> 综合参考 [hello-claw](https://github.com/datawhalechina/hello-claw)、[openclaw-docs](https://github.com/yeuxuan/openclaw-docs)、[awesome-openclaw-skills-zh](https://github.com/clawdbot-ai/awesome-openclaw-skills-zh) 等优秀社区教程
---
## 目录
1. [什么是 OpenClaw](#1-什么是-openclaw)
2. [安装(使用 U-Claw 一键安装)](#2-安装使用-u-claw-一键安装)
3. [首次配置](#3-首次配置)
4. [选择 AI 模型](#4-选择-ai-模型)
5. [接入聊天平台](#5-接入聊天平台)
6. [日常使用场景](#6-日常使用场景)
7. [技能系统](#7-技能系统)
8. [定时任务与自动化](#8-定时任务与自动化)
9. [多模型配置与成本优化](#9-多模型配置与成本优化)
10. [常见问题与故障排除](#10-常见问题与故障排除)
11. [进阶VPS 部署](#11-进阶vps-部署)
12. [社区资源](#12-社区资源)
---
## 1. 什么是 OpenClaw
OpenClaw 是一个**开源 AI 助手框架**,你可以把它理解为:
- 一个能接入 QQ、飞书、Telegram、Discord 等 20+ 聊天平台的 AI 机器人
- 一个能调用 DeepSeek、Kimi、Claude、GPT 等 50+ AI 模型的智能网关
- 一个支持 52+ 技能(发邮件、管理日程、操作笔记、控制智能家居)的全能助手
- 一个可以设定定时任务、自动执行工作流的 AI Agent
**一句话总结:你的私人 AI 助手,跑在你自己的设备上,连接你所有的聊天工具。**
### 核心架构
```
你的聊天平台 ←→ OpenClaw Gateway ←→ AI 模型
(QQ/飞书/TG) (你的电脑) (DeepSeek/Kimi/Claude)
技能 & 工具
(邮件/笔记/日程/搜索...)
```
---
## 2. 安装(使用 U-Claw 一键安装)
### 方式一U-Claw U 盘安装(推荐,免翻墙)
```
1. 插入 U-Claw U 盘
2. Mac: 双击「启动菜单.command」
Win: 双击「启动菜单.bat」
3. 选择 [1] 一键安装到电脑
4. 等待完成(约 2-3 分钟)
```
安装后在终端输入 `openclaw``uclaw` 即可启动。
### 方式二:手动安装(需要翻墙)
```bash
# 安装 Node.js 22+
# 方法1: 官网下载 https://nodejs.org
# 方法2: 使用 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install 22
# 安装 OpenClaw使用淘宝镜像
npm install -g openclaw@latest --registry=https://registry.npmmirror.com
# 启动引导
openclaw onboard --install-daemon
```
---
## 3. 首次配置
安装完成后,运行 `openclaw`,会进入引导向导:
### 3.1 选择 AI 模型提供商
```
? Select your AI provider:
> DeepSeek ← 国内推荐
Moonshot (Kimi)
Qwen
Anthropic (Claude)
OpenAI (GPT)
...
```
### 3.2 输入 API Key
每个模型都需要一个 API Key去对应平台注册获取下一章详细说明
### 3.3 选择聊天平台
```
? Which channels do you want to connect?
> Telegram
Discord
Feishu (飞书)
...
```
### 3.4 安装守护进程
```
? Install as background service? (Y/n)
```
选 YOpenClaw 会在后台持续运行。
---
## 4. 选择 AI 模型
### 国产模型推荐(国内直接可用,无需翻墙)
#### 🏆 DeepSeek推荐首选
- **价格**:极便宜(约 1 元 / 百万 tokens
- **特长**:编程、逻辑推理
- **注册**https://platform.deepseek.com/
- **配置**
```
# .env 文件
OPENAI_API_KEY=sk-xxxxxxxx
OPENAI_BASE_URL=https://api.deepseek.com/v1
```
#### 📚 Kimi / 月之暗面
- **价格**:中等
- **特长**256K 超长上下文,适合长文档分析
- **注册**https://platform.moonshot.cn/
- **配置**
```
OPENAI_API_KEY=sk-xxxxxxxx
OPENAI_BASE_URL=https://api.moonshot.cn/v1
```
#### 🆓 通义千问 Qwen免费额度最大
- **价格**:有大量免费额度
- **特长**:中文理解好,多模态
- **注册**https://dashscope.console.aliyun.com/
- **配置**:启动菜单 [5] 选择 Qwen
#### 🎓 智谱 GLM
- **特长**:学术场景,中文 NLP
- **注册**https://open.bigmodel.cn/
#### 🎙️ MiniMax
- **特长**:语音合成,多模态
- **注册**https://platform.minimaxi.com/
#### 🔥 豆包 Doubao字节跳动
- **特长**:火山引擎生态整合
- **注册**https://console.volcengine.com/ark
### 国际模型(需要翻墙或用 OpenRouter
| 模型 | 特长 | 注册 |
|------|------|------|
| Claude 4 | 最强综合,编程最好 | anthropic.com |
| GPT-4.1 | 广泛兼容 | platform.openai.com |
| Gemini 3 | 免费额度 | ai.google.dev |
### 💡 省钱技巧
1. **日常用 DeepSeek**,复杂任务切 Claude
2. **用 OpenRouter 统一管理多个模型**https://openrouter.ai
3. 在 OpenClaw 中可以为不同聊天平台配置不同模型
---
## 5. 接入聊天平台
### 5.1 QQ腾讯官方接入推荐
腾讯官方已为 OpenClaw 开放 QQ 机器人能力。**全程 1 分钟,完全免费,无需翻墙。**
这可能是国内 AI 助手最强入口——Telegram 要翻墙Discord 要翻墙,**QQ 不用。**
```
步骤(仅需 3 条命令):
1. 扫码注册 QQ 机器人:
http://q.qq.com/qqbot/openclaw/login.html
2. 点击「创建机器人」,获取 AppID 和 AppSecret
3. 终端执行:
openclaw plugins install @sliverp/qqbot@latest
openclaw channels add --channel qqbot --token "你的AppID:你的AppSecret"
openclaw gateway restart
```
⚠️ **安全提醒**:默认 `allowFrom` 是 `*`,任何人都能访问你的机器人。接入后务必改成自己的 QQ 号或限定白名单:
```bash
openclaw config set channels.qqbot.allowFrom "你的QQ号"
```
效果:在 QQ 中 @机器人 或私聊AI 就会回复。
### 5.1b QQ备选方案NapCatQQ
如果官方接入有问题,可以用 NapCatQQ (OneBot v11 协议) 作为备选:
```
1. 下载 NapCatQQ: https://github.com/NapNeko/NapCatQQ/releases
2. 安装并启动,用 QQ 扫码登录
3. 在 NapCat 中启用 HTTP 服务,端口 3000
4. 在 OpenClaw .env 中添加:
ONEBOT_HTTP_URL=http://localhost:3000
```
### 5.2 飞书 Feishu
飞书是 OpenClaw 内置支持最全的中国平台:
```
步骤:
1. 访问 https://open.feishu.cn/app
2. 创建企业自建应用
3. 获取 App ID 和 App Secret
4. 在「事件订阅」中配置 Webhook URL
5. 在「权限管理」中开启消息相关权限
6. 运行: openclaw onboard → 选择 Feishu
```
支持:文字/图片/文件/群组/@提及/飞书文档/多维表格
### 5.3 微信
```
# 安装社区插件
openclaw plugins install @icesword760/openclaw-wechat
# 支持:文字/图片/文件/关键词触发
# 基于 iPad 协议
```
### 5.4 Telegram
```
步骤:
1. 在 Telegram 找 @BotFather
2. 发送 /newbot按提示创建机器人
3. 获取 Bot Token
4. 运行: openclaw onboard → 选择 Telegram
5. 输入 Token
```
### 5.5 Discord
```
步骤:
1. 访问 https://discord.com/developers/applications
2. 创建 Application → Bot
3. 获取 Bot Token
4. 在 OAuth2 中生成邀请链接,邀请到服务器
5. 运行: openclaw onboard → 选择 Discord
```
---
## 6. 日常使用场景
### 编程助手
```
你: 帮我写一个 Python 爬虫,抓取豆瓣电影 Top250
AI: [生成完整代码 + 使用说明]
你: 这段代码有 bug帮我看看 [粘贴代码]
AI: [分析 bug + 修复方案]
```
### 内容创作
```
你: 帮我写一篇关于 AI 发展趋势的文章1000 字
AI: [生成文章]
你: 帮我总结这个链接的内容: https://...
AI: [总结要点]
```
### 日常办公
```
你: 帮我发邮件给 zhang@example.com主题是项目进度内容是...
AI: [通过 himalaya 技能发送邮件]
你: 提醒我明天下午 3 点开会
AI: [通过 apple-reminders 技能设置提醒]
你: 帮我在 Notion 创建一个新页面,标题是...
AI: [通过 notion 技能创建页面]
```
### 信息查询
```
你: 今天深圳天气怎么样?
AI: [通过 weather 技能查询]
你: 搜索 GitHub 上最新的 AI 开源项目
AI: [通过 github 技能搜索]
```
---
## 7. 技能系统
### 已预装的 52 个技能
U-Claw 已预装所有官方技能,无需联网下载。在启动菜单选 [13] 可以浏览完整列表。
### 常用技能速查
| 技能 | 用途 | 使用示例 |
|------|------|----------|
| github | GitHub 操作 | "帮我看 #123 这个 Issue" |
| summarize | 内容总结 | "总结这个网页" |
| weather | 天气 | "今天北京天气" |
| himalaya | 邮件 | "帮我发邮件" |
| apple-notes | 备忘录 | "帮我记一下..." |
| obsidian | Obsidian 笔记 | "在 Obsidian 创建笔记" |
| notion | Notion | "在 Notion 创建页面" |
| coding-agent | 编程委派 | "帮我重构这个函数" |
| nano-pdf | PDF 编辑 | "修改这个 PDF" |
| openai-image-gen | AI 绘图 | "画一只猫" |
| peekaboo | 屏幕截图 | "截个屏" |
| tmux | 远程终端 | "看一下服务器状态" |
### 安装更多技能
```bash
# 搜索社区技能
openclaw skills search 翻译
# 安装技能
openclaw skills install @xxx/skill-name
# 通过 ClawHub
openclaw clawhub search
```
---
## 8. 定时任务与自动化
OpenClaw 支持 Cron 定时任务:
```bash
# 每天早上 8 点发送天气预报
openclaw cron add "0 8 * * *" "查看今天深圳天气并发送到飞书"
# 每小时检查邮件
openclaw cron add "0 * * * *" "检查新邮件,有重要的通知我"
# 每天下午 6 点总结今日工作
openclaw cron add "0 18 * * *" "总结今天的工作进度"
```
---
## 9. 多模型配置与成本优化
### 为不同场景配置不同模型
在 `openclaw.json` 中:
```json
{
"models": {
"default": "deepseek-v3",
"coding": "deepseek-coder",
"creative": "kimi-k2.5",
"complex": "claude-opus-4"
}
}
```
### 成本控制建议
1. **日常对话**DeepSeek V3约 1元/百万 tokens
2. **长文档**Kimi K2.5256K 上下文)
3. **复杂推理**Claude按需切换
4. **图片生成**:用 MiniMax 或 OpenAI DALL-E
5. **语音**Sherpa-ONNX本地免费或 ElevenLabs
---
## 10. 常见问题与故障排除
### Q: 启动报错 "Node.js v22+ is required"
```bash
# 使用 U-Claw 自带的 Node.js
# Mac: 运行 "启动菜单.command" 而不是直接运行 openclaw
# 或安装到电脑后重新打开终端
```
### Q: npm install 超时
```bash
# 设置淘宝镜像
npm config set registry https://registry.npmmirror.com
# 或使用启动菜单 [7] 一键设置
```
### Q: AI 不回复消息
```bash
# 1. 检查 API Key 是否正确
# 2. 检查网络是否能访问 AI 服务
# 3. 运行诊断
openclaw doctor --repair
# 或使用启动菜单 [8]
```
### Q: 飞书机器人收不到消息
```
1. 检查事件订阅 URL 是否正确
2. 检查应用权限是否开启
3. 检查是否在飞书管理后台审核通过
4. 查看 OpenClaw 日志: tail -f ~/.openclaw/logs/gateway.log
```
### Q: QQ 机器人掉线
```
1. 检查 NapCatQQ 是否在运行
2. 重新扫码登录
3. 检查 NapCat 的 HTTP 端口配置
```
### Q: 如何完全重置?
```bash
# 方式1: 使用启动菜单 [11]
# 方式2: 命令行
openclaw reset --scope full
```
---
## 11. 进阶VPS 部署
如果你想让 AI 助手 24/7 在线运行:
### 推荐配置
- **最低**1核 2GB 内存(轻量云服务器即可)
- **推荐**2核 4GB 内存
- **存储**20GB+
### 国内云服务商推荐
- 腾讯云轻量:最低 50元/月
- 阿里云 ECS学生价更便宜
- 华为云:同上
### Docker 部署
```bash
# 使用 Docker 一键部署
git clone https://github.com/openclaw/openclaw.git
cd openclaw
cp .env.example .env
# 编辑 .env填入你的 API Key 和 Bot Token
docker compose up -d
```
---
## 12. 社区资源
### 教程
| 项目 | Stars | 说明 |
|------|-------|------|
| [hello-claw](https://github.com/datawhalechina/hello-claw) | 90+ | Datawhale 体系化教程 |
| [openclaw-docs](https://github.com/yeuxuan/openclaw-docs) | 500+ | 276篇源码级文档 |
| [awesome-openclaw-skills-zh](https://github.com/clawdbot-ai/awesome-openclaw-skills-zh) | 2500+ | 中文技能库 |
### 工具
| 项目 | 说明 |
|------|------|
| [NapCatQQ](https://github.com/NapNeko/NapCatQQ) | QQ 机器人框架 |
| [openclaw-wechat](https://github.com/icesword0760/openclaw-wechat) | 微信接入插件 |
| [U-Claw](https://github.com/dongsheng123132/u-claw) | 本项目,离线安装盘 |
### 社区
- U-Claw 官网: [u-claw.org](https://u-claw.org)
- OpenClaw 官方: [github.com/openclaw/openclaw](https://github.com/openclaw/openclaw)
---
*本教程由 U-Claw 社区维护,欢迎 PR 完善内容。*

View File

@@ -0,0 +1,148 @@
╔══════════════════════════════════════════════════════════╗
║ ║
║ U-Claw 虾盘 — 中国用户快速上手指南 ║
║ ║
╚══════════════════════════════════════════════════════════╝
第一步:选择 AI 模型
══════════════════════
OpenClaw 支持大量国产模型,以下是推荐:
1. DeepSeek深度求索—— 推荐首选
- 便宜好用,编程能力强
- 注册: https://platform.deepseek.com/
- 免费额度: 有
2. Kimi月之暗面—— 超长上下文
- 256K 上下文,适合长文档
- 注册: https://platform.moonshot.cn/
- 免费额度: 有
3. 通义千问 Qwen阿里—— 免费额度最大
- 注册: https://dashscope.console.aliyun.com/
- 免费额度: 非常多
4. 智谱 GLM清华系—— 学术场景强
- 注册: https://open.bigmodel.cn/
- 免费额度: 有
5. MiniMax —— 语音和多模态强
- 注册: https://platform.minimaxi.com/
6. 豆包 Doubao字节跳动—— 火山引擎
- 注册: https://console.volcengine.com/ark
7. 百度千帆 —— 百度智能云
- 注册: https://console.bce.baidu.com/qianfan/
8. 小米 Mimo
- 注册: https://dev.mi.com/mimo
在启动菜单选 [5] 即可一键配置
第二步:选择聊天平台
══════════════════════
让 AI 接入你的聊天工具:
已内置:
- QQ腾讯官方★ — 国内首选3条命令搞定免费免翻墙
- 飞书 Feishu — 企业首选,功能最全
- Telegram — 海外推荐
- Discord — 游戏/社区
- WhatsApp — 海外用户
- Slack — 外企用户
QQ 接入方法腾讯官方1分钟搞定:
1. 扫码注册: http://q.qq.com/qqbot/openclaw/login.html
2. 点击"创建机器人",获取 AppID 和 AppSecret
3. 运行 3 条命令:
openclaw plugins install @sliverp/qqbot@latest
openclaw channels add --channel qqbot --token "AppID:AppSecret"
openclaw gateway restart
4. 安全: 记得设置白名单 openclaw config set channels.qqbot.allowFrom "你的QQ号"
详见: 启动菜单 [6] 中国聊天平台
微信接入:
- 社区插件: openclaw plugins install @icesword760/openclaw-wechat
- 基于 iPad 协议,支持文字/图片/文件
第三步常用技能Skills
══════════════════════════
U-Claw 已预装 52 个技能,以下是最实用的:
【效率工具】
- github — GitHub 操作Issues/PR/代码审查)
- coding-agent — 委派编程任务给其他 AI
- summarize — 总结文本/网页/播客
- nano-pdf — 自然语言编辑 PDF
【笔记 & 任务】
- apple-notes — Apple 备忘录自动化
- obsidian — Obsidian 笔记操作
- notion — Notion 页面和数据库
- apple-reminders— Apple 提醒事项
- things-mac — Things 3 任务管理
- trello — Trello 看板
【AI & 创作】
- openai-image-gen — AI 图片生成
- openai-whisper — 语音转文字
- gemini — Gemini 一键问答
- sag — ElevenLabs 文字转语音
【通讯】
- himalaya — 邮件收发IMAP/SMTP
- discord — Discord 消息操作
- slack — Slack 消息操作
- wacli — WhatsApp 消息
【系统 & 搜索】
- weather — 天气查询
- peekaboo — macOS 屏幕截图和自动化
- tmux — 远程终端管理
- clawhub — 搜索安装更多技能
使用方法: 在 OpenClaw 对话中直接说 "帮我查天气" 或 "帮我发邮件" 即可
第四步:日常使用场景
══════════════════════
场景1: 编程助手
"帮我写一个 Python 脚本,批量重命名文件"
"审查这个 PR: #123"
场景2: 内容创作
"帮我总结这篇文章: [URL]"
"帮我生成一张关于AI的图片"
场景3: 日常办公
"帮我发邮件给 xxx@example.com主题是..."
"帮我在 Notion 创建一个新页面"
"提醒我明天下午3点开会"
场景4: 信息查询
"今天深圳天气怎么样?"
"帮我搜索 GitHub 上最新的 AI 项目"
场景5: 多平台 AI 助手
配置飞书/QQ/Telegram 后,直接在聊天中 @AI 即可
遇到问题?
══════════════════════
1. 插 U 盘,双击「启动菜单」
2. 选 [8] 诊断修复
3. 如果修不好,选 [11] 重置
4. 重置前会自动提醒你备份
加入社区:
- u-claw.org
- GitHub: github.com/dongsheng123132/u-claw

View File

@@ -0,0 +1,108 @@
╔══════════════════════════════════════════════════════════╗
║ ║
║ U-Claw 虾盘 v1.0 ║
║ OpenClaw 离线安装 U 盘 ║
║ ║
║ by OpenClaw Community ║
║ u-claw.org ║
║ ║
╚══════════════════════════════════════════════════════════╝
什么是 U-Claw?
═══════════════
U-Claw 虾盘是 OpenClaw开源 AI 助手)的离线安装包。
就像当年的"雨林木风"Windows 光盘一样,
把所有依赖打包好,插上 U 盘就能用。
特别适合中国大陆用户 - 不需要访问 GitHub、npm 等海外服务。
U 盘里有什么?
═══════════════
U-Claw/
├── 运行.command <- Mac 用户双击这个
├── 运行.bat <- Windows 用户双击这个
├── 安装到电脑.command <- Mac 永久安装
├── 安装到电脑.bat <- Windows 永久安装
├── runtime/ <- Node.js 运行环境 (Mac/Win)
├── openclaw/ <- OpenClaw 源码 + 依赖
├── memory/ <- AI 记忆文件
├── persona/ <- AI 人格配置
├── skills/ <- AI 技能
└── 使用说明.txt <- 你正在看的这个
快速开始
═══════════════
【方式一:直接从 U 盘运行(免安装)】
Mac 用户:
1. 插入 U 盘
2. 打开 U-Claw 文件夹
3. 双击 "运行.command"
4. 如果提示"无法打开",右键 -> 打开
5. 等待启动完成
Windows 用户:
1. 插入 U 盘
2. 打开 U-Claw 文件夹
3. 双击 "运行.bat"
4. 等待启动完成
首次运行可能需要几分钟安装依赖(已预打包,无需联网)
【方式二:安装到电脑(推荐)】
Mac 用户:
1. 双击 "安装到电脑.command"
2. 按提示操作
3. 安装后在终端输入 openclaw 即可使用
Windows 用户:
1. 双击 "安装到电脑.bat"
2. 按提示操作
3. 安装后在命令提示符输入 openclaw 即可使用
安装位置: ~/.uclaw/ (Mac) 或 %USERPROFILE%\.uclaw\ (Win)
系统要求
═══════════════
- macOS 12+ (Intel 或 Apple Silicon)
- Windows 10/11 (64位)
- 内存: 2GB 以上(推荐 4GB+
- 磁盘: 2GB 可用空间
更新方法
═══════════════
下载新版 U-Claw重新运行 "安装到电脑" 即可覆盖更新。
你的记忆文件和配置会自动保留。
常见问题
═══════════════
Q: Mac 提示"无法打开,因为它来自身份不明的开发者"
A: 右键点击文件 -> 选择 "打开" -> 再点 "打开"
Q: Windows 提示"Windows 已保护你的电脑"
A: 点击 "更多信息" -> "仍要运行"
Q: 运行报错 "Node.js v22+ is required"
A: U-Claw 自带 Node.js请确保从 U-Claw 文件夹内启动
Q: 如何配置 AI 模型的 API Key?
A: 运行 openclaw 后按引导配置,或编辑 openclaw/.env 文件
Q: 能离线使用吗?
A: OpenClaw 本身需要联网调用 AI API如 Claude、DeepSeek
但安装过程完全离线,不需要访问 GitHub 或 npm。
获取帮助
═══════════════
- OpenClaw 官方: https://github.com/openclaw/openclaw
- U-Claw 项目: https://u-claw.org

View File

@@ -0,0 +1,376 @@
@echo off
chcp 65001 >nul 2>&1
title U-Claw 虾盘 - 启动菜单
setlocal enabledelayedexpansion
set "UCLAW_DIR=%~dp0"
set "OPENCLAW_DIR=%UCLAW_DIR%openclaw"
set "NODE_DIR=%UCLAW_DIR%runtime\node-win-x64"
set "NODE_BIN=%NODE_DIR%\node.exe"
set "NPM_BIN=%NODE_DIR%\npm.cmd"
set "PATH=%NODE_DIR%;%PATH%"
:MENU
cls
echo.
echo ╔════════════════════════════════════════════════════════╗
echo ║ ║
echo ║ U-Claw 虾盘 v1.0 ║
echo ║ OpenClaw AI 助手 一键安装盘 ║
echo ║ ║
echo ║ 专为中国用户优化 · 免翻墙 · 离线安装 ║
echo ║ ║
echo ╠════════════════════════════════════════════════════════╣
echo ║ ║
:: 状态检测
for /f "tokens=*" %%v in ('"%NODE_BIN%" --version 2^>nul') do set "NODE_VER=%%v"
set "ST_MOD=未安装"
set "ST_BUILD=未构建"
set "ST_INST=未安装"
if exist "%OPENCLAW_DIR%\node_modules" set "ST_MOD=已安装"
if exist "%OPENCLAW_DIR%\dist" set "ST_BUILD=已构建"
if exist "%USERPROFILE%\.uclaw\openclaw" set "ST_INST=已安装"
echo ║ 系统: x64 ^| Node: %NODE_VER%
echo ║ 依赖: %ST_MOD% ^| 构建: %ST_BUILD% ^| 安装: %ST_INST%
echo ║ ║
echo ╠════════════════════════════════════════════════════════╣
echo.
echo ---- 安装 -----------------------------------------
echo.
echo [1] 一键安装 OpenClaw 到电脑(推荐)
echo [2] 仅安装依赖npm install
echo [3] 仅构建项目npm build
echo [4] 直接从 U 盘运行(免安装)
echo.
echo ---- 中国优化 -------------------------------------
echo.
echo [5] 配置国产 AI 模型DeepSeek/Kimi/通义千问)
echo [6] 配置中国聊天平台(飞书/钉钉)
echo [7] 设置国内镜像源
echo.
echo ---- 维护工具 -------------------------------------
echo.
echo [8] 诊断修复openclaw doctor
echo [9] 备份当前状态
echo [10] 恢复备份
echo [11] 重置 OpenClaw恢复出厂
echo [12] 清理缓存和临时文件
echo.
echo ---- 其他 -----------------------------------------
echo.
echo [13] 查看使用说明
echo [14] 系统信息
echo [0] 退出
echo.
echo ╚════════════════════════════════════════════════════════╝
echo.
set /p CHOICE=" 请选择 [0-14]: "
if "%CHOICE%"=="1" goto INSTALL
if "%CHOICE%"=="2" goto NPM_INSTALL
if "%CHOICE%"=="3" goto BUILD
if "%CHOICE%"=="4" goto RUN
if "%CHOICE%"=="5" goto CHINA_MODELS
if "%CHOICE%"=="6" goto CHINA_CHANNELS
if "%CHOICE%"=="7" goto MIRROR
if "%CHOICE%"=="8" goto DOCTOR
if "%CHOICE%"=="9" goto BACKUP
if "%CHOICE%"=="10" goto RESTORE
if "%CHOICE%"=="11" goto RESET
if "%CHOICE%"=="12" goto CLEANUP
if "%CHOICE%"=="13" goto README
if "%CHOICE%"=="14" goto SYSINFO
if "%CHOICE%"=="0" goto EXIT
echo 无效选择
pause
goto MENU
:INSTALL
echo.
echo === 一键安装 OpenClaw 到电脑 ===
echo.
call "%UCLAW_DIR%安装到电脑.bat"
pause
goto MENU
:NPM_INSTALL
echo.
echo === 安装 npm 依赖 ===
echo.
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" install --registry=https://registry.npmmirror.com
echo.
echo 依赖安装完成!
pause
goto MENU
:BUILD
echo.
echo === 构建 OpenClaw ===
echo.
if not exist "%OPENCLAW_DIR%\node_modules" (
echo 先安装依赖...
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" install --registry=https://registry.npmmirror.com
)
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" run build
echo.
echo 构建完成!
pause
goto MENU
:RUN
echo.
echo === 从 U 盘启动 OpenClaw ===
echo.
if not exist "%OPENCLAW_DIR%\node_modules" (
echo 先安装依赖...
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" install --registry=https://registry.npmmirror.com
)
if not exist "%OPENCLAW_DIR%\dist" (
echo 先构建...
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" run build 2>nul
)
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" openclaw.mjs onboard --install-daemon 2>nul || "%NODE_BIN%" openclaw.mjs 2>nul || "%NODE_BIN%" "%NPM_BIN%" start
pause
goto MENU
:CHINA_MODELS
echo.
echo === 配置国产 AI 模型 ===
echo.
echo [a] DeepSeek深度求索 - 性价比最高,推荐首选
echo [b] Kimi / 月之暗面 - 256K 超长上下文
echo [c] 通义千问 Qwen - 阿里云,免费额度大
echo [d] 智谱 GLM - 清华系
echo [e] MiniMax - 语音和多模态
echo [f] 豆包 Doubao字节跳动 - 火山引擎平台
echo.
set /p MODEL=" 请选择 (a-f): "
set "ENV_FILE=%OPENCLAW_DIR%\.env"
if not exist "%ENV_FILE%" type nul > "%ENV_FILE%"
if /i "%MODEL%"=="a" (
echo.
echo 配置 DeepSeek
echo 获取 API Key: https://platform.deepseek.com/
set /p APIKEY=" 请输入 DeepSeek API Key: "
echo OPENAI_API_KEY=!APIKEY!>> "%ENV_FILE%"
echo OPENAI_BASE_URL=https://api.deepseek.com/v1>> "%ENV_FILE%"
echo DeepSeek 已配置!
)
if /i "%MODEL%"=="b" (
echo.
echo 配置 Kimi
echo 获取 API Key: https://platform.moonshot.cn/
set /p APIKEY=" 请输入 Moonshot API Key: "
echo OPENAI_API_KEY=!APIKEY!>> "%ENV_FILE%"
echo OPENAI_BASE_URL=https://api.moonshot.cn/v1>> "%ENV_FILE%"
echo Kimi 已配置!
)
if /i "%MODEL%"=="c" (
echo.
echo 配置通义千问
echo 获取 API Key: https://dashscope.console.aliyun.com/
set /p APIKEY=" 请输入 Qwen API Key: "
echo ZAI_API_KEY=!APIKEY!>> "%ENV_FILE%"
echo 通义千问已配置!
)
pause
goto MENU
:CHINA_CHANNELS
echo.
echo === 配置中国聊天平台 ===
echo.
echo [a] 飞书 Feishu/Lark - 已内置,功能最全
echo [b] Telegram - 国内可用
echo.
echo 企业微信/钉钉/QQ 需要桥接服务,后续版本集成
echo.
set /p CH=" 请选择 (a-b): "
if not exist "%OPENCLAW_DIR%\node_modules" (
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" install --registry=https://registry.npmmirror.com
)
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" openclaw.mjs onboard
pause
goto MENU
:MIRROR
echo.
echo === 设置国内镜像源 ===
echo.
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" config set registry https://registry.npmmirror.com --location=project
echo npm 镜像已设置: registry.npmmirror.com
echo 后续 npm install 将自动使用淘宝镜像
pause
goto MENU
:DOCTOR
echo.
echo === 诊断修复 ===
echo.
if not exist "%OPENCLAW_DIR%\node_modules" (
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" install --registry=https://registry.npmmirror.com
)
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" openclaw.mjs doctor --repair
pause
goto MENU
:BACKUP
echo.
echo === 备份当前状态 ===
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_DIR=%UCLAW_DIR%backups\backup_%TIMESTAMP%"
mkdir "%BACKUP_DIR%" 2>nul
if exist "%OPENCLAW_DIR%\.env" (
copy "%OPENCLAW_DIR%\.env" "%BACKUP_DIR%\.env" >nul
echo [OK] .env 配置已备份
)
if exist "%USERPROFILE%\.openclaw\openclaw.json" (
mkdir "%BACKUP_DIR%\openclaw-state" 2>nul
copy "%USERPROFILE%\.openclaw\openclaw.json" "%BACKUP_DIR%\openclaw-state\" >nul
echo [OK] OpenClaw 状态已备份
)
if exist "%USERPROFILE%\.openclaw\credentials" (
xcopy "%USERPROFILE%\.openclaw\credentials" "%BACKUP_DIR%\openclaw-state\credentials\" /e /i /q >nul 2>&1
echo [OK] 凭据已备份
)
echo.
echo 备份完成! 位置: %BACKUP_DIR%
pause
goto MENU
:RESTORE
echo.
echo === 恢复备份 ===
echo.
set "BACKUP_BASE=%UCLAW_DIR%backups"
if not exist "%BACKUP_BASE%" (
echo 没有找到任何备份
pause
goto MENU
)
echo 可用备份:
dir /b "%BACKUP_BASE%" 2>nul
echo.
set /p RESTORE_NAME=" 输入备份名称: "
set "RESTORE_PATH=%BACKUP_BASE%\%RESTORE_NAME%"
if not exist "%RESTORE_PATH%" (
echo 备份不存在
pause
goto MENU
)
if exist "%RESTORE_PATH%\.env" (
copy "%RESTORE_PATH%\.env" "%OPENCLAW_DIR%\.env" >nul
echo [OK] .env 已恢复
)
if exist "%RESTORE_PATH%\openclaw-state" (
xcopy "%RESTORE_PATH%\openclaw-state" "%USERPROFILE%\.openclaw\" /e /i /q /y >nul 2>&1
echo [OK] OpenClaw 状态已恢复
)
echo.
echo 恢复完成!
pause
goto MENU
:RESET
echo.
echo === 重置 OpenClaw ===
echo.
echo [1] 仅重置配置(保留凭据)
echo [2] 重置配置+凭据+会话
echo [3] 完全重置(恢复出厂)
echo [0] 取消
echo.
set /p RESET_CHOICE=" 选择重置级别: "
if "%RESET_CHOICE%"=="0" goto MENU
if not exist "%OPENCLAW_DIR%\node_modules" (
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" install --registry=https://registry.npmmirror.com
)
cd /d "%OPENCLAW_DIR%"
if "%RESET_CHOICE%"=="1" "%NODE_BIN%" openclaw.mjs reset --scope config
if "%RESET_CHOICE%"=="2" "%NODE_BIN%" openclaw.mjs reset --scope config+creds+sessions
if "%RESET_CHOICE%"=="3" (
set /p CONFIRM=" 确定完全重置? 输入 YES 确认: "
if "!CONFIRM!"=="YES" "%NODE_BIN%" openclaw.mjs reset --scope full
)
pause
goto MENU
:CLEANUP
echo.
echo === 清理缓存 ===
echo.
"%NODE_BIN%" "%NPM_BIN%" cache clean --force 2>nul
echo npm 缓存已清理
if exist "%USERPROFILE%\.openclaw\logs" (
rmdir /s /q "%USERPROFILE%\.openclaw\logs" 2>nul
echo 日志已清理
)
echo.
echo 清理完成!
pause
goto MENU
:README
echo.
if exist "%UCLAW_DIR%使用说明.txt" (
type "%UCLAW_DIR%使用说明.txt"
) else (
echo 使用说明文件不存在
)
pause
goto MENU
:SYSINFO
echo.
echo === 系统信息 ===
echo.
echo 操作系统: %OS%
echo 处理器: %PROCESSOR_ARCHITECTURE%
echo Node.js: %NODE_VER%
echo U-Claw 路径: %UCLAW_DIR%
echo.
if exist "%USERPROFILE%\.uclaw" (
echo 已安装路径: %USERPROFILE%\.uclaw
) else (
echo 电脑安装: 未安装
)
if exist "%USERPROFILE%\.openclaw" (
echo OpenClaw 状态: %USERPROFILE%\.openclaw
)
echo.
pause
goto MENU
:EXIT
echo.
echo 再见!
echo.
exit /b 0

View File

@@ -0,0 +1,844 @@
#!/bin/bash
# ============================================================
# U-Claw 虾盘 - 启动菜单 (雨林木风风格)
# macOS 版本
# ============================================================
UCLAW_DIR="$(cd "$(dirname "$0")" && pwd)"
OPENCLAW_DIR="$UCLAW_DIR/openclaw"
# 颜色
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
CYAN='\033[0;36m'
BLUE='\033[0;34m'
MAGENTA='\033[0;35m'
WHITE='\033[1;37m'
GRAY='\033[0;37m'
NC='\033[0m'
BOLD='\033[1m'
DIM='\033[2m'
# 检测架构并设置 Node
ARCH=$(uname -m)
if [ "$ARCH" = "arm64" ]; then
NODE_DIR="$UCLAW_DIR/runtime/node-mac-arm64"
else
NODE_DIR="$UCLAW_DIR/runtime/node-mac-x64"
fi
NODE_BIN="$NODE_DIR/bin/node"
NPM_BIN="$NODE_DIR/bin/npm"
export PATH="$NODE_DIR/bin:$PATH"
# 检查安装状态
check_status() {
HAS_MODULES="no"
HAS_DIST="no"
HAS_ENV="no"
INSTALLED="no"
[ -d "$OPENCLAW_DIR/node_modules" ] && HAS_MODULES="yes"
[ -d "$OPENCLAW_DIR/dist" ] && HAS_DIST="yes"
[ -f "$OPENCLAW_DIR/.env" ] && HAS_ENV="yes"
[ -d "$HOME/.uclaw/openclaw" ] && INSTALLED="yes"
}
# 显示主菜单
show_menu() {
check_status
clear
echo ""
echo -e "${CYAN}${BOLD}"
echo " ╔════════════════════════════════════════════════════════╗"
echo " ║ ║"
echo " ║ 🦞 U-Claw 虾盘 v1.0 ║"
echo " ║ OpenClaw AI 助手 一键安装盘 ║"
echo " ║ ║"
echo " ║ 专为中国用户优化 · 免翻墙 · 离线安装 ║"
echo " ║ ║"
echo " ╠════════════════════════════════════════════════════════╣"
echo -e " ║${NC} ${CYAN}║"
# 状态栏
local STATUS_NODE="${GREEN}v$($NODE_BIN --version 2>/dev/null || echo '未找到')${NC}"
local STATUS_MOD="${RED}未安装${NC}"
local STATUS_BUILD="${RED}未构建${NC}"
local STATUS_INST="${RED}未安装${NC}"
[ "$HAS_MODULES" = "yes" ] && STATUS_MOD="${GREEN}已安装${NC}"
[ "$HAS_DIST" = "yes" ] && STATUS_BUILD="${GREEN}已构建${NC}"
[ "$INSTALLED" = "yes" ] && STATUS_INST="${GREEN}已安装${NC}"
echo -e " ${CYAN}║${NC} 系统: $(uname -m) | Node: $STATUS_NODE ${CYAN}║${NC}"
echo -e " ${CYAN}║${NC} 依赖: $STATUS_MOD | 构建: $STATUS_BUILD | 电脑安装: $STATUS_INST ${CYAN}║${NC}"
echo -e " ${CYAN}║${NC} ${CYAN}║${NC}"
echo -e " ${CYAN}╠════════════════════════════════════════════════════════╣${NC}"
echo ""
echo -e " ${WHITE}${BOLD} ━━━━ 安装 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""
echo -e " ${GREEN} [1]${NC} 🚀 一键安装 OpenClaw 到电脑(推荐)"
echo -e " ${GREEN} [2]${NC} 📦 仅安装依赖npm install"
echo -e " ${GREEN} [3]${NC} 🔨 仅构建项目npm build"
echo -e " ${GREEN} [4]${NC} ▶️ 直接从 U 盘运行(免安装)"
echo ""
echo -e " ${WHITE}${BOLD} ━━━━ 中国优化 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""
echo -e " ${YELLOW} [5]${NC} 🇨🇳 配置国产 AI 模型DeepSeek/Kimi/通义千问)"
echo -e " ${YELLOW} [6]${NC} 💬 配置中国聊天平台(飞书/钉钉)"
echo -e " ${YELLOW} [7]${NC} 🪞 设置国内镜像源"
echo ""
echo -e " ${WHITE}${BOLD} ━━━━ 维护工具 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""
echo -e " ${CYAN} [8]${NC} 🔧 诊断修复openclaw doctor"
echo -e " ${CYAN} [9]${NC} 💾 备份当前状态"
echo -e " ${CYAN} [10]${NC} 📂 恢复备份"
echo -e " ${CYAN} [11]${NC} 🔄 重置 OpenClaw恢复出厂"
echo -e " ${CYAN} [12]${NC} 🧹 清理缓存和临时文件"
echo ""
echo -e " ${WHITE}${BOLD} ━━━━ 技能 & 使用 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""
echo -e " ${BLUE} [13]${NC} 🎯 浏览预装技能52个已离线可用"
echo -e " ${BLUE} [14]${NC} 📖 中国用户快速上手指南"
echo ""
echo -e " ${WHITE}${BOLD} ━━━━ 其他 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
echo ""
echo -e " ${MAGENTA} [15]${NC} 📋 查看使用说明"
echo -e " ${MAGENTA} [16]${NC} 系统信息"
echo -e " ${DIM} [0]${NC} 退出"
echo ""
echo -e " ${CYAN}╚════════════════════════════════════════════════════════╝${NC}"
echo ""
}
# 确保依赖已安装
ensure_deps() {
if [ ! -d "$OPENCLAW_DIR/node_modules" ]; then
echo -e " ${YELLOW}正在安装依赖(淘宝镜像)...${NC}"
cd "$OPENCLAW_DIR"
"$NODE_BIN" "$NPM_BIN" install --registry=https://registry.npmmirror.com 2>&1
echo -e " ${GREEN}依赖安装完成${NC}"
fi
if [ ! -d "$OPENCLAW_DIR/dist" ]; then
echo -e " ${YELLOW}正在构建...${NC}"
cd "$OPENCLAW_DIR"
"$NODE_BIN" "$NPM_BIN" run build 2>&1 || true
echo -e " ${GREEN}构建完成${NC}"
fi
}
# [1] 一键安装到电脑
do_install() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 一键安装 OpenClaw 到电脑 ━━━${NC}"
echo ""
bash "$UCLAW_DIR/安装到电脑.command"
}
# [2] 安装依赖
do_npm_install() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 安装 npm 依赖 ━━━${NC}"
echo ""
cd "$OPENCLAW_DIR"
echo -e " ${YELLOW}使用淘宝镜像安装...${NC}"
"$NODE_BIN" "$NPM_BIN" install --registry=https://registry.npmmirror.com 2>&1
echo ""
echo -e " ${GREEN}依赖安装完成!${NC}"
}
# [3] 构建
do_build() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 构建 OpenClaw ━━━${NC}"
echo ""
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" "$NPM_BIN" run build 2>&1
echo ""
echo -e " ${GREEN}构建完成!${NC}"
}
# [4] 直接运行
do_run() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 从 U 盘启动 OpenClaw ━━━${NC}"
echo ""
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs onboard --install-daemon 2>&1 || \
"$NODE_BIN" openclaw.mjs 2>&1 || \
"$NODE_BIN" "$NPM_BIN" start 2>&1
}
# [5] 配置国产模型
do_china_models() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 配置国产 AI 模型 ━━━${NC}"
echo ""
echo -e " OpenClaw 已内置以下国产模型支持:"
echo ""
echo -e " ${GREEN}[a]${NC} DeepSeek深度求索 — 性价比最高,推荐首选"
echo -e " ${GREEN}[b]${NC} Kimi / 月之暗面 — 256K 超长上下文"
echo -e " ${GREEN}[c]${NC} 通义千问 Qwen — 阿里云,免费额度大"
echo -e " ${GREEN}[d]${NC} 智谱 GLM — 清华系,学术场景强"
echo -e " ${GREEN}[e]${NC} MiniMax — 语音和多模态"
echo -e " ${GREEN}[f]${NC} 豆包 Doubao字节跳动 — 火山引擎平台"
echo -e " ${GREEN}[g]${NC} 百度千帆 — 百度智能云"
echo -e " ${GREEN}[h]${NC} 小米 Mimo — 小米 AI"
echo ""
echo -e " ${YELLOW}请选择要配置的模型 (a-h):${NC} "
read -n 1 MODEL_CHOICE
echo ""
echo ""
ENV_FILE="$OPENCLAW_DIR/.env"
touch "$ENV_FILE"
case $MODEL_CHOICE in
a)
echo -e " ${CYAN}配置 DeepSeek${NC}"
echo " 获取 API Key: https://platform.deepseek.com/"
echo ""
read -p " 请输入 DeepSeek API Key: " API_KEY
if [ -n "$API_KEY" ]; then
grep -v "OPENAI_API_KEY\|OPENAI_BASE_URL" "$ENV_FILE" > "$ENV_FILE.tmp" 2>/dev/null || true
mv "$ENV_FILE.tmp" "$ENV_FILE"
echo "OPENAI_API_KEY=$API_KEY" >> "$ENV_FILE"
echo "OPENAI_BASE_URL=https://api.deepseek.com/v1" >> "$ENV_FILE"
echo -e " ${GREEN}DeepSeek 已配置!${NC}"
fi
;;
b)
echo -e " ${CYAN}配置 Kimi (月之暗面)${NC}"
echo " 获取 API Key: https://platform.moonshot.cn/"
echo ""
read -p " 请输入 Moonshot API Key: " API_KEY
if [ -n "$API_KEY" ]; then
grep -v "OPENAI_API_KEY\|OPENAI_BASE_URL" "$ENV_FILE" > "$ENV_FILE.tmp" 2>/dev/null || true
mv "$ENV_FILE.tmp" "$ENV_FILE"
echo "OPENAI_API_KEY=$API_KEY" >> "$ENV_FILE"
echo "OPENAI_BASE_URL=https://api.moonshot.cn/v1" >> "$ENV_FILE"
echo -e " ${GREEN}Kimi 已配置!${NC}"
fi
;;
c)
echo -e " ${CYAN}配置通义千问 Qwen${NC}"
echo " 获取 API Key: https://dashscope.console.aliyun.com/"
echo ""
read -p " 请输入 Qwen API Key: " API_KEY
if [ -n "$API_KEY" ]; then
grep -v "ZAI_API_KEY" "$ENV_FILE" > "$ENV_FILE.tmp" 2>/dev/null || true
mv "$ENV_FILE.tmp" "$ENV_FILE"
echo "ZAI_API_KEY=$API_KEY" >> "$ENV_FILE"
echo -e " ${GREEN}通义千问已配置!${NC}"
fi
;;
d)
echo -e " ${CYAN}配置智谱 GLM${NC}"
echo " 获取 API Key: https://open.bigmodel.cn/"
echo " 注意: 通过火山引擎(Volcano Engine)接入"
echo ""
read -p " 请输入 API Key: " API_KEY
if [ -n "$API_KEY" ]; then
echo "# 智谱GLM (via Volcano Engine)" >> "$ENV_FILE"
echo "VOLCENGINE_API_KEY=$API_KEY" >> "$ENV_FILE"
echo -e " ${GREEN}智谱 GLM 已配置!${NC}"
fi
;;
e)
echo -e " ${CYAN}配置 MiniMax${NC}"
echo " 获取 API Key: https://platform.minimaxi.com/"
echo ""
read -p " 请输入 MiniMax API Key: " API_KEY
if [ -n "$API_KEY" ]; then
grep -v "MINIMAX_API_KEY" "$ENV_FILE" > "$ENV_FILE.tmp" 2>/dev/null || true
mv "$ENV_FILE.tmp" "$ENV_FILE"
echo "MINIMAX_API_KEY=$API_KEY" >> "$ENV_FILE"
echo -e " ${GREEN}MiniMax 已配置!${NC}"
fi
;;
f)
echo -e " ${CYAN}配置豆包 Doubao (字节跳动)${NC}"
echo " 获取 API Key: https://console.volcengine.com/ark"
echo ""
read -p " 请输入火山引擎 API Key: " API_KEY
if [ -n "$API_KEY" ]; then
grep -v "VOLCENGINE_API_KEY" "$ENV_FILE" > "$ENV_FILE.tmp" 2>/dev/null || true
mv "$ENV_FILE.tmp" "$ENV_FILE"
echo "VOLCENGINE_API_KEY=$API_KEY" >> "$ENV_FILE"
echo -e " ${GREEN}豆包已配置!${NC}"
fi
;;
g)
echo -e " ${CYAN}配置百度千帆${NC}"
echo " 获取 API Key: https://console.bce.baidu.com/qianfan/"
echo ""
read -p " 请输入千帆 API Key: " API_KEY
if [ -n "$API_KEY" ]; then
echo "QIANFAN_API_KEY=$API_KEY" >> "$ENV_FILE"
echo -e " ${GREEN}百度千帆已配置!${NC}"
fi
;;
h)
echo -e " ${CYAN}配置小米 Mimo${NC}"
echo " 获取 API Key: https://dev.mi.com/mimo"
echo ""
read -p " 请输入 Mimo API Key: " API_KEY
if [ -n "$API_KEY" ]; then
echo "MIMO_API_KEY=$API_KEY" >> "$ENV_FILE"
echo -e " ${GREEN}小米 Mimo 已配置!${NC}"
fi
;;
*)
echo -e " ${YELLOW}无效选择${NC}"
;;
esac
}
# [6] 配置中国聊天平台
do_china_channels() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 配置中国聊天平台 ━━━${NC}"
echo ""
echo -e " OpenClaw 支持的聊天平台:"
echo ""
echo -e " ${WHITE}${BOLD} -- 国内平台 --${NC}"
echo -e " ${GREEN}[a]${NC} 飞书 Feishu/Lark — 已内置,企业首选"
echo -e " ${GREEN}[b]${NC} QQ腾讯官方${RED}★推荐${NC} — 3条命令1分钟免费免翻墙"
echo -e " ${GREEN}[c]${NC} 微信(社区插件) — iPad协议文字/图片/文件"
echo -e " ${GRAY}[d]${NC} 企业微信 WeCom — 后续集成"
echo -e " ${GRAY}[e]${NC} 钉钉 DingTalk — 后续集成"
echo ""
echo -e " ${WHITE}${BOLD} -- 国际平台 --${NC}"
echo -e " ${GREEN}[f]${NC} Telegram — 推荐,简单好用"
echo -e " ${GREEN}[g]${NC} Discord — 游戏/社区"
echo -e " ${GREEN}[h]${NC} WhatsApp — 海外用户"
echo -e " ${GREEN}[i]${NC} Slack — 外企用户"
echo ""
read -p " 请选择 (a-i): " -n 1 CH_CHOICE
echo ""
echo ""
case $CH_CHOICE in
a)
echo -e " ${CYAN}配置飞书 Feishu${NC}"
echo ""
echo " 飞书机器人配置步骤:"
echo " 1. 访问 https://open.feishu.cn/app 创建应用"
echo " 2. 获取 App ID 和 App Secret"
echo " 3. 配置事件订阅和权限"
echo ""
echo " 详细文档: openclaw/docs/channels/feishu.md"
echo ""
ensure_deps
cd "$OPENCLAW_DIR"
echo -e " ${YELLOW}启动 OpenClaw 配置向导...${NC}"
"$NODE_BIN" openclaw.mjs onboard 2>&1 || true
;;
b)
echo -e " ${CYAN}${BOLD}配置 QQ腾讯官方接入${NC}"
echo ""
echo -e " ${GREEN}${BOLD}这是国内最简单的 AI 助手接入方式!${NC}"
echo -e " ${GREEN}全程 1 分钟,完全免费,无需翻墙。${NC}"
echo ""
echo -e " ${WHITE}${BOLD}步骤:${NC}"
echo ""
echo " 1. 扫码注册 QQ 机器人:"
echo -e " ${CYAN}http://q.qq.com/qqbot/openclaw/login.html${NC}"
echo ""
echo " 2. 点击「创建机器人」,获取 AppID 和 AppSecret"
echo ""
echo " 3. 运行以下 3 条命令:"
echo ""
echo -e " ${GREEN}openclaw plugins install @sliverp/qqbot@latest${NC}"
echo -e " ${GREEN}openclaw channels add --channel qqbot --token \"AppID:AppSecret\"${NC}"
echo -e " ${GREEN}openclaw gateway restart${NC}"
echo ""
echo -e " ${RED}⚠️ 安全提醒:${NC}"
echo " 默认任何人都能访问你的机器人!接入后请设置白名单:"
echo -e " ${YELLOW}openclaw config set channels.qqbot.allowFrom \"你的QQ号\"${NC}"
echo ""
echo -e " ${DIM}备选方案: 也可以用 NapCatQQ (OneBot v11) 接入${NC}"
echo -e " ${DIM}https://github.com/NapNeko/NapCatQQ/releases${NC}"
echo ""
# 如果已安装 OpenClaw直接帮用户执行
if [ -d "$OPENCLAW_DIR/dist" ]; then
read -p " 是否现在安装 QQ 插件? (y/n) " -n 1 DO_QQ
echo ""
if [[ "$DO_QQ" =~ ^[Yy]$ ]]; then
cd "$OPENCLAW_DIR"
echo ""
echo -e " ${YELLOW}正在安装 QQ 插件...${NC}"
"$NODE_BIN" openclaw.mjs plugins install @sliverp/qqbot@latest 2>&1 || true
echo ""
read -p " 请输入你的 AppID:AppSecret: " QQ_TOKEN
if [ -n "$QQ_TOKEN" ]; then
"$NODE_BIN" openclaw.mjs channels add --channel qqbot --token "$QQ_TOKEN" 2>&1 || true
"$NODE_BIN" openclaw.mjs gateway restart 2>&1 || true
echo ""
echo -e " ${GREEN}QQ 机器人配置完成!${NC}"
echo -e " ${YELLOW}记得设置白名单!${NC}"
fi
fi
fi
;;
c)
echo -e " ${CYAN}配置微信(社区插件)${NC}"
echo ""
echo " 安装微信插件:"
echo " openclaw plugins install @icesword760/openclaw-wechat"
echo ""
echo " 基于 iPad 协议,支持:"
echo " - 文字消息"
echo " - 图片发送"
echo " - 文件传输"
echo " - 关键词触发对话"
echo ""
echo " 仓库: https://github.com/icesword0760/openclaw-wechat"
echo ""
ensure_deps
cd "$OPENCLAW_DIR"
echo -e " ${YELLOW}正在安装微信插件...${NC}"
"$NODE_BIN" openclaw.mjs plugins install @icesword760/openclaw-wechat 2>&1 || \
echo -e " ${YELLOW}安装失败,请手动安装${NC}"
;;
d|e)
echo -e " ${YELLOW}该平台正在开发中,敬请期待${NC}"
echo " 可关注 u-claw.org 获取最新进展"
;;
f)
echo -e " ${CYAN}配置 Telegram${NC}"
echo ""
echo " 步骤:"
echo " 1. 在 Telegram 中找 @BotFather"
echo " 2. 发送 /newbot 创建机器人"
echo " 3. 获取 Bot Token"
echo ""
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs onboard 2>&1 || true
;;
g)
echo -e " ${CYAN}配置 Discord${NC}"
echo ""
echo " 步骤:"
echo " 1. 访问 https://discord.com/developers/applications"
echo " 2. 创建 Application -> Bot"
echo " 3. 获取 Bot Token"
echo ""
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs onboard 2>&1 || true
;;
h|i)
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs onboard 2>&1 || true
;;
*)
echo -e " ${YELLOW}无效选择${NC}"
;;
esac
}
# [7] 设置国内镜像
do_mirror() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 设置国内镜像源 ━━━${NC}"
echo ""
# npm 镜像
echo -e " ${YELLOW}设置 npm 淘宝镜像...${NC}"
"$NODE_BIN" "$NPM_BIN" config set registry https://registry.npmmirror.com --location=project 2>/dev/null
cd "$OPENCLAW_DIR" 2>/dev/null
"$NODE_BIN" "$NPM_BIN" config set registry https://registry.npmmirror.com --location=project 2>/dev/null
echo -e " ${GREEN}npm 镜像已设置: registry.npmmirror.com${NC}"
# 创建 .npmrc
NPMRC="$OPENCLAW_DIR/.npmrc"
if ! grep -q "npmmirror" "$NPMRC" 2>/dev/null; then
echo "" >> "$NPMRC"
echo "registry=https://registry.npmmirror.com" >> "$NPMRC"
fi
echo ""
echo -e " ${GREEN}国内镜像配置完成!${NC}"
echo " 后续 npm install 将自动使用淘宝镜像"
}
# [8] 诊断修复
do_doctor() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 诊断修复 ━━━${NC}"
echo ""
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs doctor --repair 2>&1 || \
echo -e " ${YELLOW}如果 doctor 无法运行,请先完成安装步骤${NC}"
}
# [9] 备份
do_backup() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 备份当前状态 ━━━${NC}"
echo ""
BACKUP_DIR="$UCLAW_DIR/backups"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_NAME="backup_${TIMESTAMP}"
BACKUP_PATH="$BACKUP_DIR/$BACKUP_NAME"
mkdir -p "$BACKUP_PATH"
echo -e " ${YELLOW}备份中...${NC}"
# 备份配置
if [ -f "$OPENCLAW_DIR/.env" ]; then
cp "$OPENCLAW_DIR/.env" "$BACKUP_PATH/.env"
echo -e " ${GREEN} ✓ .env 配置${NC}"
fi
# 备份 OpenClaw 状态
if [ -d "$HOME/.openclaw" ]; then
mkdir -p "$BACKUP_PATH/openclaw-state"
cp -R "$HOME/.openclaw/openclaw.json" "$BACKUP_PATH/openclaw-state/" 2>/dev/null || true
cp -R "$HOME/.openclaw/credentials" "$BACKUP_PATH/openclaw-state/" 2>/dev/null || true
echo -e " ${GREEN} ✓ OpenClaw 状态和凭据${NC}"
fi
# 备份 U-Claw 用户数据
if [ -d "$UCLAW_DIR/memory" ] && [ "$(ls -A "$UCLAW_DIR/memory" 2>/dev/null)" ]; then
cp -R "$UCLAW_DIR/memory" "$BACKUP_PATH/"
echo -e " ${GREEN} ✓ 记忆文件${NC}"
fi
if [ -d "$UCLAW_DIR/persona" ] && [ "$(ls -A "$UCLAW_DIR/persona" 2>/dev/null)" ]; then
cp -R "$UCLAW_DIR/persona" "$BACKUP_PATH/"
echo -e " ${GREEN} ✓ 人格配置${NC}"
fi
# 备份已安装的版本
if [ -d "$HOME/.uclaw/openclaw" ]; then
cp "$HOME/.uclaw/openclaw/.env" "$BACKUP_PATH/installed-env" 2>/dev/null || true
echo -e " ${GREEN} ✓ 已安装版本配置${NC}"
fi
BACKUP_SIZE=$(du -sh "$BACKUP_PATH" | cut -f1)
echo ""
echo -e " ${GREEN}备份完成!${NC}"
echo " 位置: $BACKUP_PATH"
echo " 大小: $BACKUP_SIZE"
echo ""
# 显示所有备份
echo " 所有备份:"
ls -1 "$BACKUP_DIR" 2>/dev/null | while read -r b; do
echo " - $b"
done
}
# [10] 恢复备份
do_restore() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 恢复备份 ━━━${NC}"
echo ""
BACKUP_DIR="$UCLAW_DIR/backups"
if [ ! -d "$BACKUP_DIR" ] || [ -z "$(ls -A "$BACKUP_DIR" 2>/dev/null)" ]; then
echo -e " ${YELLOW}没有找到任何备份${NC}"
echo " 请先使用 [9] 创建备份"
return
fi
echo " 可用备份:"
echo ""
local i=1
for b in "$BACKUP_DIR"/*/; do
local bname=$(basename "$b")
local bsize=$(du -sh "$b" | cut -f1)
echo -e " ${GREEN}[$i]${NC} $bname ($bsize)"
i=$((i+1))
done
echo ""
read -p " 选择要恢复的备份编号: " RESTORE_NUM
local j=1
local RESTORE_PATH=""
for b in "$BACKUP_DIR"/*/; do
if [ "$j" = "$RESTORE_NUM" ]; then
RESTORE_PATH="$b"
break
fi
j=$((j+1))
done
if [ -z "$RESTORE_PATH" ]; then
echo -e " ${RED}无效选择${NC}"
return
fi
echo ""
echo -e " ${YELLOW}正在恢复 $(basename "$RESTORE_PATH")...${NC}"
# 恢复 .env
if [ -f "$RESTORE_PATH/.env" ]; then
cp "$RESTORE_PATH/.env" "$OPENCLAW_DIR/.env"
echo -e " ${GREEN} ✓ .env 已恢复${NC}"
fi
# 恢复 OpenClaw 状态
if [ -d "$RESTORE_PATH/openclaw-state" ]; then
mkdir -p "$HOME/.openclaw"
cp -R "$RESTORE_PATH/openclaw-state/"* "$HOME/.openclaw/" 2>/dev/null || true
echo -e " ${GREEN} ✓ OpenClaw 状态已恢复${NC}"
fi
# 恢复用户数据
if [ -d "$RESTORE_PATH/memory" ]; then
cp -R "$RESTORE_PATH/memory" "$UCLAW_DIR/"
echo -e " ${GREEN} ✓ 记忆文件已恢复${NC}"
fi
if [ -d "$RESTORE_PATH/persona" ]; then
cp -R "$RESTORE_PATH/persona" "$UCLAW_DIR/"
echo -e " ${GREEN} ✓ 人格配置已恢复${NC}"
fi
echo ""
echo -e " ${GREEN}恢复完成!${NC}"
}
# [11] 重置
do_reset() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 重置 OpenClaw ━━━${NC}"
echo ""
echo -e " ${RED}警告: 重置将清除配置和状态数据${NC}"
echo ""
echo -e " ${GREEN}[1]${NC} 仅重置配置(保留凭据和会话)"
echo -e " ${YELLOW}[2]${NC} 重置配置 + 凭据 + 会话(保留工作区)"
echo -e " ${RED}[3]${NC} 完全重置(恢复出厂状态)"
echo -e " ${DIM}[0]${NC} 取消"
echo ""
read -p " 选择重置级别: " -n 1 RESET_CHOICE
echo ""
case $RESET_CHOICE in
1)
echo ""
echo -e " ${YELLOW}建议先备份! 是否先创建备份? (y/n)${NC}"
read -n 1 DO_BACKUP
echo ""
[ "$DO_BACKUP" = "y" ] && do_backup
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs reset --scope config 2>&1 || true
;;
2)
echo ""
echo -e " ${YELLOW}建议先备份! 是否先创建备份? (y/n)${NC}"
read -n 1 DO_BACKUP
echo ""
[ "$DO_BACKUP" = "y" ] && do_backup
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs reset --scope config+creds+sessions 2>&1 || true
;;
3)
echo ""
echo -e " ${RED}确定要完全重置吗? 输入 YES 确认:${NC} "
read CONFIRM
if [ "$CONFIRM" = "YES" ]; then
do_backup
ensure_deps
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs reset --scope full 2>&1 || true
echo -e " ${GREEN}已恢复出厂状态${NC}"
else
echo " 已取消"
fi
;;
*)
echo " 已取消"
;;
esac
}
# [12] 清理
do_cleanup() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 清理缓存和临时文件 ━━━${NC}"
echo ""
FREED=0
# 清理 npm 缓存
echo -e " ${YELLOW}清理 npm 缓存...${NC}"
CACHE_SIZE=$("$NODE_BIN" "$NPM_BIN" cache ls 2>/dev/null | wc -l || echo 0)
"$NODE_BIN" "$NPM_BIN" cache clean --force 2>/dev/null || true
echo -e " ${GREEN} ✓ npm 缓存已清理${NC}"
# 清理 Node.js 编译缓存
if [ -d "$HOME/.cache/node" ]; then
NSIZE=$(du -sm "$HOME/.cache/node" 2>/dev/null | cut -f1)
rm -rf "$HOME/.cache/node"
echo -e " ${GREEN} ✓ Node 编译缓存已清理 (${NSIZE}MB)${NC}"
fi
# 清理 OpenClaw 日志
if [ -d "$HOME/.openclaw/logs" ]; then
LSIZE=$(du -sm "$HOME/.openclaw/logs" 2>/dev/null | cut -f1)
rm -rf "$HOME/.openclaw/logs"
echo -e " ${GREEN} ✓ 日志已清理 (${LSIZE:-0}MB)${NC}"
fi
echo ""
echo -e " ${GREEN}清理完成!${NC}"
}
# [13] 技能浏览器
do_skills_browser() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 预装技能浏览器52个已离线可用━━━${NC}"
echo ""
echo -e " ${WHITE}${BOLD} 效率 & 编程${NC}"
echo -e " ${GREEN} github${NC} GitHub 操作Issues/PR/代码审查/CI"
echo -e " ${GREEN} gh-issues${NC} 获取 Issues 并分配 Agent 修复"
echo -e " ${GREEN} coding-agent${NC} 委派编程任务给 Codex/Claude/Pi"
echo -e " ${GREEN} summarize${NC} 总结文本/网页/播客/视频"
echo -e " ${GREEN} nano-pdf${NC} 自然语言编辑 PDF"
echo -e " ${GREEN} clawhub${NC} 搜索安装更多社区技能"
echo -e " ${GREEN} skill-creator${NC} 创建自定义技能"
echo ""
echo -e " ${WHITE}${BOLD} 笔记 & 任务管理${NC}"
echo -e " ${GREEN} apple-notes${NC} Apple 备忘录(创建/搜索/编辑)"
echo -e " ${GREEN} apple-reminders${NC} Apple 提醒事项"
echo -e " ${GREEN} obsidian${NC} Obsidian 笔记操作"
echo -e " ${GREEN} notion${NC} Notion 页面和数据库"
echo -e " ${GREEN} things-mac${NC} Things 3 任务管理 (macOS)"
echo -e " ${GREEN} trello${NC} Trello 看板操作"
echo -e " ${GREEN} bear-notes${NC} Bear 笔记"
echo ""
echo -e " ${WHITE}${BOLD} AI & 创作${NC}"
echo -e " ${GREEN} openai-image-gen${NC} AI 图片生成"
echo -e " ${GREEN} openai-whisper${NC} 语音转文字(本地)"
echo -e " ${GREEN} openai-whisper-api${NC} 语音转文字API"
echo -e " ${GREEN} gemini${NC} Gemini 一键问答"
echo -e " ${GREEN} sag${NC} ElevenLabs 文字转语音"
echo -e " ${GREEN} sherpa-onnx-tts${NC} 本地离线文字转语音"
echo -e " ${GREEN} nano-banana-pro${NC} Gemini 3 图片生成"
echo ""
echo -e " ${WHITE}${BOLD} 通讯 & 社交${NC}"
echo -e " ${GREEN} himalaya${NC} 邮件收发IMAP/SMTP"
echo -e " ${GREEN} discord${NC} Discord 消息操作"
echo -e " ${GREEN} slack${NC} Slack 消息操作"
echo -e " ${GREEN} wacli${NC} WhatsApp 消息和历史"
echo -e " ${GREEN} imsg${NC} iMessage/SMS"
echo -e " ${GREEN} xurl${NC} X (Twitter) API"
echo ""
echo -e " ${WHITE}${BOLD} 系统 & 工具${NC}"
echo -e " ${GREEN} weather${NC} 天气查询"
echo -e " ${GREEN} peekaboo${NC} macOS 屏幕截图和 UI 自动化"
echo -e " ${GREEN} tmux${NC} 远程终端管理"
echo -e " ${GREEN} healthcheck${NC} 系统安全检查"
echo -e " ${GREEN} 1password${NC} 1Password 密码管理"
echo -e " ${GREEN} video-frames${NC} 视频截帧 (ffmpeg)"
echo -e " ${GREEN} session-logs${NC} 会话日志搜索分析"
echo -e " ${GREEN} mcporter${NC} MCP 服务管理"
echo ""
echo -e " ${WHITE}${BOLD} 智能家居 & IoT${NC}"
echo -e " ${GREEN} openhue${NC} Philips Hue 灯光控制"
echo -e " ${GREEN} sonoscli${NC} Sonos 音箱控制"
echo -e " ${GREEN} eightctl${NC} Eight Sleep 智能床垫"
echo -e " ${GREEN} camsnap${NC} 摄像头截图/录像"
echo ""
echo -e " ${DIM} 提示: 这些技能已全部预装在 U 盘中,无需联网下载${NC}"
echo -e " ${DIM} 使用: 在 OpenClaw 中直接说 \"帮我查天气\" 或 \"帮我发邮件\" 即可${NC}"
echo -e " ${DIM} 更多: 运行 openclaw 后输入 /skills 查看详情${NC}"
}
# [14] 中国用户指南
do_china_guide() {
echo ""
if [ -f "$UCLAW_DIR/中国用户指南.txt" ]; then
cat "$UCLAW_DIR/中国用户指南.txt"
else
echo " 指南文件不存在"
fi
}
# [15] 使用说明
do_readme() {
echo ""
if [ -f "$UCLAW_DIR/使用说明.txt" ]; then
cat "$UCLAW_DIR/使用说明.txt"
else
echo " 使用说明文件不存在"
fi
}
# [16] 系统信息
do_sysinfo() {
echo ""
echo -e " ${CYAN}${BOLD}━━━ 系统信息 ━━━${NC}"
echo ""
echo " 操作系统: $(sw_vers -productName 2>/dev/null || uname -s) $(sw_vers -productVersion 2>/dev/null || uname -r)"
echo " CPU架构: $(uname -m)"
echo " 内存: $(sysctl -n hw.memsize 2>/dev/null | awk '{printf "%.1f GB", $1/1024/1024/1024}' || echo '未知')"
echo " Node.js: $($NODE_BIN --version 2>/dev/null || echo '未找到')"
echo " npm: $($NODE_BIN $NPM_BIN --version 2>/dev/null || echo '未找到')"
echo ""
echo " U-Claw 路径: $UCLAW_DIR"
echo " U-Claw 大小: $(du -sh "$UCLAW_DIR" 2>/dev/null | cut -f1)"
echo ""
if [ -d "$HOME/.uclaw" ]; then
echo " 已安装路径: $HOME/.uclaw"
echo " 已安装大小: $(du -sh "$HOME/.uclaw" 2>/dev/null | cut -f1)"
else
echo " 电脑安装: 未安装"
fi
echo ""
if [ -d "$HOME/.openclaw" ]; then
echo " OpenClaw 状态: $HOME/.openclaw"
echo " 状态大小: $(du -sh "$HOME/.openclaw" 2>/dev/null | cut -f1)"
fi
echo ""
echo " 磁盘空间: $(df -h "$UCLAW_DIR" 2>/dev/null | tail -1 | awk '{print $4 " 可用 / " $2 " 总计"}')"
}
# 主循环
while true; do
show_menu
read -p " 请选择 [0-16]: " CHOICE
echo ""
case $CHOICE in
1) do_install ;;
2) do_npm_install ;;
3) do_build ;;
4) do_run ;;
5) do_china_models ;;
6) do_china_channels ;;
7) do_mirror ;;
8) do_doctor ;;
9) do_backup ;;
10) do_restore ;;
11) do_reset ;;
12) do_cleanup ;;
13) do_skills_browser ;;
14) do_china_guide ;;
15) do_readme ;;
16) do_sysinfo ;;
0)
echo -e " ${CYAN}再见! 🦞${NC}"
echo ""
exit 0
;;
*)
echo -e " ${RED}无效选择,请输入 0-14${NC}"
;;
esac
echo ""
read -p " 按回车键返回主菜单..."
done

View File

@@ -0,0 +1,88 @@
@echo off
chcp 65001 >nul 2>&1
title U-Claw - 安装 OpenClaw 到电脑
echo.
echo ╔══════════════════════════════════════╗
echo ║ U-Claw 安装到电脑 ║
echo ║ OpenClaw 永久安装 (Windows) ║
echo ╚══════════════════════════════════════╝
echo.
set "UCLAW_DIR=%~dp0"
set "INSTALL_DIR=%USERPROFILE%\.uclaw"
echo 安装位置: %INSTALL_DIR%
echo 安装内容: Node.js + OpenClaw + 所有依赖
echo.
set /p CONFIRM=" 是否继续安装? (y/n) "
if /i not "%CONFIRM%"=="y" (
echo 已取消安装
pause
exit /b 0
)
echo.
echo [1/4] 创建安装目录...
if not exist "%INSTALL_DIR%" mkdir "%INSTALL_DIR%"
echo [2/4] 安装 Node.js 运行环境...
if exist "%INSTALL_DIR%\node" rmdir /s /q "%INSTALL_DIR%\node"
xcopy "%UCLAW_DIR%runtime\node-win-x64" "%INSTALL_DIR%\node\" /e /i /q >nul
for /f "tokens=*" %%v in ('"%INSTALL_DIR%\node\node.exe" --version') do echo Node.js %%v 已安装
echo [3/4] 安装 OpenClaw...
if exist "%INSTALL_DIR%\openclaw" (
if exist "%INSTALL_DIR%\openclaw\.env" copy "%INSTALL_DIR%\openclaw\.env" "%TEMP%\.uclaw-env-backup" >nul 2>&1
rmdir /s /q "%INSTALL_DIR%\openclaw"
)
xcopy "%UCLAW_DIR%openclaw" "%INSTALL_DIR%\openclaw\" /e /i /q >nul
if exist "%TEMP%\.uclaw-env-backup" (
copy "%TEMP%\.uclaw-env-backup" "%INSTALL_DIR%\openclaw\.env" >nul 2>&1
del "%TEMP%\.uclaw-env-backup" >nul 2>&1
)
if exist "%UCLAW_DIR%memory" xcopy "%UCLAW_DIR%memory" "%INSTALL_DIR%\memory\" /e /i /q >nul 2>&1
if exist "%UCLAW_DIR%persona" xcopy "%UCLAW_DIR%persona" "%INSTALL_DIR%\persona\" /e /i /q >nul 2>&1
echo [4/4] 配置环境变量...
(
echo @echo off
echo set "UCLAW_HOME=%%USERPROFILE%%\.uclaw"
echo "%%UCLAW_HOME%%\node\node.exe" "%%UCLAW_HOME%%\openclaw\openclaw.mjs" %%*
) > "%INSTALL_DIR%\uclaw.cmd"
(
echo @echo off
echo set "UCLAW_HOME=%%USERPROFILE%%\.uclaw"
echo "%%UCLAW_HOME%%\node\node.exe" "%%UCLAW_HOME%%\openclaw\openclaw.mjs" %%*
) > "%INSTALL_DIR%\openclaw.cmd"
echo.
echo 正在添加到系统 PATH...
for /f "tokens=2*" %%a in ('reg query "HKCU\Environment" /v PATH 2^>nul') do set "CURRENT_PATH=%%b"
echo %CURRENT_PATH% | findstr /i ".uclaw" >nul 2>&1
if errorlevel 1 (
setx PATH "%INSTALL_DIR%;%INSTALL_DIR%\node;%CURRENT_PATH%" >nul 2>&1
echo 已添加到用户 PATH
) else (
echo PATH 已配置,跳过
)
echo.
echo ╔══════════════════════════════════════╗
echo ║ 安装完成! ║
echo ╚══════════════════════════════════════╝
echo.
echo 安装位置: %INSTALL_DIR%
echo.
echo 使用方法:
echo 1. 打开新的命令提示符或 PowerShell
echo 2. 运行: openclaw
echo 或: uclaw
echo.
echo 首次使用请运行:
echo openclaw onboard --install-daemon
echo.
pause

View File

@@ -0,0 +1,117 @@
#!/bin/bash
# ============================================================
# U-Claw 虾盘 - macOS 安装到电脑
# 将 OpenClaw 及运行环境永久安装到电脑上
# ============================================================
UCLAW_DIR="$(cd "$(dirname "$0")" && pwd)"
INSTALL_DIR="$HOME/.uclaw"
GREEN='\033[0;32m'
CYAN='\033[0;36m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m'
clear
echo ""
echo -e "${CYAN}"
echo " ╔══════════════════════════════════════╗"
echo " ║ U-Claw 安装到电脑 ║"
echo " ║ OpenClaw 永久安装 ║"
echo " ╚══════════════════════════════════════╝"
echo -e "${NC}"
echo ""
echo " 安装位置: $INSTALL_DIR"
echo " 安装内容: Node.js + OpenClaw + 所有依赖"
echo ""
read -p " 是否继续安装? (y/n) " -n 1 -r
echo ""
echo ""
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
echo " 已取消安装"
exit 0
fi
ARCH=$(uname -m)
if [ "$ARCH" = "arm64" ]; then
NODE_SRC="$UCLAW_DIR/runtime/node-mac-arm64"
echo -e " ${GREEN}Apple Silicon (M系列)${NC}"
else
NODE_SRC="$UCLAW_DIR/runtime/node-mac-x64"
echo -e " ${GREEN}Intel Mac${NC}"
fi
echo -e " ${CYAN}[1/4] 创建安装目录...${NC}"
mkdir -p "$INSTALL_DIR"
echo -e " ${CYAN}[2/4] 安装 Node.js 运行环境...${NC}"
rm -rf "$INSTALL_DIR/node"
cp -R "$NODE_SRC" "$INSTALL_DIR/node"
echo -e " ${GREEN}Node.js $($INSTALL_DIR/node/bin/node --version) 已安装${NC}"
echo -e " ${CYAN}[3/4] 安装 OpenClaw...${NC}"
if [ -d "$INSTALL_DIR/openclaw" ] && [ -f "$INSTALL_DIR/openclaw/.env" ]; then
cp "$INSTALL_DIR/openclaw/.env" "/tmp/.uclaw-env-backup" 2>/dev/null || true
fi
rm -rf "$INSTALL_DIR/openclaw"
cp -R "$UCLAW_DIR/openclaw" "$INSTALL_DIR/openclaw"
if [ -f "/tmp/.uclaw-env-backup" ]; then
cp "/tmp/.uclaw-env-backup" "$INSTALL_DIR/openclaw/.env"
rm -f "/tmp/.uclaw-env-backup"
fi
# 复制用户数据
[ -d "$UCLAW_DIR/memory" ] && [ "$(ls -A "$UCLAW_DIR/memory" 2>/dev/null)" ] && cp -R "$UCLAW_DIR/memory" "$INSTALL_DIR/"
[ -d "$UCLAW_DIR/persona" ] && [ "$(ls -A "$UCLAW_DIR/persona" 2>/dev/null)" ] && cp -R "$UCLAW_DIR/persona" "$INSTALL_DIR/"
echo -e " ${CYAN}[4/4] 配置环境变量...${NC}"
SHELL_RC="$HOME/.zshrc"
[ ! -f "$SHELL_RC" ] && SHELL_RC="$HOME/.bashrc"
[ ! -f "$SHELL_RC" ] && SHELL_RC="$HOME/.bash_profile"
if ! grep -q ".uclaw/node/bin" "$SHELL_RC" 2>/dev/null; then
echo "" >> "$SHELL_RC"
echo "# U-Claw OpenClaw" >> "$SHELL_RC"
echo 'export PATH="$HOME/.uclaw/node/bin:$PATH"' >> "$SHELL_RC"
echo "alias openclaw='\$HOME/.uclaw/node/bin/node \$HOME/.uclaw/openclaw/openclaw.mjs'" >> "$SHELL_RC"
echo -e " ${GREEN}已添加到 $SHELL_RC${NC}"
else
echo -e " ${YELLOW}PATH 已配置,跳过${NC}"
fi
# 创建全局命令
cat > "$INSTALL_DIR/uclaw" << 'SCRIPT'
#!/bin/bash
UCLAW_HOME="$HOME/.uclaw"
exec "$UCLAW_HOME/node/bin/node" "$UCLAW_HOME/openclaw/openclaw.mjs" "$@"
SCRIPT
chmod +x "$INSTALL_DIR/uclaw"
if [ -d "/usr/local/bin" ] && [ -w "/usr/local/bin" ]; then
ln -sf "$INSTALL_DIR/uclaw" /usr/local/bin/uclaw 2>/dev/null || true
ln -sf "$INSTALL_DIR/uclaw" /usr/local/bin/openclaw 2>/dev/null || true
echo -e " ${GREEN}已创建全局命令: uclaw / openclaw${NC}"
else
echo -e " ${YELLOW}提示: 运行 sudo ln -sf $INSTALL_DIR/uclaw /usr/local/bin/uclaw${NC}"
fi
echo ""
echo -e " ${GREEN}╔══════════════════════════════════════╗${NC}"
echo -e " ${GREEN}║ 安装完成! ║${NC}"
echo -e " ${GREEN}╚══════════════════════════════════════╝${NC}"
echo ""
echo " 安装位置: $INSTALL_DIR"
echo " Node.js: $($INSTALL_DIR/node/bin/node --version)"
echo ""
echo " 使用方法:"
echo " 1. 打开新的终端窗口"
echo " 2. 运行: openclaw"
echo " 或: uclaw"
echo ""
echo " 首次使用请运行:"
echo " openclaw onboard --install-daemon"
echo ""
read -p " 按回车键关闭..."

57
uclaw-scripts/运行.bat Normal file
View File

@@ -0,0 +1,57 @@
@echo off
chcp 65001 >nul 2>&1
title U-Claw 虾盘 - OpenClaw 一键启动
echo.
echo ╔══════════════════════════════════════╗
echo ║ U-Claw 虾盘 v1.0 ║
echo ║ OpenClaw 一键启动 (Windows) ║
echo ╚══════════════════════════════════════╝
echo.
set "UCLAW_DIR=%~dp0"
set "OPENCLAW_DIR=%UCLAW_DIR%openclaw"
set "NODE_DIR=%UCLAW_DIR%runtime\node-win-x64"
set "NODE_BIN=%NODE_DIR%\node.exe"
set "NPM_BIN=%NODE_DIR%\npm.cmd"
if not exist "%NODE_BIN%" (
echo [错误] 找不到 Node.js 运行环境
echo 请确保 runtime\node-win-x64 目录完整
echo.
pause
exit /b 1
)
for /f "tokens=*" %%v in ('"%NODE_BIN%" --version') do set NODE_VER=%%v
echo Node.js 版本: %NODE_VER%
echo.
set "PATH=%NODE_DIR%;%NODE_DIR%\node_modules\.bin;%PATH%"
if not exist "%OPENCLAW_DIR%\node_modules" (
echo 首次运行,正在安装依赖...
echo (使用淘宝镜像,请稍等)
echo.
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" install --registry=https://registry.npmmirror.com
echo.
echo 依赖安装完成!
echo.
)
if not exist "%OPENCLAW_DIR%\dist" (
echo 首次运行,正在构建...
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" "%NPM_BIN%" run build 2>nul
echo.
)
echo 正在启动 OpenClaw...
echo.
cd /d "%OPENCLAW_DIR%"
"%NODE_BIN%" openclaw.mjs onboard --install-daemon 2>nul || "%NODE_BIN%" openclaw.mjs 2>nul || "%NODE_BIN%" "%NPM_BIN%" start
echo.
echo OpenClaw 已退出
pause

View File

@@ -0,0 +1,82 @@
#!/bin/bash
# ============================================================
# U-Claw 虾盘 - macOS 一键启动
# 双击此文件即可启动 OpenClaw
# ============================================================
UCLAW_DIR="$(cd "$(dirname "$0")" && pwd)"
OPENCLAW_DIR="$UCLAW_DIR/openclaw"
GREEN='\033[0;32m'
CYAN='\033[0;36m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m'
clear
echo ""
echo -e "${CYAN}"
echo " ╔══════════════════════════════════════╗"
echo " ║ U-Claw 虾盘 v1.0 ║"
echo " ║ OpenClaw 一键启动 ║"
echo " ╚══════════════════════════════════════╝"
echo -e "${NC}"
# 检测 CPU 架构
ARCH=$(uname -m)
if [ "$ARCH" = "arm64" ]; then
NODE_DIR="$UCLAW_DIR/runtime/node-mac-arm64"
echo -e " ${GREEN}检测到 Apple Silicon (M系列芯片)${NC}"
else
NODE_DIR="$UCLAW_DIR/runtime/node-mac-x64"
echo -e " ${GREEN}检测到 Intel Mac${NC}"
fi
NODE_BIN="$NODE_DIR/bin/node"
NPM_BIN="$NODE_DIR/bin/npm"
if [ ! -f "$NODE_BIN" ]; then
echo -e " ${RED}错误: 找不到 Node.js 运行环境${NC}"
echo " 请确保 runtime/ 目录完整"
echo ""
read -p " 按回车键退出..."
exit 1
fi
NODE_VER=$("$NODE_BIN" --version)
echo -e " Node.js 版本: ${GREEN}${NODE_VER}${NC}"
echo ""
export PATH="$NODE_DIR/bin:$PATH"
# 检查依赖
if [ ! -d "$OPENCLAW_DIR/node_modules" ]; then
echo -e " ${YELLOW}首次运行,正在安装依赖...${NC}"
echo " (使用淘宝镜像,请稍等)"
echo ""
cd "$OPENCLAW_DIR"
"$NODE_BIN" "$NPM_BIN" install --registry=https://registry.npmmirror.com 2>&1
echo ""
echo -e " ${GREEN}依赖安装完成!${NC}"
echo ""
fi
# 检查构建
if [ ! -d "$OPENCLAW_DIR/dist" ]; then
echo -e " ${YELLOW}首次运行,正在构建...${NC}"
cd "$OPENCLAW_DIR"
"$NODE_BIN" "$NPM_BIN" run build 2>&1 || true
echo ""
fi
# 启动 OpenClaw
echo -e " ${CYAN}正在启动 OpenClaw...${NC}"
echo ""
cd "$OPENCLAW_DIR"
"$NODE_BIN" openclaw.mjs onboard --install-daemon 2>&1 || \
"$NODE_BIN" openclaw.mjs 2>&1 || \
"$NODE_BIN" "$NPM_BIN" start 2>&1
echo ""
echo -e " ${YELLOW}OpenClaw 已退出${NC}"
read -p " 按回车键关闭窗口..."