360 Secure SkillHub
360 安全技能中心

Gateway Upgrade Local Fork

覆盖 OpenClaw 网关本地 fork 升级的备份、升级、环境变量合并、验证与回滚五个阶段,重点处理 systemd 升级后用户自定义环境变量丢失、qmd 索引并发重建争用与 GPU 加速检查,并附带备份、diff、串行重建与报告脚本。

axelhu
axelhu
热度 16.25
最近更新 2026-06-05 10:43:18
分类:开发依赖:代码执行 / 读写文件应用场景:DevOps / 自动化脚本 / 工作流 / 模板

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add gateway-upgrade-local-fork
Metadata
name
gateway-upgrade-local-fork
version
0.3.0
description
OpenClaw 网关服务本地 fork 升级 skill。覆盖 backup → upgrade → env-merge → verify 全流程。专门处理 OpenClaw systemd service 升级时丢失 user 自定义环境变量(CUDA / LD_LIBRARY_PATH / QMD_EMBED_MODEL)的问题,跑 qmd doctor 检查 RTX 30/40 系 GPU 加速状态,串行重建 per-agent qmd 索引避免 batch embed lock 争用。No data forwarded; all operations are local service+db manipulation only.
metadata
{"openclaw":{"emoji":"⬆️","requires":{"anyBins":["systemctl","sqlite3","node"]}}}

OpenClaw Upgrade

升级 OpenClaw 主程序端到端 skill。大方向按 5 阶段跑:

  1. Pre-flight — 体检当前状态,建立 baseline
  2. Backup — 完整回滚点
  3. Upgrade — 跑升级 + 合并 user env
  4. Post-flight — diff env,确认没漏
  5. Verify — 健康检查 + 修复

详细流程 → 各自 references 文档。

阶段 文档 关键点
0. Pre-flight references/01-preflight.md service unit .bak + qmd doctor baseline + GPU 状态
1. Backup references/02-backup.md binary + service + dbs(核心:env 备份)
2. Upgrade references/03-upgrade.md 跑升级 + 手动合并 user env(关键)
3. Post-flight references/04-postflight.md diff env 找丢失的 + Description 跟 version 一致
4. Verify references/05-verify.md qmd doctor + memory_search + per agent serial rebuild
紧急回滚 references/06-rollback.md 完全跑不起来的回滚步骤
注意事项 references/80-notes.md 一些容易踩的点(不是 silent failure 之王)

辅助脚本

脚本 用途
scripts/backup-env.sh 一键备份 service unit + binary + per agent dbs
scripts/diff-env.sh diff 当前 service 跟 .bak,列丢失的 user env
scripts/qmd-rebuild-serial.sh 串行重建 per agent qmd index(不并发)
scripts/upgrade-report.sh 输出升级报告模板

核心原则(记住这 5 条就够了)

  1. 先备份再动手 — 任何升级前必须有可回滚点
  2. env 是最容易丢的 — service unit 升级时不保留 user 自定义 env
  3. service 跟 user shell GPU 资源不同 — LD_LIBRARY_PATH / CUDA_HOME 必须显式设
  4. per agent rebuild 不要并发 — 抢 batch embed lock + GPU = timeout 砍
  5. 大版本升级前看 changelog — qmd 跳 0.1.x → 2.0 / 2.5 是 silent ABI mismatch 高发期

触发场景

  • user 喊"升级 OpenClaw" / "5.28 → 6.0" / "升级 5.28"
  • 5.28 service 跑得不对劲(memory_search 报错 / agent timeout)
  • qmd 报错 ABI mismatch / Dimension mismatch / better_sqlite3.node 找不到
  • service unit 升级后 user 自定义 env 丢失
  • nvidia-smi 找不到但实际 GPU 在(WSL2 误判)