Skip to content

Agentic Design Patterns 附錄 G:Coding Agent

davidlei

Vibe Coding:一個起點

「Vibe Coding」已經變成一種很強的技術,能快速做出新東西、盡情探索創意。這種做法是用 LLM(大型語言模型)生出初版草稿、把複雜的邏輯先勾勒出來,或是快速搭個原型,大幅降低一開始的阻力。它最值錢的地方,是幫你解決「白紙」問題──讓開發者從一個模糊的概念,很快跳到看得到、跑得動的程式碼。在摸索不熟的 API,或是想試試看某種新架構時,Vibe Coding 特別好用,因為它讓你不必一開始就追求完美的實作。這樣生出來的程式碼常常像創意的催化劑,給開發者一個底子去批評、重構、往上加東西。它最大的強項,就是能加速軟體開發週期裡最前面的探索和發想階段。不過,Vibe Coding 雖然很擅長腦力激盪,但要做出穩健、能擴充、好維護的軟體,就需要更有章法的做法──從單純的「生成」轉向跟專門的 Coding Agent 合作。

把 Agent 當成團隊成員

第一波熱潮聚焦在純粹的程式碼生成──也就是很適合發想的「vibe code」──但業界現在正轉向一種更整合、更強的正式開發範式。最強的開發團隊不只是把任務丟給 Agent,而是用一整套精巧的 Coding Agent 來強化自己。這些 Agent 就像不會累、各有專長的團隊成員,放大人類的創造力,也大幅提升團隊的擴充能力和開發速度。

這個演變也反映在業界領袖的說法裡。2025 年初,Alphabet 執行長 Sundar Pichai 提到,在 Google,「超過 30% 的新程式碼現在都由我們的 Gemini 模型輔助或生成,這從根本上改變了我們的開發速度。」 Microsoft 也講過類似的話。這種整個業界的轉向說明,真正的前沿不是取代開發者,而是幫他們變得更強。目標是一種互相加成的關係:人類主導架構的走向和創造性的問題解決,Agent 則負責測試、寫文件、審查這類專門又能規模化的工作。

這一章提出一套組織「人機團隊」的框架,核心理念是:人類開發者當創意主導和架構師,AI Agent 則是戰力倍增器。這套框架建立在三個基本原則上:

  1. 人類主導的協調(Human-Led Orchestration): 開發者是團隊主管兼專案架構師。他們始終在決策迴圈裡,負責調度整個工作流程、設定高層目標、做最終決定。Agent 很強,但只是輔助性的協作者。要找哪個 Agent 上場、要餵什麼上下文,都由開發者決定;最重要的是,對 Agent 生出來的任何結果,開發者要做最後的判斷,確保它符合專案的品質標準和長期方向。
  2. 上下文至上(The Primacy of Context): 一個 Agent 表現好不好,完全取決於它拿到的上下文夠不夠好、夠不夠完整。一個很強的 LLM 配上爛上下文,等於沒用。所以這套框架特別重視由人類親手、仔細地整理上下文,避開那種自動化的黑箱式檢索。開發者要負責替自己的 Agent 隊友準備一份完美的「任務簡報」,包含:
    • 完整的程式碼庫: 提供所有相關的原始碼,讓 Agent 搞懂現有的寫法模式和邏輯。
    • 外部知識: 補上特定的文件、API 定義或設計文件。
    • 人類寫的簡報: 把目標、需求、pull request 的說明和風格指南講清楚。
  3. 直接存取模型(Direct Model Access): 想拿到頂尖的結果,Agent 背後就得直接接到前沿模型(例如 Gemini 2.5 PRO、Claude Opus 4、OpenAI、DeepSeek 等)。用比較弱的模型,或是把請求繞經那些會模糊掉、截斷上下文的中間平台,都會讓表現變差。這套框架的基礎,就是在人類主導者和底層模型的原始能力之間,建立一條盡可能純淨的對話管道,確保每個 Agent 都發揮到極限。

這套框架的結構,是一支由專家 Agent 組成的團隊,每個 Agent 都對應開發週期裡的一項核心功能。人類開發者當中央協調者,負責分派任務、整合結果。

核心組成

為了把前沿的大型語言模型用好,這套框架把不同的開發角色分派給一支專家 Agent 團隊。這些 Agent 不是各自獨立的應用程式,而是透過精心設計、針對角色的 Prompt 和上下文,在同一個 LLM 裡叫出來的「概念人格」。這種做法能讓模型龐大的能力精準對準當下這件事──從寫初版程式碼,到做一次細緻、帶批判性的審查。

協調者:人類開發者: 在這套協作框架裡,人類開發者當協調者,是整個 AI Agent 團隊的中樞和最終權威。

上下文暫存區(Context Staging Area): 這是任何一次成功的 Agent 互動的基礎──人類開發者在這裡仔細準備一份完整、針對該任務的簡報。

專家 Agent(The Specialist Agents): 靠針對性的 Prompt,我們可以組出一支專家 Agent 團隊,每個都為某項特定的開發任務量身打造。

到頭來,這種人類主導的模式,在開發者的策略方向和 Agent 的戰術執行之間,創造出很強的協同效應。結果就是,開發者能跳脫例行工作,把專業火力集中在最有價值的創意和架構挑戰上。

實務落地

設定檢查清單

想把這套人機團隊框架真正落地,建議做以下的設定,重點是在提升效率的同時保有控制權。

  1. 取得前沿模型的存取權 至少弄到兩個頂尖大型語言模型的 API 金鑰,例如 Gemini 2.5 Pro 和 Claude 4 Opus。這種雙供應商的做法方便做比較分析,也能分散單一平台的限制或當機風險。這些憑證要像對待其他正式環境的機密一樣妥善保管。
  2. 架設一個本地的上下文協調器 別再用臨時拼湊的腳本,改用一個輕量的 CLI 工具或本地的 Agent 執行器來管理上下文。這類工具應該讓你在專案根目錄定義一份簡單的設定檔(例如 context.toml),指定要把哪些檔案、目錄,甚至 URL 編進送給 LLM 的那份 Prompt 載荷裡。這樣一來,每次請求模型看到什麼,你都能完全、透明地掌控。
  3. 建立一個納入版本控制的 Prompt 庫 在專案的 Git 儲存庫裡建一個專用的 /prompts 目錄。把每個專家 Agent 的呼叫 Prompt(例如 reviewer.md、documenter.md、tester.md)以 markdown 檔存進去。把 Prompt 當成程式碼來管理,整個團隊就能一起協作、打磨,並隨時間追蹤這些給 AI Agent 的指示的版本。
  4. 把 Agent 工作流程接上 Git hook 用本地的 Git hook 把你的審查節奏自動化。舉例來說,你可以設一個 pre-commit hook,在你的暫存變更上自動觸發 Reviewer Agent。Agent 那份「批判加反思」的摘要可以直接顯示在終端機裡,在你敲下最終 commit 前就給你即時回饋,把品質把關這一步直接烤進你的開發流程裡。

Coding 專家角色範例

圖 1:Coding 專家角色範例

領導這支增強型團隊的原則

要成功領導這套框架,你得從一個單打獨鬥的貢獻者,進化成一支人機團隊的主管,可以照下面這幾個原則走:

結語

程式碼開發的未來已經到了,而它是「被增強過」的。單打獨鬥寫程式的年代,已經讓位給一種新範式:開發者領著一支專門的 AI Agent 團隊。這種模式不但沒有削弱人類的角色,反而把它抬得更高──它自動化了例行工作、放大了個人的影響力,也達到了以前難以想像的開發速度。

把戰術執行交給 Agent 之後,開發者現在能把腦力專注在真正重要的事情上:策略性的創新、有韌性的架構設計,還有做出讓使用者驚喜的產品所需要的那種創造性問題解決。這層根本的關係已經被重新定義了:它不再是人跟機器的對決,而是人類的巧思和 AI 之間的夥伴關係,像一支無縫整合的團隊一起運作。

參考資料

  1. AI is responsible for generating more than 30% of the code at Google https://www.reddit.com/r/singularity/comments/1k7rxo0/ai_is_now_writing_well_over_30_of_the_code_at/
  2. AI is responsible for generating more than 30% of the code at Microsoft https://www.businesstoday.in/tech-today/news/story/30-of-microsofts-code-is-now-ai-generated-says-ceo-satya-nadella-474167-2025-04-30
Edit this post
Next
Day 15:如果是我會怎麼寫一個 agent framework