生活分享

代理式工程(Agentic Engineering)是什麼

代理式工程是運用能寫程式、執行工具與根據結果修正的代理來開發軟體,同時由人負責需求、取捨與驗收。本文以社團器材借用系統為例,拆解如何界定任務、提供測試資料、審查變更與處理失敗,說明它和氛圍編碼、代理系統維運的差別。讀完能安排一項可驗證的代理開發工作,也知道何時必須收回決策並釐清規格。

更新日期: 閱讀時間約 7 分鐘

兩座工作臺分別放著規格清單與程式方塊,中間以帶有勾選證據的橋相連,象徵人與代理協作。
圖片:Mokaair (© Mokaair)

代理式工程是在軟體開發中運用編碼代理,讓它不只提出程式,還能執行工具、觀察結果並繼續修改。這裡採用 Simon Willison 在 Agentic Engineering Patterns 中的用法,重點是人與可執行工作的代理如何協作。這個詞也有人用得更廣,因此閱讀其他文章時要先確認作者指的是開發方法,還是製作代理產品。

一般讀者即使不親自寫程式,也可以理解這種合作需要什麼。假設你管理社團器材,想讓借用系統避免同一時段重複借出,代理能協助查程式、修改和測試,但借用規則和驗收仍需要有人說清楚。以下為原創教學情境,資料查證截至 2026 年 9 月 14 日。

代理會執行工作,人仍要定義問題

Willison 特別指出編碼代理能寫也能執行程式,並把工具執行的回饋帶入下一步。這使它和單次貼出程式碼的聊天有所不同。GitHub 的代理說明文件也呈現修改專案並交付審查的工作方式。代理可以代做部分探索與實作,卻不會讓軟體需求、責任和工程取捨自動消失。

器材借用的表面需求是「不要重複借出」,實際還有許多問題:借用時間能否相鄰、取消後何時釋出、管理員能否覆寫、超時未歸還是否阻止下一筆。這些不是模型從程式語法就能推導的答案。人要決定規則,代理才能把它轉成可核對的行為。

一份好的委派描述應說明目前發生什麼、期待發生什麼、可修改範圍與既有約束。例如「同一件器材在重疊時段只能有一筆有效借用,取消的紀錄不佔用時段,歷史紀錄仍可查」。這些具體條件也讓審查者有共同標準,不必只看代理最後表示有信心。

把大需求切成有證據的小交付

先讓代理讀取借用流程與資料結構,再整理現況和疑問,是比直接要求重寫整個系統更容易評估的起點。若它發現前端會阻擋重複借用,但後端沒有檢查,下一步就能聚焦於真正缺口。這不是固定必須跑的儀式,而是讓修改有可追溯的原因。

示例輸入包含同一器材的現有時段、新申請時段及取消狀態。代理先建立重疊、相鄰和取消後再借的檢查案例,再修改判斷規則。預期交付包括必要的程式差異、案例結果與仍未驗證的路徑。若任務同時牽涉外部通知,可以先用測試接收端確認內容,不要把真實寄送當作第一個驗證步驟。

交付範圍要足以解決問題,也要避免把無關重構混在一起。修正借用衝突時順便改首頁配色,會增加審查負擔,還可能掩蓋重要邏輯。代理提出額外改善時,可以另列待辦;只有影響這次正確性的前提問題,才應納入同一輪處理。

讓測試提出反證,而非只是背書

最基本的測試應能在修正前暴露重複借用,修正後阻止它。同時保留正常借用與取消流程,避免把所有申請都拒絕卻誤以為修好了。測試不是問模型「你是否完成」,而是用可觀察的輸入與外部結果判斷需求是否成立。

還要考慮兩位社員同時提交的情況。先查空檔再寫入資料,單次操作可能通過,但同步請求仍可能互相穿過檢查。代理式工程的價值在於能運用工具追查這種情境;是否需要資料庫約束、鎖或交易,則要依現有架構選擇,不能只在前端再加一句提示。

如果測試失敗,先分類原因。規格錯誤要回到規則決定;測試資料不完整要補資料;程式缺陷才進入實作修正。如果代理每次失敗都改不同地方,卻不說明哪個假設被證據推翻,應縮小任務或要求定位。反覆運作本身並不代表正在接近正確答案。

人先提供借用規則,代理讀取程式、修改並執行測試,證據回到人審查;未符合規則的結果返回修正。
代理負責可執行工作,需求取捨與驗收保留清楚的責任位置。 · 圖片:Mokaair (© Mokaair)

審查包含理解、邊界與剩餘風險

人類審查不必逐字重做所有工具工作,但應看懂重要變更的作用與影響。例如借用檢查放在何處、是否涵蓋所有入口、取消紀錄如何儲存,以及修改會不會讓原本合法的相鄰時段被拒絕。看不懂的地方,可以要求代理逐段解釋,再用程式和案例確認說明是否一致。

檢查結果也要保留適用範圍。某個本機測試通過,並不能證明正式資料遷移已成功;展示頁面能操作,也不能證明權限檢查完備。對交付說明而言,清楚列出已驗證與尚未驗證的部分,比把所有狀態合併成「可上線」更有用。

權限應與任務相稱。修正借用規則通常不需要存取社員的完整聯絡資料,也不必取得部署或付款權限。把必要資料做成測試資料,讓代理在可恢復的環境工作,有助於專注實作。需要動到外部狀態時,應有明確授權與可檢查的操作結果。

它和氛圍編碼、AgentOps 的差別

在 Willison 的用法裡,氛圍編碼側重不閱讀生成程式、以試用感覺推進的原型探索;代理式工程則把需求、工具和驗證當成工程工作的一部分。同一個人、同一套工具都可能採取兩種方式,差別不是誰按鍵比較少,也不是是否由 寫了全部程式碼。

AgentOps 關心代理產品運作後的觀測、成本、權限與故障處理;代理式工程則是開發者如何與代理共同做軟體。你可以用代理式工程開發一個完全沒有 AI 功能的借用網站,也可以用一般手寫程式開發需要 AgentOps 的代理服務。兩個詞描述不同層次。

開始嘗試時,選擇一個已有明確輸入、可核對輸出與容易回復的任務,例如修正單一借用衝突。保留失敗案例、需求決定和差異審查,才能累積團隊自己的工作方法。當每輪交付都能說出改了什麼、為何這樣改、證據支持到哪裡,代理的速度才真正成為可使用的開發能力。

代理式開發的責任分工(2026 年 9 月查證)
工作主要產物必須核對的事
定義需求借用規則與範圍衝突、取消與同步申請如何處理
代理實作程式差異和工具結果修改是否對應實際缺陷
人工驗收可追溯的接受決定證據是否涵蓋關鍵行為

  • 生活分享

    世界模型(World Model)是什麼:讓 AI 預測「接下來會怎樣」

    世界模型指 AI 內部用來預測「這樣做之後會怎樣」的模型,但這個詞至少有三種用法:強化學習代理在想像中練習用的環境模型、LeCun 主張預測抽象表示的架構路線,以及能隨操作即時生成畫面的互動環境。內容用示例說明怎麼在想像中規劃,並列出大型語言模型有沒有世界模型的正反研究,附讀新聞時的檢查問題。

  • 生活分享

    視覺語言模型(VLM)是什麼:讓 AI 讀圖片、再用文字回答

    視覺語言模型(VLM)能同時接收圖片與文字,再用文字回答。內容拆解視覺編碼器、連接層與語言模型三段結構,說明 CLIP、Flamingo、LLaVA 三篇論文各補上哪一塊,並和多模態 AI、文字生圖分清楚;也整理它常犯的錯:數錯數量、搞混位置、說出圖裡沒有的東西,附上讀收據時逐行核對的步驟。

  • 生活分享

    溫度(Temperature)是什麼:AI 回答變化程度的取樣參數

    溫度(temperature)是文字生成時調整取樣的參數,讓模型從下一個 token 的機率分布裡抽得更集中或更分散。用假想的台南早餐示例算出低溫與高溫的差別,說明 top-p 的來源和它與 top-k 的差別,並依官方文件與論文指出:調低溫度不代表更準,設成 0 也不保證每次相同,部分模型還不開放調整。

  • 生活分享

    合成資料(Synthetic Data)是什麼:兩種用途、品質控管與模型崩潰

    合成資料是由演算法或模型產生、模仿真實資料特徵的資料,常見用途有兩種:訓練模型,以及在隱私需求下替代真資料。內容依 Self-Instruct、模型崩潰研究(替換與累積資料的差別)與 NIST、ICO 的隱私文件,說明做法、抽查流程,以及它不能保證的事。

最新旅遊情報攻略

資料來源

生活分享