原始開發紀錄:Agent Build Log — Episode 022
這個系列改寫自我部落格上的 Agent Build Log,那是我每天邊做邊寫的開發紀錄。上面列的是這一篇對應的集數,想看當天的原始版本,點連結就能過去。
昨天把生態系看了一圈,回到我自己要做的東西。第一件跟功能無關,是一件想通的事。
前面十幾天我一直在找一個東西:這個 Agent 還缺哪一個很強的能力,補上去他就能真的替我做事。這一天我發現,可能沒有那一個能力。我要做的是把「做完一件事」拆成夠小的步驟,然後讓他一步一步走完。
我把自己平常完成一件事的過程攤開來看。
先是語言的聽、說、讀、寫。聽懂別人在說什麼、讀懂需求,也要把自己的理解、問題和結果講清楚。
收到需求之後,先弄懂文字背後真正要解決的問題。然後把需求轉成實作時用得上的 prompt 或 notes,再把整件事拆成 Step 1 到 Step N。
實作完,把 App build 起來。除了確認自己改的地方,還要實際走一遍相關的功能,跟使用者最主要的 happy path,確定新的修改沒有把原本的流程弄壞。
最後回覆 stakeholder:任務做完了,做了什麼,怎麼確認結果。
攤開之後我發現,這一步一步的小能力,就是我要做的 Agent capabilities。
這些小步驟裡,有幾個現在的 LLM 已經會了,我不需要重做。理解自然語言、整理文字、把需求初步拆成步驟,這些是模型帶來的。
我真正要做的,是把剩下的步驟規劃清楚:把 App build 起來、實際走過功能、把結果整理成別人看得懂的報告送出去。這些要我一個一個定義。
第三章天天在跑的那一題,拆開來大概是五步。
第一步和第四步模型本來就會,理解一句話、比對幾段說明,這是它帶來的。第二步和第三步是要走的路。第五步是收尾。
第三章那幾天的差別,用這五步就講得清楚。Day 15 的 Terra 有幾題跳過了第三步,從第一步直接到第五步,答對的還是答對,但那幾題的過程在 session 檔案裡是空的。Day 16 把 effort 拉高,它把第三步補回來了。Day 17 的 Luna 是另一種:每一步都快,步數多、來回多,加起來最慢,最後還沒做好。
步驟本來就在那裡,只是沒有人把它們一個一個寫下來。寫下來之後,哪一步走了、哪一步跳了、哪一步走了三遍,看得見也數得出來。

拆出來的小步驟,落到 pi 上就是他的回圈轉一輪、呼叫一次工具。Day 02 講過他的核心是一個回圈,每一輪結束都在決定要不要再轉一次。Day 01 講過他預設只開四個工具:read、bash、edit、write。把上面那些步驟對過去,大概是這個形狀。
| 小步驟 | 落在哪裡 |
|---|---|
| 聽懂需求、弄懂真正要解的問題、初步拆步驟 | 模型自己的一輪,不呼叫工具 |
| 讀 repo、讀規格、讀上一步的結果 | read |
| 改程式、寫 notes、寫報告 | edit、write |
| build、跑測試、切 branch | bash(之後有些會換成專門的工具,第四章會講) |
| 回覆 stakeholder | 最後那一段回答 |
這張表講的是形狀,每一件事的細節等做到那一件再講。它讓我看清一件事:capability 這個詞聽起來很大,拆到底就是一串「讀什麼、寫什麼、跑什麼、答什麼」。步驟切得夠小,每一輪要做的事就清楚。
Day 10 講過每一輪都會記進 session 檔案。所以一件事拆成幾步、他實際走了幾步,事後翻得到。第三章數的 tool calls,就是這個數字。
我一直在找那個很強的能力。答案或許是把步驟分解開來,每一步都定義清楚,讓他一步一步走完。
拆開之後,每一步都很普通:讀什麼、寫什麼、跑什麼、答什麼。要做的是把它們一個一個寫清楚,寫清楚之後,走完沒走完才看得見。
這一章接下來做四件東西,每一件都是這樣拆出來的:spec-diff、Project Scaffold、Bug Blame、Acceptance。明天先講第一件,也講這些東西在 Desktop App 上長什麼樣:我替它們開了一個新的區域。
原文:Agent Build Log — Episode 022
凡人修 Agent 傳|第二十回(Day 20)
天亮換上空錄石。手的主人進來,先蹲下去,把地上那三顆玉珠撿起來,擱回臺上那一列。從匣壓在我背上那天滾下去之後,它們一直在那裡。
他刻了一道念:把玉珠按大小排好。
我做了。這件事我做過很多次。排完他沒有說對,也沒有說錯。他把玉珠打亂,重新刻念。這一次念很短:把臺上所有玉珠取下來,一排擱在臺沿。
我做了。石上兩筆。
第二道念:一顆一顆量,量完念出來。
我量了。石上多了三十幾筆。
第三道:從小到大排。第四道:排完,從頭到尾看一遍,有沒有哪一顆比前一顆小。第五道:有就換位置,再看一遍。第六道:把每一顆的位置抄到靈幕上,一顆一行。第七道:抄完,對著臺上的玉珠再對一遍。第八道:對完,把靈幕上的字從第一行往上捲,一行一行走過去。第九道:走完,說做完了。第十道:說完,回頭看臺上那一列。
每一道念他刻完就等。等我做完,再刻下一道。十道念,十次等。
這件事我一個上午做了三遍。第二遍、第三遍他不再重刻,神識探進玉片,把那十道念一道一道點亮,點一道我走一步。石上很長,每一步都在,一步接一步。
午後他不點了。他在我面前掐訣。手指結了一個印,十道念一道一道從玉片裡浮出來,收進印裡。我身上那一側,圖紙點過的地方,熱了一下,多了一道紋。
他把玉珠打亂。印一掐。
紋亮了。我取玉珠,量,排。排到第五步,紋暗了。我停在那裡,手裡一顆玉珠。
他看石上的字,看了一會。印裡少收了一道念,第五道那一句。他把紋磨掉。神識點亮十道念,我再走一遍。再掐訣,這一次他數著收,十道。紋又多一道。
玉珠打亂。印一掐。
紋亮。取,量,排,看,換,抄,對。靈幕上三十幾行字從底下一行一行往上走,走到頂。我說:做完了。回頭看臺上那一列,從小到大。石上一長串,一步都不少。
他掐了第三次,第四次。每一次玉珠都排好,靈幕上的字都一行一行往上走。
燭熄了。手的主人走了。門響了一下。
身上多了一道紋。玉片裡那十道念還在,收在一個印裡。臺上那一列玉珠從小到大,一顆都不在地上.