兩套 npm 前綴令互動 shell 與 LaunchDaemon PATH 分歧,doctor 綠燈但閘道載舊 node_modules。channel、npm prefix -g、daemon 環境與 openclaw.json 收斂到同一變更單後 probe。--container/Podman 與 doctor、Tailscale 閘道。
一、npm 切換與變更單
升級前列印 command -v npm、npm prefix -g 與 plist 的 PATH。brew Node 與 nvm 並存時:互動 shell 用 .nvmrc,常駐閘道寫死環境變數,避免載舊 ABI;變更單附兩段輸出比對 digest。
npm ls -g --depth=0。二、陳舊安裝清理
殘留常見於 ~/.npm、舊全域 node_modules、手動 dist。凍結設定與 lock → 刪 node_modules → npm ci → 冷啟;附 digest 便重播。brew/npm 全域並列請在工單分開註記。
三、beta 與 stable fallback
beta預演 ABI,prod 須一鍵回 stable:雙 digest、設定檔切 channel;fallback 寫清 minGatewayVersion 或 tools/list 缺欄。維護窗勿同動 channel 與 plugins.entries。
四、probe 與 doctor
loopback → tailnet →(必要)公網 TLS probe;SNI/token 對齊;失敗分 DNS、憑證、上游、外掛逾時,附 curl/openssl s_client。doctor 綁設定、環境、日誌;對照 Node、manifest、OPENCLAW_*;衝突以實際載入順序為準再冷啟截圖。
五、高記憶體 Mac 分流
重索引、embedding、重編譯、大型沙箱放高記憶體遠端 Mac;webhook/控制面留輕閘道;規則寫標籤並看 swap/vm_stat。跨機只同步 digest 與 lock,勿複製整樹 node_modules。
在 Mac mini 上跑通 2026.5.x
macOS 上 Homebrew、LaunchDaemon、SSH 與本文流程銜接順;Apple Silicon 統一記憶體利於大外掛;Gatekeeper、SIP、FileVault 收斂無人值守面。Mac mini M4 待機約 4W、體積小、噪音低,適合閘道。規格見 Macstripe 首頁;現在即可把閘道與外掛鏈跑在靜音硬體上。