在維運 OpenClaw 自動化工作流時,最讓人頭痛的往往不是系統直接報錯崩潰,而是那種「明明跑完了,結果卻對不上」的尷尬狀況。
常見的場景是:文章內容已經產出、Google Sheet 也確實寫入了一筆紀錄,但 WordPress 卻還沒真正變成最終版本;或者是在系統自動補跑之後,WordPress 裡又莫名其妙多出了一模一樣的草稿。這類問題看起來像是偶發的單點故障,但追根究柢,通常是因為草稿生成、交付、回寫與補跑這幾個階段的狀態邊界沒有切乾淨。
想讓 OpenClaw 的自動化鏈條穩定運作,你需要重新檢視並優化以下 4 個關鍵環節。
本篇目錄
釐清狀態邊界:「內容寫完」不等於「成功交付」
很多團隊在設計工作流時,習慣把「內容產出」或「成功建立草稿」直接當作任務完成。但這兩件事在自動化架構裡其實不在同一個層級。
內容生成只是中間產物。真正的交付,必須是 WordPress draft 已建立、URL 已順利回傳、Google Sheet 也完成 append,這三件事全部到位才算真正落地。
只要你在流程中將其中一個中間狀態提早標記為「成功」,後續的重試與補跑機制就會誤判現況,進而導致重複發文或者是紀錄漏寫。

調整寫入順序:先建立 WP 草稿,再回寫 Sheet
順序對了,維運成本直接省一半。比較穩健的寫入順序是:
- 本地 / 中繼層:完成內容組裝與格式整理。
- WordPress:呼叫 API 建立草稿,並取得成功的 draft URL。
- Google Sheet:拿到實體 URL 後,才把紀錄 append 到試算表中。
這樣設計的核心好處,是讓表格紀錄永遠跟著「真實存在的草稿」走,不會留下「表格有紀錄、後台沒文章」的假成功。
反過來,如果你的流程是先寫 Sheet 再處理 WordPress,一旦後段網路抖動或 API 失敗,就會留下一筆看似完成、實則沒交付的髒資料,後續要靠人工對帳補救的成本會非常高。
補跑與重試去重:不能只看時間戳,要用「複合對帳鍵」
OpenClaw 排程在運作時,難免會遇到網路波動、WordPress 回應延遲或 Google 連線不穩。自動重試(Retry)機制固然重要,但重試邏輯必須具備去重辨識能力。
最實用的做法,不是單純依賴時間戳記,而是把標題、Pillar 類別、工作 ID (Job ID) 以及 draft URL 組合成一組「對帳鍵(Reconciliation Key)」。
當重試機制被觸發時,系統第一步應該先檢查這組鍵值是否已經存在。只要確認之前已經成功寫入過,後面再收到相同的事件就應該直接跳過,而不是盲目地再建一次草稿。

建立失敗回收與補償流程:別把維運壓力留給人工
很多人以為只要設定好 retry 就萬事大吉,但自動化流程中最棘手的往往是「部分成功」。
例如:
- WordPress 草稿建立了,但 Google Sheet append 失敗。
- Sheet 已經寫入紀錄,但 WordPress 卻因為 Timeout 沒能及時回傳 URL。
面對這種情況,系統必須要有明確的補償流程(Compensation Flow)。出現異常時,先自動查詢系統內是否已存在對應草稿,再決定是補寫缺少的紀錄,還是將這筆資料標示為「待人工處理」。沒有設計失敗回收機制的系統,最後只會把技術債與運維壓力全部推回給人工。
常見問題 (FAQ)
A1: 需要。Google Sheet 是自動化流程的對帳與追溯底帳。如果少了這個紀錄,後續維運人員會非常難分辨哪一次執行是成功交付、哪一次是自動補跑,無法有效控管工作流程。
A2: 因為一旦 WordPress 建立草稿失敗,Google Sheet 就會先留下「假成功」的資料。這會導致表格紀錄與實體文章對不上,後續人工盤點與補救的代價會非常高。
A3: 建議為每篇產出的內容建立固定對帳鍵(例如:文章標題 + Pillar + 工作 ID + draft URL)。在每次執行重試之前,先檢查該對帳鍵是否已有成功寫入紀錄,若有則直接跳過執行。
