2026年 OpenClaw 遠端 Mac 雙機拓撲實戰:
CALMVPS Gateway、本地 macOS Remote 與 18789 隧道排錯

不少團隊已在本地 Mac跑通 OpenClaw,上線後卻卡在另一組問題:Gateway 需要 7×24 掛在機房級裸金屬,而 Canvas、螢幕錄製、相機與 system.run 又必須留在具備 TCC 授權的本地 Mac。2026 年官方 macOS 文件將此路線定義為 Remote 模式——遠端只跑 Gateway,本地啟動 node host,控制面經 SSH 隧道或 Tailscale 走預設 18789 連接埠。本文整理可重現的雙機拓撲、對照決策表、六步接入流程與報錯速查,機型與節點以 CALMVPS 定價頁為準。

讀完你應能回答三件事:① 你的場景該維持 Local 單機還是切換 Remote 雙機;② Gateway 應放在哪個 CALMVPS 區域、本地 App 如何切 Remote 並拉起 node host;③ 隧道失敗、18789 被占用,或 Gateway 顯示 node IP 為 127.0.0.1 時,優先執行哪幾條指令。

01 雙機拓撲要解決的生產痛點

把「所有能力堆在同一台 Mac」在示範環境很順手,進入生產後常見三類隱性成本:

  • 算力與權限綁死:Gateway 長連線、Cron 與多頻道工作階段消耗 CPU/記憶體;本機同時要開螢幕錄製與自動化,16GB 機型在夜間批次任務時容易發生交換,TCC 提示還會打斷無人值守流程。
  • 網路出口不可控:家用寬頻或辦公室 NAT 對 WebSocket 長連線不友善,頻道離線常被誤判為「模型故障」,排錯方向一開始就偏了。
  • 維運邊界模糊:本地睡眠、系統更新、Spotlight 索引與 launchd 守護疊在一起,很難區分是 Gateway 掛了,還是 macOS 把程序暫停了。

Remote 雙機拓撲的核心收益是職責拆分:遠端裸金屬 Mac(例如 CALMVPS 香港、新加坡、美西節點)承擔 Gateway、頻道與排程;本地 Mac僅作帶 UI/TCC 的 Node,透過 node host 把 Canvas、Camera、Screen 與 system.run 暴露給遠端 Gateway。控制面仍走 18789,由 macOS App 自動維護 SSH 控制隧道,不必手寫大量連接埠轉發腳本。

選型口訣:「Gateway 上雲、Node 留本地、控制面只走 18789」——先把拓撲畫清楚,再談 M4 檔位與租期。

02 Local 單機與 Remote 雙機決策矩陣

並非每個團隊都需要立刻上雙機。下面用對照表把「繼續 Local」與「切換 Remote」的邊界說清楚,便於評審會一次對齊。

OpenClaw Local 單機 vs Remote 雙機(2026 生產視角)
維度 Local(Gateway 在本機) Remote(Gateway 在 CALMVPS 裸金屬)
適用階段 個人驗證、單頻道 Bot 7×24 頻道、多 Agent、跨時區 Cron
本機職責 Gateway + Node 一體 僅 Node(TCC、Canvas、system.run)
遠端職責 Gateway、launchd 常駐、日誌落盤
控制面接入 127.0.0.1:18789 直連 SSH -L 或 Tailscale MagicDNS + App 隧道
典型風險 睡眠/更新中斷、記憶體爭用 隧道健康、版本不對齊、Token 不同步
建議租期 自有裝置即可 Gateway 節點月/季租;本地無需增購

若你還需要多區域 Hub-and-Spoke(Gateway 在使用者密集區、Worker 在次密集區),Remote 雙機是前置條件;區域對照可參考站內 OpenClaw 遠端 Mac 節點選型文,本文聚焦「一台遠端 Gateway + 一台本地 Node」的最小可生產拓撲。

03 在 CALMVPS 裸金屬上部署 Gateway

遠端節點建議選與使用者/頻道出口最近的 CALMVPS 區域(香港、日本、韓國、新加坡、美東、美西),Gateway 僅監聽 loopback,由 SSH 或 Tailscale 暴露控制面,避免把 Web UI 直接綁定公網。安裝指令以 OpenClaw 官方安裝腳本為準(發版後請再次開啟連結核對):

https://openclaw.ai/install.sh

macOS 平台說明(Local/Remote 模式、launchd 標籤 ai.openclaw.gateway)見官方文件:

https://docs.openclaw.ai/platforms/macos

REMOTE_GATEWAY_SETUP.SH
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard --install-daemon
openclaw gateway status
launchctl kickstart -k gui/$UID/ai.openclaw.gateway
  • Node 執行環境:官方建議以 Node 作為 Gateway 執行環境;裸金屬上請固定主版本,避免 launchd 與互動式 shell 各用一套 Node。
  • 狀態目錄:勿將 OPENCLAW_STATE_DIR 放在 iCloud 同步路徑;建議 ~/.openclaw,與 openclaw doctor 告警一致。
  • 磁碟預留:日誌、Cron 歷史與 Memory 落盤會持續成長;生產 Gateway 建議至少預留 80GB 專用於 OpenClaw 目錄,必要時選 1TB/2TB 檔位,或以並聯資源拆佇列。

04 本地 macOS App 切換 Remote 與 SSH/Tailscale 六步

本地 Mac 安裝 OpenClaw.app 並完成 TCC 權限清單後,依下列六步切換 Remote 模式(行為描述依官方 macOS 文件,版本升級後請以文件為準):

  1. 確認遠端 Gateway 健康:在 CALMVPS 節點執行 openclaw gateway status,確保 18789 在 loopback 可探活。
  2. 準備 SSH 免密或金鑰:本地 App 建立控制隧道時使用 BatchMode;為維運帳號設定金鑰登入,避免互動式密碼導致隧道半啟動。
  3. (可選)接入 Tailscale:若團隊已在 tailnet 內,優先以 MagicDNS 主機名稱發現 Gateway,tailnet IP 變動時比裸 IP 更穩定。
  4. App 內切換 Remote 模式:在 OpenClaw.app 選擇 Remote,填入遠端主機;App 會複用或重建 ssh -N -L 18789:127.0.0.1:18789 形態的控制隧道,不在本機 spawn Gateway 子程序。
  5. 啟動本地 node host:Remote 模式下 App 會啟動 node host 服務,使遠端 Gateway 能呼叫本機 Canvas、Camera、Screen 與 system.run(經 App 內 Exec approvals 策略)。
  6. 以除錯 CLI 對照:在本地倉庫 apps/macos 下可執行 swift run openclaw-mac connect --jsondiscover --timeout 3000 --json,與 App 同一套發現/握手邏輯對拍,快速區分「隧道問題」或「Gateway 設定問題」。

macOS 遠端存取專題(Direct ws/wss 與真實用戶端 IP 上報)見:

https://docs.openclaw.ai/platforms/mac/remote

CONTROL_TUNNEL_MANUAL.SH
ssh -N -L 18789:127.0.0.1:18789 user@your-calmvps-node
curl -fsS http://127.0.0.1:18789/healthz

經 SSH 隧道接入時,Gateway 側 node IP 可能顯示 127.0.0.1,屬預期行為;若需真實 IP,請改採 Direct ws/wss(見 remote 文件)。

05 18789 控制隧道與常見報錯速查

雙機拓撲裡,多數「連不上」集中在控制隧道與版本對齊,而非模型供應商。下面整理可引用的硬參數與報錯對照。

  • 預設 Gateway WebSocket 連接埠:18789(官方 macOS 遠端連線說明);控制隧道本地連接埠與遠端保持一致,App 會複用健康隧道而非隨機本地連接埠。
  • LaunchAgent 標籤:ai.openclaw.gateway(使用 OPENCLAW_PROFILE 時為 ai.openclaw.<profile>);排錯可用 launchctl kickstart -k gui/$UID/ai.openclaw.gateway
  • Exec approvals 路徑:本地 system.run 策略位於 ~/.openclaw/exec-approvals.json,與遠端 Gateway 設定分離,遷移節點時勿漏備份。
Remote 雙機常見現象與首選處理
現象 優先檢查 首選修復
App 顯示 Gateway 不可達 SSH 隧道是否存活、18789 是否被占用 重啟 App 隧道;遠端 lsof -i :18789 查衝突
健康檢查 OK 但頻道離線 Gateway 與 CLI/App 版本是否一致 兩端 openclaw --version 對齊後重啟 Gateway
node IP 始終 127.0.0.1 是否經 SSH 隧道接入 預期行為;需真實 IP 時改 Direct ws/wss
Canvas/相機無回應 本地 node host 是否執行、TCC 是否授予 Remote 模式下確認 node host;重走權限清單
Tailscale 發現失敗 MagicDNS 是否啟用、主機名稱是否變更 以 MagicDNS 名稱重設;避免寫死 tailnet IP

實務案例:某 iOS 團隊將 Gateway 與 Discord/Telegram 頻道放在 CALMVPS 新加坡節點(月租 M4 24GB),本地 MacBook Pro 僅作 Node 執行 screen.record 與 Xcode 旁路腳本;尖峰以並聯資源加一台週租 Worker 跑批次建置,Gateway 不動,頻道工作階段不中斷。此拆法比「本地單機扛一切」更少夜間告警。

06 M4 檔位、儲存、租期與採購清單

雙機拓撲下,資源配置要依角色而非「整機一刀切」:

  • 遠端 Gateway(CALMVPS):多頻道 + Cron 建議 M4 24GB 起;Hub 節點或本地模型兜底選 M4 Pro;磁碟 1TB 驗證、2TB 生產較省心。
  • 本地 Node Mac:以 TCC 與 UI 工具為主,16GB 通常足夠;瓶頸多在權限與網路,而非 Gateway 算力。
  • 並聯資源:一次性資料回灌或平行建置用日/週租 Worker,避免抬升 Hub 檔位。
  • 租期組合:Gateway 節點月/季租鎖算力,脈衝任務用日/週租並聯,總成本往往低於單機頂配長線租用。

把 Gateway 留在個人筆電或家用 NAS 上,常見短板是長連線抖動、睡眠中斷與無法稽核的 Token 混用;純雲端 Linux VPS 又缺少 macOS TCC 與 Apple 工具鏈,Remote 雙機裡的「本地 Node」無法取代。對需要穩定 18789 控制面、跨區域裸金屬與可重現排錯的團隊,CALMVPS 多區域裸金屬 Mac更適合作為 Gateway 宿主:獨佔 Apple Silicon、7×24 在線、約 120 秒交付,搭配 M4 Pro 與並聯資源可在不升檔的前提下吸收頻道與工作階段尖峰。採購與節點列表見 CALMVPS 定價頁