Update start-openclaw.sh
Browse files- start-openclaw.sh +43 -13
start-openclaw.sh
CHANGED
|
@@ -49,33 +49,63 @@ python3 /app/sync.py restore
|
|
| 49 |
# 3. 处理 API 地址
|
| 50 |
CLEAN_BASE=$(echo "$OPENAI_API_BASE" | sed "s|/chat/completions||g" | sed "s|/v1/|/v1|g" | sed "s|/v1$|/v1|g")
|
| 51 |
|
|
|
|
|
|
|
| 52 |
|
|
|
|
|
|
|
|
|
|
| 53 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 54 |
|
| 55 |
-
|
|
|
|
| 56 |
|
| 57 |
-
#
|
| 58 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 59 |
|
| 60 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 61 |
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
|
| 66 |
-
# 启用
|
| 67 |
#openclaw plugins install "@tencent-weixin/openclaw-weixin" --silent || true
|
| 68 |
-
|
| 69 |
-
|
|
|
|
|
|
|
|
|
|
| 70 |
|
| 71 |
-
|
| 72 |
-
|
|
|
|
|
|
|
| 73 |
npx -y @tencent-weixin/openclaw-weixin-cli@latest install
|
| 74 |
fi
|
| 75 |
|
| 76 |
-
echo "✅ 微信插件激活完成"
|
| 77 |
# ============================================================
|
| 78 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 79 |
# 5. 启动定时备份 (每 1 小时)
|
| 80 |
(while true; do sleep 3600; python3 /app/sync.py backup; done) &
|
| 81 |
|
|
|
|
| 49 |
# 3. 处理 API 地址
|
| 50 |
CLEAN_BASE=$(echo "$OPENAI_API_BASE" | sed "s|/chat/completions||g" | sed "s|/v1/|/v1|g" | sed "s|/v1$|/v1|g")
|
| 51 |
|
| 52 |
+
# ==================== 微信插件激活(三重严格检查版) ====================
|
| 53 |
+
echo "🔄 微信 ClawBot 激活流程..."
|
| 54 |
|
| 55 |
+
WEIXIN_DIR="/root/.openclaw/openclaw-weixin"
|
| 56 |
+
ACCOUNTS_DIR="${WEIXIN_DIR}/accounts"
|
| 57 |
+
CONFIG_FILE="/root/.openclaw/openclaw.json"
|
| 58 |
|
| 59 |
+
# 初始化三个检查条件
|
| 60 |
+
HAS_SRC=false
|
| 61 |
+
HAS_ACCOUNTS=false
|
| 62 |
+
HAS_CHANNEL_CONFIG=false
|
| 63 |
|
| 64 |
+
# 检查1:插件源代码是否存在
|
| 65 |
+
[[ -d "${WEIXIN_DIR}/src" ]] && HAS_SRC=true
|
| 66 |
|
| 67 |
+
# 检查2:登录账户文件夹是否存在且不为空
|
| 68 |
+
[[ -d "$ACCOUNTS_DIR" && -n "$(ls -A "$ACCOUNTS_DIR" 2>/dev/null)" ]] && HAS_ACCOUNTS=true
|
| 69 |
+
|
| 70 |
+
# 检查3:openclaw.json 中是否有微信通道配置
|
| 71 |
+
if [[ -f "$CONFIG_FILE" ]]; then
|
| 72 |
+
if grep -q "openclaw-weixin" "$CONFIG_FILE"; then
|
| 73 |
+
HAS_CHANNEL_CONFIG=true
|
| 74 |
+
fi
|
| 75 |
+
fi
|
| 76 |
|
| 77 |
+
# 输出检查结果(方便调试)
|
| 78 |
+
echo "检查结果:"
|
| 79 |
+
echo " - 插件代码 (src) : ${HAS_SRC}"
|
| 80 |
+
echo " - 登录账户 (accounts) : ${HAS_ACCOUNTS}"
|
| 81 |
+
echo " - 配置通道 (openclaw.json): ${HAS_CHANNEL_CONFIG}"
|
| 82 |
|
| 83 |
+
# 核心判断逻辑
|
| 84 |
+
if [[ "$HAS_SRC" == true && "$HAS_ACCOUNTS" == true && "$HAS_CHANNEL_CONFIG" == true ]]; then
|
| 85 |
+
echo "✅ 三个条件全部满足 → 执行快速激活(尽量不扫码)"
|
| 86 |
|
| 87 |
+
# 只做轻量启用,不重新安装
|
| 88 |
#openclaw plugins install "@tencent-weixin/openclaw-weixin" --silent || true
|
| 89 |
+
openclaw config set plugins.entries.openclaw-weixin.enabled true || true
|
| 90 |
+
openclaw channels enable openclaw-weixin 2>/dev/null || true
|
| 91 |
+
|
| 92 |
+
else
|
| 93 |
+
echo "⚠️ 三个条件未全部满足 → 执行完整重新安装(可能需要扫码)..."
|
| 94 |
|
| 95 |
+
# 先清理旧残留(防止残留导致问题)
|
| 96 |
+
rm -rf "${WEIXIN_DIR}" 2>/dev/null || true
|
| 97 |
+
|
| 98 |
+
# 执行完整安装
|
| 99 |
npx -y @tencent-weixin/openclaw-weixin-cli@latest install
|
| 100 |
fi
|
| 101 |
|
| 102 |
+
echo "✅ 微信插件激活流程完成"
|
| 103 |
# ============================================================
|
| 104 |
|
| 105 |
+
|
| 106 |
+
|
| 107 |
+
|
| 108 |
+
|
| 109 |
# 5. 启动定时备份 (每 1 小时)
|
| 110 |
(while true; do sleep 3600; python3 /app/sync.py backup; done) &
|
| 111 |
|