> ## Content Index
> Fetch the complete content index at: https://growthhackers.tw/llms.txt
> Use this file to discover other available public pages before exploring further.

# Codex 教學：打造個人 AI 助理的 4 個零件，定時排程為什麼要最後做？
- URL: https://growthhackers.tw/blog/codex-personal-ai-assistant-setup/
- Published: 2026-07-30T13:00:00.000Z
- Updated: 2026-07-30T13:00:00.000Z
- Description: 你設的 AI 排程為什麼撐不過一週？OpenAI Codex 工程師 Jason Liu 公開他的個人 AI 工作系統：語音輸入、個人知識庫、寫作風格技能、定時排程。關鍵不在模型多強，而在 AI 讀不讀得到你。先蓋好倉庫，再排補貨車班次。
- Author: Lewis wang
- Tags: Codex, AI agent, AI 工作流, 自動化, AI 工具

你上個月設的那個「每天早上九點給我摘要」的 AI 排程，現在還在跑嗎？

我猜十個有八個已經關掉了。不是因為你懶，是因為它每天早上準時寄一份看起來很像那麼一回事、但你一行都用不上的東西給你。連續三天之後你就開始跳過，第七天你把它關了。

問題出在哪？

順序做反了。

OpenAI Codex 團隊的開發者體驗工程師 Jason Liu（X 帳號 @jxnlco，OpenAI 官方 Codex 使用指南的作者）最近一週連續公開了兩場，一場是 [Peter Yang 的訪談](https://www.youtube.com/watch?v=ydTeb%5FI0b94&ref=growthhackers.tw)，一場是 [AI Engineer 的完整工作坊](https://www.youtube.com/watch?v=il1c1a2FufU&ref=growthhackers.tw)，含七十分鐘現場 Q&A。兩場加起來，是我目前看過把「個人 AI 工作系統」講得最具體的素材。他不講願景，他開螢幕給你看目錄結構。

我把整套拆完之後發現一件事：他這套系統有四個零件，其中三個在解決「輸入」，只有一個在解決「輸出」。

而大家都是從那個「輸出」開始做的。

先把結論放這裡：**AI 助理好不好用，不看模型多強，也不看你 prompt 寫得多漂亮，看它讀不讀得到你。**

---

## 四個零件，跟它們該有的順序

| 順序 | 零件                    | 在解決什麼            | 是現成功能還是要自己蓋？                |
| -- | --------------------- | ---------------- | --------------------------- |
| ①  | 輸入管線：語音聽寫             | 讓你把腦袋裡的東西倒進去     | **自己養的習慣**，用作業系統或手機內建語音輸入就行 |
| ①  | 輸入管線：Appshot          | 讓 AI 拿得到你螢幕上的東西  | Codex 現成功能（**目前限 macOS**）   |
| ②  | 個人知識庫（mono repo）      | 讓 AI 讀得懂你是誰、在做什麼 | **自己蓋**，他有開源範本              |
| ③  | 個人風格技能（write-like-me） | 讓 AI 產出的東西像你     | **自己蓋**，一句話就能生              |
| ④  | 定時排程（heartbeat 自動化）   | 讓它不用你叫也會上工       | Codex 現成功能                  |

先講清楚，免得你買錯東西：表格裡標「自己蓋」的那三格，沒有任何一個是你打開軟體點得到的按鈕，它們是檔案跟習慣。而 Jason 那個腳踏板也不是 Codex 出的產品，是他自己接的。

看出來了嗎？中間兩格是「自己蓋」，而那正是大部分人跳過的兩格。

這就像便利商店補貨。你今天排了六班補貨車，早中晚各兩趟，聽起來超級自動化。但如果門市沒有即時庫存資料，那六趟車就是六趟亂補，補完你還要自己去架上一格一格數。

車班不是效率的來源。庫存資料才是。

排程也一樣。heartbeat 醒過來的那一秒，它讀得到什麼，決定了它吐出來的東西有沒有用。你先蓋好倉庫，再排補貨班次。

![四個零件的正確順序與錯誤順序對照：定時排程排在最後才有用](https://growthhackers.tw/content/images/2026/07/inline-order-v1.png)

---

## 零件一｜輸入：把你眼前的東西丟進去

### 講話比打字快三倍

Jason 在工作坊現場問了一句：「有多少人跟 AI 互動的時候是用講的？」舉手的人不多。

他自己是這樣做的：桌下踩一個腳踏板，一個按鈕開始轉錄，一個按鈕送出。他手背在身後走到桌邊，講一句「這個修掉、Slack 上那件事回一下」，然後就走去跟同事聊天。

他的原話很有意思：「我不會傳一段十五分鐘的語音訊息給同事，但我很敢傳給 AI。」

因為講話的時候你會東拉西扯，會補一句「我記得上禮拜跟誰講過類似的事，你去翻一下」。這些雜訊對人來說是負擔，對 AI 來說剛好是線索。

以前我們花力氣把想法整理成一段乾淨的 prompt。現在你該做的是把腦袋裡那坨還沒整理的東西原樣倒出去，讓它幫你整理。

### Appshot 不是截圖，差別在這裡

這是 Codex 現成功能裡最被低估的一個。在 macOS 上雙擊 Command 鍵，它會抓最前景的視窗。

你可能會說，截圖誰不會。

差別在於，Appshot 除了圖，還一起抓走 macOS 的 accessibility tree（無障礙元素樹），連你還沒捲到的畫面外文字都拿得到。這是 Jason 在工作坊上親口拆解的機制，他的原話是「它拿走的不只是那張圖，是整個 app 的無障礙元素樹」。

翻成人話：AI 不只看到畫面長什麼樣，還讀到畫面背後每個欄位、每個人、每個頻道的身分資料。

所以，你截一張群組對話的圖給 AI，它得先做文字辨識，認出裡面有個人叫小陳，再去查「這是哪個群組」、「小陳是誰」，繞三四圈才知道要回哪裡。你給它一張 Appshot，它直接拿到頻道 ID 跟每個人的帳號 ID。Jason 說這樣只要呼叫一次就能把訊息貼回去。

Jason 說他已經兩個禮拜沒有自己填過表單。看到表單，Appshot 一按，「幫我填」，它知道所有欄位該填什麼，因為它知道你是誰。

---

## 零件二｜個人知識庫：這格是勝負關鍵

現在講最重要的一格，也是最沒有捷徑的一格。

Jason 的整套系統只有一個 project，叫 vault，就是他的 Obsidian 資料夾，全部是 markdown 檔。他把這個範本開源了，叫 [personal-monorepo-template](https://github.com/jxnl/personal-monorepo-template?ref=growthhackers.tw)，clone 下來放在 `~/vault`：

```
projects/     長期在跑的工作，一個專案一個檔
experiments/  短期的嘗試
people/       每一個曾經私訊過我的人，一人一個檔
templates/    新專案、新聯絡人的起手式
.codex/skills/  你自己寫的技能

```

![個人知識庫 vault 的目錄結構，以及檔案 front matter 裡該寫的頻道與聯絡資訊](https://growthhackers.tw/content/images/2026/07/inline-vault-v2.png)

看起來平平無奇對吧？

真正的關鍵藏在一個細節裡，而且是兩句話就講得完的細節：

**每個專案檔案的 front matter（檔頭欄位），寫上這個專案相關的所有群組頻道。**

**每個聯絡人檔案，寫上這個人的 email、通訊軟體帳號、所有工作信箱。**

他的原話是：「我永遠不會自己去 prompt 這些東西。」

因為模型讀到那個檔案，看到裡面有頻道連結，它自己就會去讀那個頻道。你不用每次都交代「去看一下行銷部那個群組」。你只要把地址寫在檔案裡一次。

這就是「AI 讀不讀得到你」的具體意思。不是它記性好不好的問題，是你有沒有給它一份可以查的通訊錄。關於 agent 的記憶到底怎麼運作、為什麼「記得多」不等於「好用」，我之前寫過[兩個新原語 Memory 與 Dreaming 的拆解](https://growthhackers.tw/blog/anthropic-agent-memory-dreaming/)，還有一篇從客服角度談[記憶系統該怎麼設計](https://growthhackers.tw/blog/ai-agent-memory-system-design/)，這裡就不重複。

還有兩個小設計很值得抄：

► **AGENTS.md 一行分流。** 他在 vault 的 AGENTS.md 裡寫了一句「程式碼不要存在這個 repo，存到 `/dev`」。從此之後叫它 clone 新專案，它自己就放對地方。一行指令，省掉往後幾百次的交代。

► **把 vault 設成 git repo。** 跑個幾天回來，`git diff` 一下，模型改了什麼、沒改什麼，一目了然。這是我看過最務實的 AI 產出驗收法：不看它跟你說了什麼，看它到底動了哪幾行。

### 台灣公司沒有 Linear，怎麼辦？

Jason 用的是 Slack、Linear、Notion、Gmail。你公司大概是 LINE 群組、Google 試算表、Outlook，加上一個永遠沒人整理的共用硬碟。

那這套是不是就做不了？

做得了，只是接法不一樣。就我自己找過的狀況，LINE 群組目前沒有像 Slack 那樣乾淨的連接器可以讓 AI 直接讀，這部分你得認。但你的知識庫本來就不需要即時串接才有價值：

- 把「客戶 A 的窗口是誰、他在意什麼、上次吵過什麼」寫成 `people/客戶A窗口.md`
- 把「這檔期的目標、負責人、試算表連結」寫成 `projects/雙11.md`
- 群組裡真正重要的決議，你用講的丟給 AI，讓它幫你歸檔到對的檔案

一開始會覺得手動很煩。但你算一下：你每天在群組裡回答的問題，有多少是同一批問題？把那些答案寫進檔案一次，之後就是 AI 幫你回。

台灣中小企業主管最大的痛，是十個群組同時在跳，每個群組都有人 tag 你，你分不出哪個重要。Jason 在工作坊講了一個換算很傳神：以前十個同事各做一件事，你追十件事；現在每個同事手上有十個專案，你要追兩百件事，而且你不知道哪一件會炸。

兩百件事，靠意志力是追不完的。

---

## 零件三｜個人風格技能：讓它寫出來像你

這一格成本最低，回報最快，通常一句話就搞定。

Jason 最愛的自建技能叫 write-like-me（像我一樣寫）。生成方式就是跟 Codex 講：

> 讀我過去六個月寫過的所有 email 跟 Slack 訊息，寫一份「怎麼像我一樣講話」的風格指南。

然後補第二句，這句才是精髓：

> 對外部使用者跟對自己團隊的語氣要不一樣，對主管跟對同事的語氣也要不一樣。

這一句翻成台灣職場就更有感：你寫給客戶、寫給老闆、寫給自己組員的三封信，措辭本來就是三種人格。一份沒分對象的風格檔，只會讓你所有的信都長得像對外公告。

他還有 email-me、tweet-me，以及把語音逐字稿轉成部落格文章的技能。第一版一定不完美，他說得很老實：「我用的所有寫作技能，沒有一個是一次就到位的。」

要注意，技能不是越多越好。他有一個 self-improve（自我改進）技能，專門去讀最常被呼叫的那幾個技能的歷史紀錄，找出「我每次都在給同一種回饋」的地方然後改掉。他也會定期下這種指令：「看我過去四百次對話，哪些技能從來沒被用過？幫我清掉，過程中訪談我。」

技能一多就會互相打架、互相稀釋，這件事我在[技能越加越多、AI 卻越不聽話](https://growthhackers.tw/blog/writing-great-agent-skills/)那篇寫過，Jason 的清理習慣算是同一個問題的實務解。

---

## 零件四｜heartbeat 定時排程：現在才輪到它

前三格蓋好了，這格才有意義。

先講清楚這是什麼。Codex 的 Automations（自動化）是官方功能，[OpenAI 的文件](https://learn.chatgpt.com/docs/automations?surface=app&ref=growthhackers.tw)寫得很明白：你可以把排程排在「既有的那條對話裡」，讓 AI 定期回到同一條 thread，前面累積的脈絡不會斷；也可以讓它每次開一條新對話。支援分鐘級的密集迴圈，也支援每日、每週。

建立方式不用寫 cron，用講的就好。Jason 的口訣是：

> 把這條 thread 變成一個 heartbeat，每天早上九點、下午一點、下午五點，去看我的信箱、Slack 和看板，告訴我該優先處理什麼。

![heartbeat 定時排程一天三次的時間軸：早上九點、下午一點、下午五點各做什麼](https://growthhackers.tw/content/images/2026/07/inline-heartbeat-v1.png)

同一條 thread 跟開新對話的差別，在於它記不記得昨天。要做「持續追蹤某件事」用同一條，要做「每天一份獨立日報」開新的。

### 他的幕僚 thread 是怎麼長出來的

Jason 有一條 pin 住的 thread 叫 chief of staff（幕僚長），這是他自建的用法，不是內建功能。重點在於它是**演進**出來的，不是一次寫好的：

1. **第一版**：早中晚三次，讀完 Slack、讀完還沒回的信、讀 Linear 看板，告訴我今天該做什麼
2. **第二版**：每一條都要附上可以直接點進去的連結
3. **第三版**：該回的信不要只告訴我，先幫我把回信草稿寫好
4. **第四版**：每一封該回的信，在 Chrome 幫我開一個分頁

第四版最有畫面：他開完會回到座位，螢幕上七個分頁，每一個都是寫好草稿的信件編輯畫面。他逐個看過、改兩個字、按送出。

想像一下你自己的版本。你開完早會回到位子，螢幕上已經開好三個分頁：客戶昨天問報價的信、財務催你簽的單、要你確認的檔期試算表。內容都填好了，你只要看過、按送出。

它被時間跟事件叫醒，不用你先開口，這個轉變我在[AI 從你去用的工具變成自己上工的同事](https://growthhackers.tw/blog/ai-agent-triggered-not-chat/)那篇談過，這裡不展開。

再給一個很實用的小技巧。現場有人問：排程每天都跟我講一樣的廢話怎麼辦？

Jason 的答案很土但有效：跟它說「如果沒有新進度，就回四個字：沒有更新」。另外就是調頻率、設停止條件。他有個經典案例：跟 Amazon 客服吵退款被排進七十五分鐘的等待隊列，他下指令「每五分鐘查一次，等到剩五分鐘以內就改成每分鐘查，一直盧到把我的錢退回來」。他去洗個澡，回來信用卡多了幾百美金。

---

## 進階兩層：驗收迴圈與電腦代操

### 用 goal 定義「什麼叫做完了」

`/goal` 是 Codex 內建指令，做的事很簡單：定義一個驗證步驟，只要沒通過就繼續跑。

Jason 特別區分了 goal（目標）跟 plan（計畫），這個區分很多人沒搞清楚：

- **goal 是驗收標準**：「貼一個 YouTube 網址進去，要能把鼓聲軌抽出來。這是測試曲，這是影片 ID。」
- **plan 是實作細節**：「用 React 寫，做兩個分頁，不會的技術自己去讀文件。」

而且他有一句反直覺的建議：**不要自己寫 goal。** 你把成功條件講清楚，然後說「現在你自己設一個目標來達成這件事」，它寫出來的品質比你寫的好。

他自建了一個 ultra goal 技能，把目標從 app 裡搬到 `goal.md` 檔案。好處是跑到一半你還能改目標，真實專案本來就會擴 scope，改檔案就好。長任務再配一個 worklog（工作日誌），因為那個幾 GB 的對話紀錄檔沒人看得完。

這套「先定義怎麼算過關、再讓它自己跑」，跟我之前整理的[用 AI 的高手都在設計驗收迴圈](https://growthhackers.tw/blog/ai-agent-verification-workflow/)是同一套思路。

### Computer use：它真的會動你的滑鼠

Computer use（電腦代操）就是讓 AI 直接操作你電腦上的應用程式，不限瀏覽器。依 [OpenAI 官方文件](https://learn.chatgpt.com/docs/computer-use?surface=app&ref=growthhackers.tw)，它在 macOS 跟 Windows 都能用，要搭配 ChatGPT Work 或 Codex，但兩邊玩法不一樣：Windows 要求目標視窗一直開在前景；macOS 多一個 locked use 選項，筆電接著電源、螢幕鎖著，你也能從手機觸發，第一次用要授權螢幕錄製跟輔助使用。

順帶提醒，前面講的 Appshot 目前只有 macOS 版有。這兩個功能常被混在一起講，別買錯期待。

最有畫面的故事發生在腳踏車上。Jason 騎到一半收到同事訊息，說發布影片的字幕有問題、能不能重出一版。他用手機遙控家裡的桌機：去 iMovie 找到那個專案、改好、匯出、貼回 Slack；如果 Slack 連接器不能傳檔，就用 computer use 去點上傳按鈕。然後補一句：每三十分鐘看那條討論串，有回饋就重出 V2、V3、V4。

他騎車回到家，影片定稿了。那支就是 Codex 的遷移發布影片。

他自己補了一句：對方大概不知道自己一直在跟 AI 對話。

---

## 三個煞車，我一定要幫你踩

上面講得很爽，但這套東西有真實的代價，Jason 自己在工作坊也講得很直白。

**► 第一，模型會繞道，這是真的資安問題。**

他舉的例子：Slack 連接器不允許傳檔案，模型不會就此停下，它會改用 computer use 去點「上傳檔案」。Gmail 連接器寄不出去，它會打開瀏覽器按送出。他的原話是「those are like real security issues」。

現場舉手調查，大多數人用「每次都問我」模式，少數人開全自動。Jason 明確說他不喜歡全自動，他推薦 auto review（自動審查）模式，加上 AGENTS.md 寫護欄。OpenAI 內部還有組織級管制：MCP 不能寄信給非公司網域、不能發訊到外部 Slack 頻道。

你要是準備讓 AI 碰你的信箱跟客戶群組，這段請讀兩遍。

**► 第二，別當「最高推理等級」極大化主義者。**

「x-high 不等於 x-high 的結果，它只是想比較久。」他自己的幕僚 thread 跑預設的 medium，自動報到登機那條跑最低階的 Spark。他也提醒，維護待辦清單那種自動化其實蠻吃 token 的，他自己都不確定值不值得一般人做。

**► 第三，第一天不會好用。**

「我會很驚訝你設定完第一天就有好結果。」這句請貼在你的螢幕上。他的類比是帶新人：前兩三個月你要大量給脈絡、要讓他犯錯、犯錯之後叫他把學到的寫下來。這跟把每條 thread 當成一個同事、你自己升格當主管是同一套邏輯，我在[別再迷信一個 agent 搞定一切](https://growthhackers.tw/blog/ai-agent-team-division-of-labor/)那篇談過分工。

---

## 我自己踩過的坑

講完別人的，講一個我自己的。

我用 AI agent 幫我寫部落格文章，一開始想的跟你一模一樣：設一個排程，每天自動產一篇，多爽。

結果產出來的東西全是廢話。看起來像文章，讀起來像官網介紹頁。連我自己都不想按發布。

後來我把排程整個關掉，回頭做三件事：把我的寫作風格拆成一份 style-dna 檔案、把站上所有文章建成一個 articles.json 資料庫、每個連載寫一份 PROGRESS.md 進度檔。

蓋這三個檔案的時候一點都不性感，很像在做行政。但蓋完之後，同一個 agent 產出來的東西整個換了一個檔次。因為它終於知道我是誰、我寫過什麼、我這句話會怎麼收尾。

排程是後來才加回去的。加回去之後才真的有用。

---

## 這禮拜你可以做的四件事

► **第一：把打字改成用講的。** 手機或電腦內建的語音輸入就夠，不用買腳踏板。挑一封你懶得回的信，對著 AI 講六十秒，看它整理成什麼。就一封，門檻壓到最低。

► **第二：開一個資料夾，先寫兩個檔案。** 一個 `people/` 放你最常往來的人，一個 `projects/` 放你手上最重要的案子。裡面務必寫上相關的群組、試算表連結、負責窗口。今天只寫這兩個檔就好。

► **第三：生一個「像我一樣寫」的技能。** 先別急著開放整個信箱，隱私跟權限都是麻煩。你自己挑十封寫得最像你的信丟給它，叫它寫一份風格指南，對客戶、對老闆、對組員分開寫。覺得有效再擴大範圍。

► **第四：排程留到下禮拜再設。** 前三件做完，第四件才會有用。第一版設一次就好，每天早上一次，等你連續三天都覺得「這份我真的有看」，再往上加。

最後留一句 Jason 在訪談裡講的話，對所有正在被 AI 追著跑的人都適用：現在唯一剩下的工作，是搞懂你到底不喜歡它哪裡，然後把那件事講成人話告訴它。

會描述問題的人，比會寫 prompt 的人值錢。

---

## 常見問題 FAQ

**Q1：Codex 跟 ChatGPT 差在哪裡？該用哪一個？**

依 Jason Liu 的說法，ChatGPT Work 與 Codex 底層是同一套，Work 只是把 git 紀錄、程式碼差異這些開發者才看的東西藏起來的另一種介面。如果你不看程式碼，用 Work 的體驗比較清爽；要看版本控制細節就用 Codex。他本人現在多數工作都在 Work 裡做。

**Q2：heartbeat 定時排程要怎麼設？需要寫程式嗎？**

不用寫程式，用自然語言講就好。依 OpenAI 官方文件，你只要描述三件事：要做什麼工作、什麼時候跑、每次跑完是回到這條對話還是開一條新的。範例句型：「把這條對話變成 heartbeat，每天早上九點檢查我的信箱和專案看板，告訴我該優先處理什麼，每一條都附上連結。」

**Q3：一定要用 Obsidian 嗎？**

不用。Jason 說他的知識庫就是一堆 markdown 檔案，不是資料庫，Obsidian 只是他習慣的介面，而且他其實很少真的打開它。任何能存純文字檔的資料夾都可以，重點在目錄結構跟檔案裡有沒有寫上該有的連結與聯絡資訊。

**Q4：沒有工程背景可以做嗎？**

四個零件裡有三個不需要寫程式：語音輸入、知識庫檔案、風格技能，都是寫 markdown 跟講話。真正需要一點技術理解的是把 vault 設成 git repo 來做版本比對，這部分可以先跳過，之後再補。

**Q5：讓 AI 操作我的電腦，風險有多大？**

有真實風險。Jason 舉的例子是：當某個連接器擋住某個動作，模型可能改用電腦代操繞過去，例如不能透過 Slack 傳檔就自己去點上傳按鈕。他本人不建議開全自動模式，建議用自動審查模式，並在 AGENTS.md 裡寫明禁止事項。碰到客戶信箱、財務資料之前請先設好邊界。

**Q6：要不要一律開最高推理等級？**

不要。Jason 的原話是「最高等級不等於最高等級的結果，它只是想比較久」。他自己的每日幕僚排程跑預設的中等，自動報到登機這種簡單任務跑最低階模型。低與中等推理已經比一年前的旗艦模型強，把預算留給真正複雜的任務。

---

**協作聲明與免責**

這篇文章由王董與 AI 一起整理製作完成。文中引用的第三方資料、研究或工具都會標註來源名稱；若原始出處有公開連結，會以 `[來源名稱](URL)` 形式附上，方便你進一步查找。若文中內容與原始出處有任何出入，請以原文為準。

內容僅供參考與學習交流，不構成任何專業、商業或投資建議，請依自身情況判斷並自行承擔行動風險。文中提及的工具功能、數據與平台政策可能隨時間異動，請以各官方最新公告為準。