前言:當自動化變成災難
最近身邊很多朋友,不管有沒有工程背景,都開始玩 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 助理,他寫的很清楚,我就不贅述這部分了。
不過因為我在這台上採用的 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 的備份與更新,確保可回朔性。
3. 開發環境:VSCodium 與 Google Antigravity 的協作
Gooele 的 Antigravity 真是個好東西,我現在都完全靠它來編寫程式碼與運作,但它的 AI 模型還是會有用量限制,所以我同時也裝了 VSCodium,依靠 Continue 外掛接上 ollama/qwen2.5-coder:3b,這樣可以在同一份代碼上工作而不打架,也不用花額外的錢升級 Antigravity,不過以聰明程度來說當然是差很多,不過至少可以做一點基本的協助。
- 人工智慧 下班: 進行 Commit & Push。
- 等待綠燈: 確認 Syncthing 狀態為 "Up to Date"。
- 工人智慧 接手: 打開 VSCodium,執行
Git Pull。 - 工人智慧 下班: 在 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
- Drop: 自動抓取或 PDF 丟入
Inbox。 - Engine 1 (pdfplumber): 針對標準表格,使用座標精確提取數據。
- Engine 2 (MarkItDown): 針對複雜或非標準文件,使用 Microsoft 的 MarkItDown 進行語意轉換。
- AI Tagging (Qwen 2.5): iMac 讀取檔名與內容,自動標記
#信用卡#永豐銀行,並根據內容摘要。 - 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。而「雙層循環」法:
髒活雲端化:大量的文件閱讀與雜亂的日誌分析由 Google 提供的長文本環境處理。
結論地端化:只傳輸「相關的規劃」回我的地端系統,避開了中間討論過程的 Token 浪費。
異地協作:將複雜或不用太聰明的工作(例如表格清洗任務)交給地端模型,完全不佔用付費 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 的本質與風險
常見風險包括:
-
社群技能包含惡意指令或惡意程式碼(類似套件惡意安裝)
-
錯誤的權限可能導致敏感資料洩露(API 金鑰、憑證等)
-
本地執行代理若暴露在網路上可能成為入侵入口
留言