AI / 自動化 2026年5月21日

2026-05-21 OpenClaw 內建 cron隔離工作階段按任務 Webhook 交付閘道重啟錯峰——無頭租用 Apple Silicon 雲端 Mac(香港 / 東京 / 首爾 / 新加坡 / 美國

MacXCode 技術團隊 2026年5月21日 約 18 分鐘閱讀

香港、東京、首爾、新加坡、美國租用Mac mini M4並以無頭 SSH執行 OpenClaw 的團隊,常從被動對話演進到定時自動化:夜間倉庫摘要、站會材料、憑證到期掃描,以及將 CI 失敗分診結果推到 Slack 或內部 Webhook。OpenClaw 的內建 cron執行於閘道程序內,把任務持久化到 ~/.openclaw/cron/jobs.json,並可在隔離工作階段主工作階段心跳上喚醒智慧代理。本篇 2026-05-21 長文先給出策略:重工具鏈背景任務用隔離 cron,輕量提醒保留主工作階段 cron,排程至少錯開 2–5 分鐘按任務 Webhook POST 必須走 TLS 與共用金鑰——切勿在共用租機上使用明文 HTTP。正文提供工作階段決策矩陣排程 + Webhook 表閘道重啟錯峰說明、八步上線與排障表,並與《Node 24 + launchd + doctor》《launchd cron 基線》《MCP 工具策略》互相引用。

誰需要在租用無頭 Mac 上使用 OpenClaw 閘道 cron

僅靠 macOS launchd 可觸發 shell,但無法依智慧代理情境、模型路由或通道投遞來編排工作。OpenClaw cron 補齊這一層:排程與閘道同生共死,jobs.json 完好時可在重啟後恢復,輸出可進聊天通道或 HTTP 端點。在租用主機上,典型故障是維運層面的——部署後五個任務擠在同一分鐘、閘道恢復時逾期任務齊射,或 Webhook 仍指向會改寫正式工單的預發位址。

  • 平台 SRE 希望夜間摘要以 JSON POST 到內網收集器,而不必再養一台獨立排程 VM。
  • 工程主管 需要在靠近亞太倉庫的東京或新加坡節點上,用 ripgrep 與工單系統產生站會材料。
  • 資安負責人 要求隔離工作階段,避免 cron 提示詞繼承人工主工作階段裡已核准的高風險工具。

可從 MacXCode 首頁 的區域地圖入手:把閘道放在 Webhook 到 VPC 往返延遲最低的位置,並文件化哪些任務允許寫入工具、哪些僅允許唯讀摘要。

隔離工作階段、主工作階段與命名 cron 目標

OpenClaw cron 可指向不同執行情境。隔離工作階段會拉起專用的 cron 代理輪次,適合呼叫檔案工具、MCP 或 shell 包裝器的報告類任務。主工作階段任務掛在下一次心跳輪次,適合不必 fork 重工具鏈的輕量提醒。命名自訂工作階段適合需要跨多次執行累積情境的流程(例如週報維運日誌)。選錯目標會導致無輸出(部分版本的隔離派送缺陷)或污染人工聊天執行緒。

目標 適用情境 避免情形 租用注意
隔離工作階段 夜間摘要、MCP 重度掃描 需要即時在同一聊天執行緒回覆 單機 M4 上並行隔離任務 ≤ 2
主工作階段 + 心跳 提醒、行事曆輕推 任務會呼叫 xcodebuild 或大規模 ripgrep 提示詞輸入控制在約 2k token
命名持久工作階段 跨週維運日誌 法遵要求情境必須 ephemeral 每週快照 OPENCLAW_STATE_DIR
數值護欄:相鄰任務的 --cron 表達式應錯開2–5 分鐘;同時開始的模型洪峰常會觸發 429,詳見《API 背壓與重試》。

排程類型、Webhook 與交付矩陣

閘道 cron 支援三種排程:--at(一次性 ISO 或相對時間如 20m)、--every(固定間隔)與 --cron(5/6 欄位表達式,可帶 IANA 時區)。一次性任務成功後常會自刪——若需稽核軌跡,請先確認該行為。按任務的 Webhook 交付(2026.2.x+)會把執行摘要 POST 到 HTTPS 端點;請與入站 OpenClaw Webhook 使用相同的 TLS 與 HMAC 約定。

排程 範例 交付 無頭檢查項
--cron + 時區 0 9 * * 1-5 Asia/Tokyo Slack + Webhook 核對閘道系統時區與任務 --tz
--every 4h 健康摘要 僅 Webhook 處理器需冪等;承載含 runId
--at 部署後 45m 冒煙 隔離工作階段 把結束碼寫入 launchd 日誌路徑

閘道重啟、逾期任務與 jobs.json 衛生

Cron 執行於閘道內部而非模型程序內,因此每次 launchctl kickstart -k 也是排程器重啟。主機停機期間,逾期的隔離任務可能在啟動時一併入隊;上游新版本會對錯過的執行做錯峰,但仍應把重啟視窗視為高風險時段。升級前請複製 ~/.openclaw/cron/jobs.json 及狀態樹,做法見《工作階段檢查點與閘道重啟》。重啟後若日誌裡同一秒出現大量 cron 任務 ID,往往預示即將到來的 429 風暴。

npm 升級後請配合 openclaw doctor;過時模組更常讓排程靜默失效而非聊天立刻報錯。若隔離任務入隊卻無輸出,可暫時改為主工作階段提醒、向上游回報 issue,並停用可寫入工具直至修復——勿在正式租約上保留「靜默排程」。

切勿在共用租機上把 cron Webhook 指向會改寫正式工單的正式系統,除非使用範圍受限的 API 權杖與冪等處理器。Webhook 金鑰應像 CI 部署金鑰一樣按季輪換,放在 plist 的 EnvironmentVariables 中,而非全域可讀的點檔。

租用 Apple Silicon 上 OpenClaw cron 八步上線

  1. 確認閘道健康:openclaw doctorlaunchctl print gui/$(id -u)/com.openclaw.gateway(標籤名可能不同)。
  2. 首次改排程前備份 ~/.openclaw/cron/jobs.jsonOPENCLAW_STATE_DIR
  3. 建立一個隔離、唯讀摘要任務,--cron 相對整點偏移(例如第 7 分)。
  4. 設定帶 HMAC 標頭的 HTTPS Webhook;先在預發端點驗證 2xx。
  5. 執行一次性 --at 15m 冒煙;確認自刪行為是否符合稽核要求。
  6. 在維護視窗重啟閘道一次;在日誌中確認逾期任務被錯峰執行。
  7. 文件化熔斷:停用任務項、launchctl kickstart -k 閘道、確認 Webhook 停止。
  8. 執行七天後按次檢視 token 遙測;調整模型層級或拆到第二台租用主機。

錯峰友善的 cron 範例(東京工作日上午,隔離工作階段):

openclaw cron add --cron "12 9 * * 1-5" --tz Asia/Tokyo --session isolated --message "彙總夜間 CI 失敗;唯讀工具。" --webhook https://hooks.internal.example/ci-digest

無頭租約上 cron 異常排障

現象 可能原因 下一步
任務從不觸發 閘道未執行或時區不一致 檢查 launchd;對比 --tz 與主機 date
閘道啟動時集中觸發 逾期積壓 錯開排程;升級閘道;觀察錯峰日誌
Webhook 401/403 輪換金鑰未寫入 plist 更新環境變數;kickstart 閘道
隔離入隊無輸出 派送迴歸 暫用主工作階段;查 doctor 與上游 issue

常見問題

OpenClaw 把 cron 存在哪裡? 在閘道使用者的 ~/.openclaw/cron/jobs.json——升級前請備份。

夜間報告用隔離還是主工作階段? 重工具鏈用隔離;僅輕推可用主工作階段 + 心跳。

重啟後為何 cron 洪峰? 逾期任務一併追趕——請錯開排程並確認建置包含啟動錯峰。

自動化正式 Webhook 前,請先收藏 部落格索引說明中心 中的 SSH 接入說明。

為何 Mac mini M4 租約適合 OpenClaw cron + Webhook

Apple Silicon M4 能在可預測的統一記憶體預算內同時承載閘道與兩條隔離 cron——不像突發型 x86 VM 在 ripgrep 時把索引擠進 swap。在香港東京租機可降低面向亞太端點的 Webhook RTT;美國節點適合美東工作時段排程。你無需再買第二台桌面 Mac 即可獲得 7×24 自動化,並在 token 遙測提示時把重任務拆到第二台租約。請在 定價頁 對比區域,在 說明中心 演練閘道安裝;僅當 cron 任務必須除錯純 GUI 工具時才使用 VNC

租用 7×24 閘道主機,安全執行錯峰 OpenClaw cron

HK / JP / KR / SG / US · SSH · Mac mini M4 · 友善 Webhook