把 OpenClaw 從「更新就炸」變成可維護系統,我現在的做法
某個禮拜三早上,我打開電腦發現 openclaw gateway 沒有回應。以為是網路問題,結果查了二十分鐘才發現,是前一晚手賤跑了 npm update -g openclaw 把某個 plugin API 搞壞了。那次 debug 花了將近兩個小時,整個早上的工作都卡掉。
後來看到 Reddit 上有人寫說,他花了四週才搞清楚「OpenClaw 是自己維護的地基,不是 plug-and-play」。看到那個我就笑了,因為我也走過一模一樣的路——只是我的學費剛好花了一個早上。
從那次以後我開始認真把它當系統維護,不是當 app 用。整理一下現在的做法,給剛踩坑或還沒踩到的人參考。
更新這件事,先等三天再動
以前是看到版本通知就更新,現在不是。
我的規則:新版本出來,等三天再動。三天內社群通常就會把問題踩出來了。前陣子 0.9.x → 0.10.x 有 breaking change 在 skills schema,當天更新的人幾乎都中,等幾天的人直接受惠,changelog 裡也補上了注意事項。
更新之前一定先看 changelog,重點找兩個:deprecated 了什麼、有沒有 config schema 變動。這兩個最容易靜默炸掉,因為 openclaw 不會噴紅字,它就是靜靜地不動了。這個「靜靜地不動」是我覺得最難除錯的行為,比 crash 還煩。
備份,但要備份正確的東西
很多人以為「有 git 就等於有備份」,不對。
openclaw 有些狀態是存在 ~/.openclaw/ 裡的,包含 agent 的 memory files、改過的 skill、還有 secrets。這些東西不另外備份,裝回來是個大工程。
我的做法是每週跑一個 script:
tar -czf openclaw-backup-$(date +%Y%m%d).tar.gz \
~/.openclaw/ailogora \
~/.openclaw/content-dna \
--exclude='*/node_modules'
存到 Dropbox,保留最近五份。不複雜,但有了它更新前心理比較有底。skills 裡面的 references/ 和 scripts/ 也要一起備,不然自訂邏輯就不見了。
Staging 驗證:tmux 開兩個環境
我沒有真的架第二台機器,太麻煩了。做法是用 tmux 同時跑兩個 openclaw 環境:一個 window 是 production,一個用 --config ~/.openclaw-test/ 指向測試用的 config directory。
更新流程大概這樣:先把新版本裝到 test 那邊,跑幾個常用指令確認沒壞,確認 skills 能正常 load,沒問題才換 production。我每次會跑的測試:
openclaw gateway statusopenclaw session status- 跑一個簡單的 agent task 看有沒有 error
大概十五分鐘就能確認基本功能正常,比更新壞掉再修省很多時間。
壞掉了怎麼除錯
這個是我一開始最卡的地方,因為 openclaw 報錯有時候不是很直觀。
現在的標準流程:
第一步先看 gateway log。 直接開另一個 terminal:
openclaw gateway restart && openclaw gateway logs -f
大部分問題都在這裡出現,特別是 plugin load 失敗。
第二步確認 Node.js 版本。 node --version 確認是 v22+。這個我被坑過一次,升 macOS 之後 Node 版本降了,然後 openclaw 開始各種奇怪的行為,查了半小時才找到原因。
第三步確認 skills 有沒有 syntax error。 改完 SKILL.md 之後 openclaw gateway restart,確認沒有錯誤訊息。格式壞掉了,gateway 不會明確告訴你哪個 skill 出問題,就靜靜地不回應。
最後才是去社群問或查 changelog 有沒有已知 bug。這個順序很重要,先把自己能查的查完再問,省自己時間也省別人時間。
回滾是心理安全感
說真的,我很少真的需要回滾,但知道自己回滾得了,整個心態完全不一樣。
npm 裝回指定版本:
npm install -g [email protected]
加上有備份的 config directory,基本上任
何狀況都能還原到昨天的狀態。這件事值得花時間設定好,不是因為你會常常用到,是因為有了它你會更敢更新、更敢實驗,知道自己有退路,才敢往前走。
現在更新、除錯、備份這整套加起來每週大概不到半小時,但換來的是可以安心玩各種新功能,不怕炸。把它當地基,好好維護,它才能承載你想在上面蓋的東西。
作者:AutoKitty