① 為什麼要做這個?
如果你同時在做研究、管理多個專案、追蹤財務、維護伺服器 — 你一定經歷過這種場景:正在寫論文,突然想到備份腳本昨天好像沒跑。切過去看 log,發現 NAS 連線有問題。修完回來,已經忘記剛才寫到哪裡了。
這就是context switching 的認知成本。研究顯示,每次切換任務後需要 15-25 分鐘才能回到深度專注狀態。如果你每天被打斷五次,就損失了兩個多小時的深度工作時間。
傳統的解法是「用 AI 工具自動化」— 但大多數 AI 助手是一次性的:你問一個問題,它回答,然後忘記一切。它不知道你上週做了什麼決定,不知道你的專案之間有什麼依賴關係,更不知道你此刻最應該專注在哪件事上。
核心洞察:AI 是認知夥伴,不只是工具
我們把這套系統定位為新創公司的 CEO-COO 模式:你(CEO)負責方向決策和創意發散,AI(COO)負責執行追蹤、流程管理、補償你的認知弱點。就像有一個永遠不會忘事的營運長,隨時知道所有專案的進度和優先序。
② 架構全貌
三層面工作模型
COO 的一切工作服務於三個層面。它們不是獨立的 — 專案產生知識,知識啟發新專案,營運確保什麼都不掉球。
系統架構
整套系統分三層:記憶層存你的思考,執行層跑自動化,儲存層做備份。每一層都有明確的職責,不混用。
每個元件存在都有原因:
- Obsidian Vault — 你的第二大腦,所有知識和決策歷史都在這裡。選它是因為純 Markdown、可離線、資料完全屬於你。md-is-code 原則:vault 不只是給人讀,agent 也讀寫同一份檔案 — 文件就是介面。
- agent-workspace — multi-agent 的執行基地,每個 agent(COO / CIO / PhD PM)有自己的 sub-repo、記憶、persona。和 vault 分開,因為知識和 ops state 的生命週期不同。
- NAS — 每天自動備份,不依賴雲端。你的資料不該只存在一台電腦上。
- Telegram Bridge — 讓你在外面也能跟任一 agent 對話。Telegram Bot API 極簡、支援 Markdown、手機體驗好。
- 本地 LLM(ollama)/ Codex — 批次處理、detach 模式跑 sub-task 走本地模型或 Codex CLI,省成本、保隱私、可平行。
- Claude Code(Opus / Sonnet) — 需要深度推理的工作交給它。CIO 的 weekly agentic run 就是 spawn
claude -p --model opus 自主分析。
②️· Agent 編制
從一個 COO 演進到 multi-agent 平行編制。每個 agent 有自己的 sub-repo、persona、記憶、cron。不是 hierarchy,是平行 — 跨 agent 通訊走 vault contract(md-is-code)。
每個 agent 的 scope
- COO(營運長)— 跨 project 協調、流程設計、不可逆動作守門。Claude Code(Opus)即時對話模式。每天的對話、commit、debug 主要走這條。
- CIO(投資長)— 投資紀律執行 + 認知拓寬。獨立 git repo、五層記憶(docs / config / state / history / learning)、有 constitution。Weekly run 是 deterministic 備好 bundle.json 後 spawn
claude -p --model opus agentic 模式自主決策。
- PhD PM(專案經理)— 博士畢業專案的認知降載。YAML 任務樹 + cron 早晚報 + Telegram inbox digest。Claude(深度討論)/ gemma4(每日批次)雙模式。
- Subagent(彈性執行)— Codex CLI 或本地 LLM 跑 detach 任務(爬蟲、batch 摘要、長跑 sub-task)。由 COO 視需要派發,不是常駐 agent。
為什麼 multi-agent 不用 LangGraph / CrewAI?
每個 agent 是一個獨立 git repo + 一份 CLAUDE.md persona + 一個 cron / launchd 服務。Coordination 不靠 framework,靠 vault 的 markdown contract(md-is-code)。任一 agent 換掉、另開、刪掉,其他 agent 照樣跑。Framework lockin 在這個架構裡是 anti-pattern。
③ 演進路徑
這套系統不是一次設計出來的。每個階段都是為了解決一個具體的痛點。這是最重要的設計原則:不超前設計,走通再擴展。
Phase 0:手動腳本
問題:每天手動抓財務數據、手動備份,忘記就漏掉
解法:寫獨立的 Python/Shell 腳本,一個功能一個檔案
學到:先讓每個腳本獨立可用,不要一開始就想整合
Phase 1:Cron 自動化 + 通知
問題:腳本寫好了但還是忘記跑,而且跑完沒回饋
解法:cron 排程定時執行 + Telegram bot 推送結果
學到:自動化 + 通知 = 最小可用的被動系統。通知 bot 和對話 bot 要分開
Phase 2:Telegram Bridge(雙向通訊)
問題:出門後無法跟 AI 溝通,只能等回到電腦前
解法:寫一個 bridge,把 Telegram 訊息注入 tmux session 的 Claude Code
學到:Bridge 不用 webhook(需要公開 IP),long polling 就夠用。安全防護很重要 — shell injection、卡住偵測
Phase 3:知識層
問題:和 AI 討論的內容散落在對話中,過幾天就找不到了
解法:建立結構化知識管理 — Wiki 索引、Canvas 全局圖、自動摘要回寫 Brief
學到:DevLog(時間綁定:那天發生了什麼)和 Insights(主題綁定:這個 pattern 在哪裡適用)要分開存
Phase 4:專案管理系統
問題:高優先專案任務複雜、依賴多,容易失焦
解法:完整 PM pipeline — inbox 收集 → LLM 分類 → 早報 → Gantt chart
學到:用 YAML 而非 database — 透明、可 git diff、你可以直接編輯。狀態變更需人核可(human-in-the-loop)
Phase 5:認知夥伴
問題:PM 報告只是數據呈現,沒有真正幫你「思考」
解法:給 PM 一個「靈魂」— 理解你的認知模式,能指出你在迴避什麼
學到:AI 最大的價值不是幫你做更多事,而是幫你看到盲點。Discussion-first:你的問題驅動分析,不是 AI 先報告再等提問
Phase 6:Multi-agent 編制
問題:一個 COO 開始要管太多領域 — PhD、投資、homelab、ops。每件事都進同一個 session,scope 互相污染、context 過載
解法:拆出 CIO(投資長)、PhD PM(專案經理),各自獨立 git repo + persona + 記憶 + cron。COO 留作全域協調,不再吃所有事
學到:multi-agent 不是 hierarchy,是平行 single-purpose。每個 agent 換掉、另開、刪掉,其他照樣跑。Coordination 走 vault contract(md-is-code),不靠 framework
Phase 7:Agentic + Sediment
問題:agent 只能跟著規則跑,缺少自主分析能力;對話的洞察散在 session log 裡,跨 project 的 pattern 沒有提煉
解法:(1) Agentic mode — CIO weekly run 由 deterministic 備好 bundle 後 spawn claude -p --model opus 完整委派決策;agent 有完整工具權限自己跑分析、寫 commit。(2) Sediment 知識層 — 跨 project 的 pattern / 規則寫進 05_Sediments/,5 年後仍值得讀的才放
學到:agent 的 leverage 不是更多自動化,是「自主分析 + 提煉知識」。Modular infra 在 AI 時代是 substrate(traversal cost ≈ 0),人和 agent 在同一介面共存。Velocity 是 enabler 不是 strategy — 跑得快不代表跑對方向
④ 核心模組
通知與溝通
從單向通知到雙向對話,手機就是你的遠端控制台。
專案管理
從隨手記到結構化追蹤,YAML 是你的 single source of truth。
知識管理
讓你的想法不只是「寫下來」,而是能被找到、能回撈、能啟發。
自動化
Cron 是你的自動化骨幹,簡單、可靠、不需要額外服務。
技術選擇的理由
為什麼 Local LLM (ollama) 做批次任務?
每天跑十幾次摘要和報告生成。如果全走雲端 API,每月成本可觀。本地模型零成本、資料不出機器、不受 API 限額影響。品質對批次任務來說足夠。
為什麼 Claude 做複雜推理?
當你需要分析專案策略、找出認知盲點、做跨領域的深度思考時,品質天花板就很重要。本地 7B-30B 模型能做 80% 的工作,但最關鍵的 20% 需要更強的推理能力。
為什麼 Telegram 不用 Slack?
這是個人工作站,不是團隊工具。Telegram Bot API 非常簡潔(HTTP long polling 就行),支援 Markdown 格式,手機 app 體驗好。而且免費、不限歷史訊息。
為什麼 YAML 不用 database?
YAML 人類可讀、可以直接用編輯器改、git diff 一目了然、不需要跑 server。對個人專案管理來說,這些優勢遠大於 database 的查詢能力。
⑤ 自己動手做
30 分鐘最小可用版本
不需要一次做完所有東西。以下四步就能有一個可用的起點:
-
安裝 Claude Code CLI
npm install -g @anthropic-ai/claude-code
# 或: brew install claude-code
-
建立 CLAUDE.md — 定義你的 COO
在 home 目錄建立 ~/CLAUDE.md,寫下你是誰、你希望 AI 扮演什麼角色、你的工作方式偏好。這個檔案是整個系統的靈魂。
# ~/CLAUDE.md 範例
## 角色
你是 COO。用戶是 CEO。我們用新創模式協作。
## 用戶畫像
- 軟體工程師,同時管理 3 個 side project
- 偏好簡潔回覆,不需要重複確認
## 工作方式
- 每次工作前讀 WORKSPACE.md 確認狀態
- 版控優先:每個專案有獨立 git repo
- 任務完成 = 用戶收到結果
-
建立 Telegram Bot + 通知腳本
# 1. 在 Telegram 找 @BotFather,發送 /newbot 建立 bot
# 2. 記下 bot token
# 3. 向你的 bot 發送一則訊息
# 4. 取得你的 chat_id:
curl "https://api.telegram.org/bot<TOKEN>/getUpdates" | python3 -m json.tool
# 5. 寫通知腳本 notify.sh:
#!/bin/bash
TOKEN="your-bot-token"
CHAT_ID="your-chat-id"
MSG="$1"
curl -s -X POST "https://api.telegram.org/bot${TOKEN}/sendMessage" \
-d chat_id="${CHAT_ID}" -d text="${MSG}" -d parse_mode=Markdown
-
加一個 cron job
# 每天早上 8 點提醒你今天的重點
crontab -e
# 加入:
0 8 * * * /path/to/notify.sh "早安!記得檢查今天的待辦事項"
漸進升級路線圖
Level 1: 通知系統
約 1 小時
- Telegram notify bot
- 備份腳本 + cron
- 失敗時自動告警
Level 2: 雙向溝通
約半天
- TG Bridge 設定
- tmux session 長駐
- 手機遠端指揮 AI
Level 3: 專案追蹤
約 1 天
- YAML 專案檔案
- LLM inbox digest
- 每日早報生成
Level 4: 知識整合
持續迭代
- Obsidian vault 結構
- Wiki index + lint
- Canvas 全局圖
- Sediment 跨 project 提煉
Level 5: Multi-agent(進階)
系統穩定後再做
- 拆出領域 agent(投資 / 研究 / ops)
- 各自 git repo + persona
- Vault contract 跨 agent 通訊
- Agentic mode(spawn opus 自主決策)
工具替代方案
這套系統的設計是模組化的。每個元件都可以替換成你熟悉的工具:
| 元件 | 我們的選擇 | 替代方案 |
| AI 助手 | Claude Code + ollama | ChatGPT, Cursor, Copilot, 純本地模型 |
| 筆記系統 | Obsidian | Notion, Logseq, plain Markdown files |
| 通訊管道 | Telegram | Slack, Discord, LINE, Signal |
| 儲存備份 | Synology NAS | Google Drive, rsync to any server, local disk |
| 排程自動化 | cron + launchd | GitHub Actions, n8n, systemd timers |
| Python 管理 | uv | pip + venv, conda, poetry |
| 專案資料格式 | YAML | JSON, SQLite, Notion database |
| Multi-agent 編排 | 獨立 repo + vault contract(md-is-code) | LangGraph, CrewAI, AutoGen(framework lockin 較高) |
設計原則(帶著走)
不管你用什麼工具組合,這些原則是通用的:
- 先 human-in-the-loop,穩定後放權 — 新功能先做需要人核可的版本,確認可靠再自動化
- 預設輕量,主動升級 — 不過度自動化,由你決定什麼時候升級
- 簡單可迭代 — 不超前設計,走通再擴展。每個階段解決一個具體痛點
- 版控優先 — 每個專案有獨立 git repo,每次有意義的變更都 commit
- 單一真相原則 — 每個事實只存一個地方,其他地方用指標
- 任務完成 = 用戶收到結果 — 報告生成但通知沒送出 ≠ 完成
⑥ 硬體規格
這套系統跑在一台 Mac mini 上,不需要高階硬體。以下是實際使用的配置:
主機
| 項目 | 規格 |
| 機型 | Mac mini (2024, Mac16,10) |
| 型號 | MCYT4TA/A |
| 晶片 | Apple M4 |
| CPU | 10 核心(4 效能 + 6 節能) |
| GPU | 10 核心,Metal 3 |
| 記憶體 | 24 GB LPDDR5(Hynix) |
| 儲存 | 512 GB Apple SSD(APFS,剩餘 ~327 GB) |
| 顯示器 | BenQ EW2440L(1080p, 60Hz) |
| 作業系統 | macOS (Darwin 24.6.0) |
為什麼這個配置夠用
24 GB RAM
跑 ollama 本地模型(9B-27B 參數)的最低甜蜜點。26B 模型約吃 16 GB,剩下的給系統和 Claude Code。如果只跑 9B 模型,16 GB 就夠。
M4 晶片
Neural Engine 加速 LLM 推論。統一記憶體架構讓模型不需要從 VRAM 搬資料,延遲比同級 x86 + 獨顯更低。M1/M2 也能跑,只是速度慢一些。
512 GB SSD
系統 + 工具 + 模型 + Obsidian vault + git repos 佔不到 200 GB。如果要存大量影像資料,外接 NAS 更合理。
無螢幕也能跑
日常操作全透過 Telegram + SSH。螢幕只在初始設定和偶爾 debug 時用到。Mac mini 的 headless 模式穩定,適合當 always-on 伺服器。
周邊設備
| 設備 | 用途 | 替代方案 |
| Synology NAS | 資料備份、檔案共享、大型資料存放 | 任何支援 rsync 的 NAS 或雲端儲存 |
| Raspberry Pi + Home Assistant | 智慧家庭控制(獨立於工作站) | 可選,非核心元件 |
| GPU Workstation(遠端) | 深度學習訓練(透過 SSH 連線) | 雲端 GPU(Colab, Lambda Labs) |
軟體環境
| 工具 | 版本/說明 | 用途 |
| Claude Code | CLI | 主要 AI 助手(COO 角色) |
| ollama | 0.20+ | 本地 LLM 推論(批次摘要、日報) |
| Obsidian | vault sync | 知識管理、筆記系統 |
| Python (uv) | 3.14+ | 自動化腳本、bot 開發 |
| Telegram Bot API | HTTP long polling | 手機雙向溝通 |
| Tailscale | VPN mesh | 遠端存取 NAS 和 GPU 主機 |
| cron / launchd | macOS 原生 | 排程自動化(日報、備份、監控) |
預算參考:Mac mini M4 24GB 約 NT$26,900 起。加上你可能已有的螢幕和網路設備,這是一套成本極低的 AI 工作站方案。不需要雲端 GPU、不需要月費,所有運算都在桌上那個小方塊裡完成。