回到頂部
AI Coding Agent 從 Issue 到 PR 的工作流

AI Coding Agent 工作流實戰:從 Issue 到 PR 的 6 步驟

Codex、Claude Code、Cursor Agent 已經能讀 repo、改檔、跑測試與開 PR。本文整理一套可落地的 AI coding agent 工作流,從任務拆解、權限邊界、測試到 review 全流程。

AI coding agent 真正有價值的地方,不是「請幫我寫一個功能」這種模糊請求。

它最適合的任務,是能被描述、能被限制、能被測試、能被 review 的工程工作。

OpenAI Codex、Claude Code、Cursor Agent、GitHub Copilot coding agent 都在往同一個方向走:讀 repo、理解 issue、修改檔案、跑測試、整理 diff,最後把結果交給人類審查。

這代表工程團隊需要的不是更多 prompt,而是一條穩定的 agent workflow。

下面這套流程可以用在 Codex、Claude Code、Cursor、Cline、Aider 等工具。差別只在介面,核心原則一樣:先定義邊界,再讓 agent 動手。

什麼任務適合交給 AI coding agent?

先判斷任務類型。

任務適合程度原因
補單元測試行為可驗證,風險低
修小型 bug有錯誤訊息與重現步驟時,agent 很有效
更新 README 或 runbook不直接影響執行邏輯
小型重構中高需要清楚限制檔案與測試
新增低耦合功能需要明確 acceptance criteria
大型架構改版需要人類先拆任務與定義策略
生產事故處理需要即時判斷、回滾與責任承擔
權限或付款流程風險高,必須嚴格 review

如果任務無法清楚描述成功條件,就不要直接交給 agent。

一個好任務至少要有三件事:

  • 明確的輸入:issue、錯誤訊息、需求文件、相關檔案
  • 明確的限制:能改哪些檔案,不能碰哪些路徑
  • 明確的驗收:測試、畫面行為、API 回應、錯誤條件

步驟一:把 Issue 寫成可執行任務

AI coding agent 很吃 issue 品質。

不好的 issue:

使用者登入有問題,幫忙修一下。

好的 issue:

使用者輸入錯誤密碼時,登入 API 應回傳 401,且錯誤訊息不可透露帳號是否存在。請檢查 auth 相關模組,補上測試,避免改動註冊流程。

差別在於第二個 issue 提供了:

  • 具體行為
  • 安全限制
  • 相關範圍
  • 不可改動的邊界
  • 測試要求

這種 issue 才適合給 agent。

你可以用這個模板:

任務目標:
需要修正或新增什麼行為?

背景:
目前行為是什麼?為什麼不符合預期?

限制:
哪些檔案或模組可以改?哪些不能改?

驗收條件:
完成後應通過哪些測試?有哪些 edge case?

風險提醒:
是否涉及權限、付款、個資、資料遷移、外部依賴?

這不是寫給 AI 看而已,也是寫給 reviewer 看。

步驟二:先叫 agent 讀 repo,不要立刻改檔

很多人用 AI coding agent 的第一個錯誤,是一開始就叫它改 code。

比較穩的做法是先要求它只讀、只分析、只回報。

可以這樣下任務:

請先不要修改任何檔案。
請閱讀這個 issue 相關的程式碼,找出可能需要修改的檔案。
回覆請包含:
1. 相關檔案與原因
2. 現有資料流
3. 可能的 root cause
4. 建議修改計畫
5. 需要補的測試

這一步的重點是避免 agent 太快動手。

如果它連相關檔案都找錯,後面改得越多,清理成本越高。

步驟三:審查計畫,再允許改檔

agent 提出計畫後,人要先看。

你要檢查:

  • 它找的檔案是否合理
  • 它有沒有漏掉資料模型或 API contract
  • 它是否打算改太多檔案
  • 它是否想新增不必要依賴
  • 它是否理解測試方式
  • 它是否忽略權限與安全邊界

如果計畫太大,要把任務切小。

例如它想一次改登入、註冊、忘記密碼、session refresh,就要退回去要求:

這次只處理錯誤密碼回傳 401,不改註冊與忘記密碼。請把計畫縮小到登入流程。

AI coding agent 不是不能做大任務,而是大任務要被切成可 review 的小步。

步驟四:限制修改範圍與權限

讓 agent 動手前,先給邊界。

個人開發者最少要限制:

  • 只改指定目錄
  • 不讀 .env、金鑰、憑證、客戶資料
  • 不自動安裝新依賴
  • 不執行破壞性命令
  • 不修改資料庫 migration,除非任務明確需要
  • 不改 CI、部署、付款、權限相關設定,除非事先批准

企業團隊則應該把這些做成工具層規則,例如 sandbox、approval gate、RBAC、policy 與 audit log。

一個實用原則是:agent 能做的事,應該比人類開發者少,而不是一樣多。

人類可以臨場判斷。agent 需要邊界。

步驟五:要求 agent 自己跑測試,但不要只相信測試通過

agent 改完後,應該要求它回報:

  • 改了哪些檔案
  • 為什麼這樣改
  • 跑了哪些測試
  • 測試結果是什麼
  • 還有哪些測試沒有跑
  • 是否有已知風險

但測試通過不等於可以 merge。

AI 可能會:

  • 為了讓測試過,把測試寫得太寬鬆
  • 只測 happy path
  • 改掉測試而不是修正產品邏輯
  • 漏掉 race condition
  • 忽略權限與資料邊界
  • 引入看似合理但不必要的抽象

所以測試通過只是起點,不是終點。

步驟六:把 agent 產出的 diff 當成外部 PR review

AI 產生的 PR,不應該因為它「看起來很完整」就降低 review 標準。

reviewer 至少要看六層。

層級檢查問題
任務對齊這個 diff 是否真的解決原 issue?
行為正確edge case、錯誤處理、權限是否正確?
測試品質測試是否能抓到錯誤,而不是只增加行數?
安全風險是否碰到 secrets、依賴、輸入驗證、資料權限?
維護性是否增加不必要抽象或隱藏複雜度?
範圍控制是否改了超出任務的檔案或行為?

如果 PR 太大,直接拆。

AI 很容易一次做太多,因為它不會感受到 reviewer 的負擔。工程團隊要保留小 PR 文化。

一套可直接使用的 agent 工作流

下面是完整流程。

1. 建立 issue
   寫清楚目標、背景、限制、驗收條件、風險。

2. 只讀分析
   要求 agent 先找相關檔案與提出計畫,不改檔。

3. 人類審查計畫
   縮小範圍,排除不必要改動。

4. 限制權限後改檔
   指定可改目錄、禁止 secrets、禁止未批准依賴。

5. 跑測試與整理 diff
   要求 agent 回報測試、未測項目與風險。

6. 正式 PR review
   人類依任務對齊、測試、安全、維護性審查。

這套流程看起來比直接下 prompt 慢,但實際上更省時間。

因為真正浪費時間的不是多花三分鐘寫清楚任務,而是讓 agent 改出一個巨大、漂亮、但方向錯誤的 diff。

個人開發者怎麼用?

個人開發者可以從低風險任務開始。

推薦順序:

  1. README 與文件更新
  2. 測試補強
  3. 小型 bug fix
  4. 型別錯誤與 lint 修正
  5. 小型重構
  6. 低耦合功能

不要一開始就讓 agent 做登入、付款、權限、資料遷移。

如果你是 solo 開發者,更要保留 review 習慣。因為沒有同事幫你擋錯,agent 產出的問題會直接進產品。

團隊導入怎麼做?

團隊導入 AI coding agent,重點不是買哪個工具,而是先定義流程。

建議從三個規則開始:

1. AI PR 必須標記

PR 描述應標明:

  • 哪些部分由 AI 協助
  • 使用了哪個工具
  • 人類做了哪些 review
  • 測試由誰確認

這不是要羞辱使用 AI,而是建立可追蹤性。

2. 高風險檔案需要 owner review

例如:

  • auth
  • billing
  • migration
  • deployment
  • secrets
  • permission
  • security middleware

這些檔案不應由 AI PR 直接通過一般 review。

3. Agent 只能在受控環境跑

至少要做到:

  • 分支或 worktree 隔離
  • sandbox 執行
  • 危險命令 approval
  • 禁止讀取 secrets
  • 所有變更進 PR
  • CI 通過仍需人類 review

這些規則會讓導入慢一點,但能讓團隊不被第一波事故打到。

常見錯誤

錯誤一:把需求丟給 agent,沒有驗收條件

AI 會努力完成任務,但它不一定知道真正的成功標準。沒有 acceptance criteria,agent 很容易做出看似合理的錯誤解法。

錯誤二:讓 agent 一次改太多

一次改十個檔案以上,review 成本會快速上升。除非是機械式重構,否則應該拆小。

錯誤三:測試通過就 merge

測試可能不完整,也可能被 AI 改得失去保護力。reviewer 要看測試是否真的能抓到錯誤。

錯誤四:讓 agent 自動裝依賴

AI coding agent 可能選到不必要、不維護、甚至有供應鏈風險的套件。新增依賴應該人工確認。

錯誤五:沒有紀錄 AI 做了什麼

如果出事後無法知道 agent 讀了什麼、改了什麼、跑了什麼命令,團隊就無法改善流程。

FAQ

AI coding agent 可以直接開 PR 嗎?

可以,但 PR 不等於完成。比較成熟的做法是讓 agent 準備 PR,包含 diff、測試結果與風險說明,再由人類 reviewer 決定是否 merge。

什麼任務最適合第一次交給 agent?

文件更新、測試補強、小型 bug fix 最適合。它們有明確輸入與低風險輸出,容易建立信任與 review 標準。

如果 agent 改錯了,要怎麼避免下次再發生?

不要只修正結果,要修正 workflow。檢查 issue 是否不清楚、範圍是否太大、測試是否不足、權限是否太寬,並把新的限制寫進下一次任務模板。

Codex、Claude Code、Cursor 的 workflow 一樣嗎?

核心一樣:先讀 repo、提出計畫、限制範圍、分段改檔、跑測試、正式 review。差別在介面與整合程度。Codex 更偏多 agent 與企業治理,Claude Code 偏 terminal-first,Cursor 偏 IDE 內日常開發。

結論:好的 agent workflow,本質上是好的工程流程

AI coding agent 不會自動讓工程團隊變成熟。

如果原本 issue 模糊、測試不足、review 草率、權限混亂,agent 只會把這些問題放大。它會更快產出程式碼,也會更快產出技術債。

反過來,如果團隊有清楚 issue、良好測試、小 PR、嚴格 review、明確權限邊界,AI coding agent 會非常有用。

所以導入 AI coding agent 的核心不是「讓 AI 寫更多 code」。
而是建立一條能讓 AI 安全產出、讓人類有效審查、讓系統穩定交付的流程。

工具會換。
流程會留下。

延伸閱讀

資料來源

№ · further reading

延伸閱讀