---
title: "我的 AI 助理差點炸了我的 iPhone：關於 openclaw 同步、衝突與治理的血淚教訓"
description: "我的 AI 助理差點炸了我的 iPhone：關於 openclaw 同步、衝突與治理的血淚教訓"
pubDate: 2026-02-15
author: "jacobmei"
category: "網路與社群"
tags: [AI與科技, oracle, openclaw, ollama, qwen, Google, gemini, obsidian, Antigravity, Syncthing, Tailscale, mobius]
canonical: https://jacobmei.com/blog/2026/0215-bg-26d50370/
lang: zh-TW
license: CC BY-NC 4.0
---

# 我的 AI 助理差點炸了我的 iPhone：關於 openclaw 同步、衝突與治理的血淚教訓

## 前言：當自動化變成災難

最近身邊很多朋友，不管有沒有工程背景，都開始玩 OpenClaw ── 一種可以真正執行任務的 AI 代理（agent）。一開始我以為安裝與使用只是幾行程式碼的過程，但當整個系統延伸到三台設備（MBA、iMac、Oracle Cloud）時，我才發現：沒有治理的自動化，只在加速災難。

在系統建置的前幾天，我遭遇了 Google Drive 同步卡死，以及 Git 衝突高達 148,000 個檔案的慘況（苦笑）。那一刻我深刻體會到：**一個沒有「憲法」的 AI 系統，就像一個沒有交通規則的城市，車子跑得越快，車禍就越慘烈。**

因此，我想分享我的  **Personal AI Operating Platform (PAIOP) 個人化 AI 應用平台**治理想法。

---

### 1. 核心憲法：主權至上

我在系統中先定義了 AI 的權力邊界，我戲稱它為「憲法」（constitution.md）。這不是哲學，而是穩定性與安全性的基礎。：

> **原則一：主權至上**  
> AI 僅為輔助。所有自動化流程必須受控、可中止。AI 不得擅自修改「正式記憶（Structured Memory）」。  
>   
> **原則二：角色分離 (Separation of Concerns)**  
> 權限應附著於角色，而非設備。這樣可在治理上保有彈性與清晰責任界線。

### 2. 三權分立的物理實踐

為了落實，我依照自己的使用習慣，將硬體資源劃分為三個邏輯節點，在儘量不額外花錢的前提下，形成了一個穩定可運作的三角架構：

| 節點角色 | 設備 / IP | 職責與限制 |
| --- | --- | --- |
| **Authoritative (大腦)** | MBA (M2) | MacBook Air M2 是我平常的工作幾，也是唯一具備主動 Git Push 與修改憲法的權限。AI 負責陪我做策略制定與代碼開發。 |
| **Operational (肌肉)** | iMac 2019 | **AI 清洗站**。這是一台我女兒的老電腦，想說平常也沒在用，所以我設定他為運行 Qwen 2.5 7B 模型，負責吃進 PDF, DOC, PPT, EXCEL 等格式檔案，清洗後轉成 Markdown。無權寫入正式庫。 |
| **Sentinel (哨兵)** | Oracle Cloud | **Ghost Bot**。這是免費的雲端主機，24 小時監控、執行 Crontab 爬蟲、市場情緒分析、自動同步與 Git 備份等。 |

### 3. 記憶的生命週期 (The Memory Pipeline)

為了避免 RAG（檢索增強生成）產生幻覺或不可靠內容，我將資料依處理階段分為五個層級：

- 📥 **Inbox/Drop：** 原始資料進入點（如銀行對帳單 PDF）。
- ⚙️ **Processing：** 由 iMac 進行清洗格式化，此階段由自動化腳本接管。
- 📋 **Staging (候選區)：** 產出 Markdown 草稿並定時通知我。我會介入審核的唯一關卡。
- 📚 **Structured (正式區)：** 經過審核的乾淨數據。**這是 AI 唯一被允許引用的知識來源**，確保準確率 99%。
- 📦 **Archive (冷資料)：** 處理完畢的原始檔，定期歸檔以保持系統輕量化。

這個架構確保了即使 AI 發瘋（例如模型更新後邏輯壞掉），它也只能破壞 Staging 區的草稿，而永遠無法汙染我相對依賴的長期記憶。

## 軟硬體：不花錢（？）的個人企業級架構

有了憲法，還是需要軟硬體搭派的基礎設施，很多人都在買 Mac mini，目前連蝦皮上的二手機都較半年前漲了上千元，也有人租用雲端伺服器，這相對可能便宜一些，不過我的重點在於如何榨乾家中現有資源的效能 XD。

所以我最後選擇讓 OpenClaw 利用舊 iMac 2019 與免費 Oracle Cloud 構建混合雲。

### 1. 混合雲與算力控制 (Hybrid Cloud Strategy)

#### Oracle Cloud：穿著防彈衣的哨兵

我使用 Oracle Free Tier 作為永遠在線的哨兵。其實類似的免費雲端服務，包括 AWS 和 Google 都有提供，不過有些有免費限期限制，或是效能不是那麼好，Oracle Cloud 的免費方案相對來說是比較好的選擇，有興趣的朋友可以參考 [文皓寫的 OpenClaw 部署成本全攻略：$0-8/月打造你的私人 AI 助理](https://yu-wenhao.com/zh-TW/blog/2026-02-01-openclaw-deploy-cost-guide/)，他寫的很清楚，我就不贅述這部分了。

不過因為我在這台上採用的 AI 模型 (Ollama/Qwen) 會佔 CPU 資源  實務上為了防止佔滿 CPU 導致系統不穩定、連線中斷，我在 `systemd` 層級設定了嚴格的限流，目前這樣運作和管理都還算順暢：

```
[Service]
CPUQuota=300%  # 限制最多使用 3 顆核心，保留 1 顆給系統通訊
MemoryLimit=20G # 防止記憶體溢出 (OOM)
```

#### iMac 2019：本地重型工廠

這台主要做的就是資料清洗這種相對精實的工作，資料整理等都可以靠 Python 等處理，AI 只有用在幫忙核對資料細節、加標籤等工作，目前主要是靠運行 **Qwen 2.5 7B** 模型。相較於 3B 模型，7B 在識別複雜稅務表格（如「股利及盈餘合併計稅」）時，有更好一點的表現。透過 Tailscale 內網穿透，iMac 變成了私有運算節點。

### 2. 神經網路：Tailscale 與 Syncthing

資料同步是多機架構的惡夢，剛開始我用的是 Google Drive 搭配 Git，但因為我檔案夾名稱改過、路徑改過、規則改過，導致同步出現大災難，Git 又將程式碼同步，最後當我手機上安裝了 Mobuis Sync 一起同步的時候，iPhone 本機就炸了，然後 Google Drive 同步也炸了 XD 。

後來決定放棄使用 Google Drive，全面改採「模組化排除規則」來解決 Git 與 Syncthing 的衝突：

- **.stignore\_global**：全域規範（由 Git 追蹤）。強制排除 `venv/`, `.git/`, `*.log 等`。
- **.stignore\_local**：本地例外（Git 忽略）。允許每台機器有自己的小秘密（例如 iPhone 排除大型備份檔）。
- Oracle 會定時執行 git 的備份與更新，確保可回朔性。

另外也採用了 Tailscale 來讓整個環境成為內網協作，這樣的好處是我在外地也可以安全的連上家裡的 iMac，也減少了一些 Oracle Cloud 的防火牆設定，讓整個網路環境更安全。

### 3. 開發環境：VSCodium 與 Google Antigravity 的協作

Gooele 的 Antigravity 真是個好東西，我現在都完全靠它來編寫程式碼與運作，但它的 AI 模型還是會有用量限制，所以我同時也裝了 VSCodium，依靠 Continue 外掛接上 ollama/qwen2.5-coder:3b，這樣可以在同一份代碼上工作而不打架，也不用花額外的錢升級 Antigravity，不過以聰明程度來說當然是差很多，不過至少可以做一點基本的協助。

**🤝 人機交接流程 XD：**

1. **人工智慧 下班：** 進行 Commit & Push。
2. **等待綠燈：** 確認 Syncthing 狀態為 "Up to Date"。
3. **工人智慧 接手：** 打開 VSCodium，執行 `Git Pull`。
4. **工人智慧 下班：** 在 VSCodium 執行 Commit & Push，並在 Chat 中告知 Antigravity：「我更新了，怕我亂搞搞壞環境，請讀取 Git 並確認。」

## 審計概念：數位哨兵與自癒力

在多機協作的 AI 架構中，我現在覺得最令人擔心的不是 AI 不夠聰明，而是「系統當機了卻沒人知道」，任何環節的斷裂都可能導致資訊遺失。

### 1. 獨立審計代理人：Ghost Bot 的角色

- **職責分離**：確立了 **Oracle Ghost Bot** 作為獨立審計代理人的地位。
- **全時運作**：即便 MBA 離線或沒電，Oracle 的 Ghost 小組仍會持續依照《憲法》運作並準時回報。

### 2. 系統執行官：PM2 進程管理

為了確保這些機器人腳本不會因為終端機關閉或 Gateway 崩潰而失效（openclaw 還滿容易一位改了 config 檔案就掛了），我使用了 **PM2** 作為跨機器的進程管理工具。

- **集中化管理**：透過 PM2，可以統一查看所有節點的運行狀態、CPU 佔用與重啟次數。
- **常用維護狀況**：

  - `pm2 list`：快速查看各節點 Bot 是否在線。
  - `pm2 restart [name]`：當腳本更新或出現連線衝突時進行重啟。
  - `pm2 save`：保存目前進程清單，確保機器重啟後自動恢復運行。

### 3. 看門狗：自動療傷機制

我部署了 `system_watchdog.py` 作為系統的守護者，它每小時基本會執行以下動作：

- **Bot 存活監控**：自動偵測並透過 PM2 或系統指令重啟斷線的機器人。
- **同步修復**：自動偵測並修復 Syncthing IP，確保 P2P 同步鏈結不中斷。
- **排除規則保護**：自動還原缺失的 `.stignore`，防止碎檔案意外上傳。

## 實作：當理論遇上現實

規劃再完美，真正執行起來還是一堆 Bug，沒有別人的小龍蝦這麼聰明。

### 1. 帳單流水線清洗 (The Finance Pipeline)

我的想法很簡單，去 Gmail 檢查銀行寄來的對帳單，並自動下載回來後解密，再做資料辨識（PDF 轉換）與清洗（刪除裡面一堆廣告行銷或是警語等沒用的資料），然後通知我有新轉換好的檔案可以檢視，並轉入記憶區當作給 AI 分析的資料源。

我會做這件事的起因是原本這些 PDF 檔案，我都扔到 Google Notebooklm 分析使用，但常常發現會有漏資料的狀況，管理上也很麻煩，要自己手動做一堆事情，所以想透過自動化來處理。

當然這件事情其實完全不用 AI 也可以做，不過想試試加了 AI 是不是可以更聰明。

這個過程中，傳統 RAG 最大的痛點是「表格詛咒」—— PDF 轉文字後表格亂掉。在經過比對後，最後我採用「雙引擎清洗」設計：

#### 🚀 Finance PDF Pipeline

1. **Drop：** 自動抓取或 PDF 丟入 `Inbox`。
2. **Engine 1 (pdfplumber)：** 針對標準表格，使用座標精確提取數據。
3. **Engine 2 (MarkItDown)：** 針對複雜或非標準文件，使用 Microsoft 的 MarkItDown 進行語意轉換。
4. **AI Tagging (Qwen 2.5)：** iMac 讀取檔名與內容，自動標記 `#信用卡` `#永豐銀行`，並根據內容摘要。
5. **Review & Ingest：** 我在 Staging 區確認後，自動歸檔至 Structured Memory。

### 2. 踩坑紀錄 (Troubleshooting Logs)

#### 💀 殭屍程序殲滅戰 (The Zombie War)

有時候可能因為檔案比較多或複雜，AI 就將記憶體和 CPU 卡滿了，然後我又手賤的繼續下指令或是和 Telegram Bot 聊天，導致 Python 的程序在背景也進入了死結。
  
**教訓：** 在所有自動化腳本中還是必須加入 `timeout` 機制，並定期執行 `system_watchdog.py` 進行自我復原的基本功。

#### 📂 路徑陷阱

腳本在 MBA 這邊執行都沒問題，但放在 iMac 或 Oracle 跑排程就失敗。原因其實也很簡單，因為環境變數路徑在一開始我沒有定義好，AI 在編寫的時候有時會搞錯三機的環境，現在也為每台機器設計了自己的身分證，確保不會搞錯。

#### 📄 工具選擇的災難

我其實也不確定用哪個工具比較好，所以和 AI 討論後實作了很多不同的工具測試效果，但這些測試過程中，往往不小心又留下了不乾淨的環境，導致測試花更長的時間在找問題。  
**教訓：** 更多依賴 git，並在三機當中各自定義好環境與變數等，不要讓 Syncthing 同步覆蓋，確保環境的獨立與完整性。

## 省 Token 小技巧：雲端大腦與在地肌肉的結合

在操作複雜的 AI 代理系統時，我常遇到兩個問題：**免費額度用完** 以及 **Context Window（上下文窗口）不足**。即便模型再聰明，一旦忘記了兩週前的系統變更紀錄，產出的代碼就可能與現有架構產生衝突，而老是挑選相對便宜的模型改來改去，也不適合我這個懶人。

所以我整理了自己的「雙層循環協作法」，將 **Google NotebookLM** 作為全知的大腦，並將 **Antigravity (OpenClaw)** 作為執行與討論指令的肌肉。

### 1. 第一層循環：雲端知識建模

我將所有系統地圖（`SYSTEM_MAP.md`）、憲法（`constitution.md`）以及每天累積的工作日誌（`Journals/`）等全部餵入 **Google NotebookLM**。

- **突破記憶上限**：透過 Google Gemini 網頁版載入這個 NotebookLM 資料夾，Gemini 就能在超過 100 萬 Token 的超大窗口中檢索我過去幾個月的所有技術決策。
- **全域架構規劃**：在與網頁版 Gemini 討論新功能或修正 Bug 時，它能精確地指出「你在 2 月 9 日曾為了效能移動過路徑，所以現在的腳本應該...」。這讓雲端 AI 成為一個完全了解我系統現況的「資深架構師」。

### 2. 第二層循環：在地代理執行

在雲端討論出結論（例如一段精煉後的 Python 腳本或部署計畫）後，就可以讓 Antigravity 再接手。

- **在地自動化**：Antigravity 透過 **OpenClaw** 在我的 MBA 或 Oracle , iMac 上執行具體操作。
- **地端模型協作**：對於重複性高、邏輯較單純的執行任務，就用 **Qwen 2.5:7B** 地端模型。這不僅保證了隱私數據不外流，更達成了「零 Token 成本」的在地運算。

### 3. 為什麼這套技巧能節省大量 Token？

傳統做法是直接在 Bot 對話框中餵入所有文件，這會導致每次對話都可能重覆消耗數萬 Token。而「雙層循環」法：

1. **髒活雲端化**：大量的文件閱讀與雜亂的日誌分析由 Google 提供的長文本環境處理。
2. **結論地端化**：只傳輸「相關的規劃」回我的地端系統，避開了中間討論過程的 Token 浪費。
3. **異地協作**：將複雜或不用太聰明的工作（例如表格清洗任務）交給地端模型，完全不佔用付費 API 的額度。

---

### 結語：從自動化到自主化

目前已經從單純的「自動化腳本」進化為「多代理人系統」。整套運作起來，目前花費如下：

**硬體 / 雲端環境：**

**Oracle Cloud Free Tier**：免費，但我有綁信用卡，避免機器被重置就是了。

**iMac 2019**：老機器。

**Macbook Air M2**：原本的工作機。

**Tailscale**：基本個人使用免費。

**Syncthing**：完全免費。

**AI 相關工具：**

**Ollama / qwen 地端模型**：免費。但我主要只用 3B 做和 7B，再大的我電腦和雲端都跑不動。

**VSCodium**：免費。

**Google AI Studio 和 Google Antigravity**：我原本就有這個方案，所以每個月有免費的一點點額度可以使用，目前看起來搭配上一個章節的用法還算堪用。

**Obsidian**：免費。

**Möbius Sync Pro**：為了讓 iPhone 上可以透過 Syncthing 加入同步，這好像是目前唯一有付錢的地方（150元台幣）。

### 心得：沒有規範的自由不是真正的自由

這樣講可能很得罪人，而且我也知道目前我的這種規劃方式，無法發揮 Openclaw 的去中心化超能力，小龍蝦能自動進化的幅度緩慢有限，不是那種**給它一些想法，它第二天就給你全世界那種用法 XD**

我應該算是人機協作當中的保守派，知道世界可能會往這個方向前進，但還是希望在其中有我自己能參與的部分，不希望全部都被 AI 做好，而我只看到結果，卻不知道中間是怎麼規劃與執行。透過憲法式治理架構、清晰的責任分離與資料生命週期控制，我能把原本可能失控的系統，變成可管理、可審計、可恢復的 AI 平台。

另外我已經快六十歲了，腦力和反應都跟不上，常常在這些 AI 協作過程的錯誤當中滿挫折的，但我同時也很期待與興奮能夠學習這些，希望這篇文章能讓大家在自己的 AI 旅程中少走一些彎路。

### ⚠️ 安全與治理警示：OpenClaw 的本質與風險

OpenClaw 並非一般聊天機器人，它是一個能在本地運行、執行 shell、存取檔案、連結通訊工具的 AI agent，這種「自主執行本地任務」能力使它非常強大，但也帶來安全風險。

**常見風險包括：**

- 社群技能包含惡意指令或惡意程式碼（類似套件惡意安裝）
- 錯誤的權限可能導致敏感資料洩露（API 金鑰、憑證等）
- 本地執行代理若暴露在網路上可能成為入侵入口
