Lesson 033:Cursor、Codex 在做什麼? 已經讓你看過 Coding Agent 的概念。
到了 2026,這個差別更值得再拆清楚:
Autocomplete
≠
Chat Assistant
≠
Coding Agent
Autocomplete:猜你下一段 Code
最早大家熟悉的 AI Coding 很像:
def calculate_total(items):
# AI 猜接下來你可能要寫什麼
它主要看目前檔案與附近 Context,幫你補完下一行或下一段。
很快,但它不一定真的理解整個 Repository。
Chat Assistant:你問,它回答
再進一步,你可以問:
這個 function 為什麼會造成 race condition?
AI 讀你給的程式碼,再解釋或提出 Patch。
但很多時候真正執行修改、跑測試、開 PR 還是你做。
Coding Agent:把任務交出去
Coding Agent(程式開發代理) 的差別是它有工具與執行迴圈。
一個任務可能長這樣:
Issue:登入失敗時錯誤訊息會消失。
請找出原因、修正、補 regression test,不要改 API contract。
Agent 接到後可能:
- 搜尋 Repository。
- 找相關 Component。
- 讀測試。
- 重現 Bug。
- 修改多個檔案。
- 跑 Test / Lint。
- 看失敗結果。
- 再修。
- 產生 Diff。
- 開 Pull Request(PR)。
這已經不是「寫一段 Code」,而是執行一個工程 Workflow。
Repository Context 很重要
Lesson 027:CLI、Git、GitHub 已經講過 Repository 是一個有版本歷史、檔案結構與協作流程的專案。
Coding Agent 要做好,不能只看你正在開的檔案。
它需要知道:
- 哪裡是 Source
- 哪裡是 Test
- Build Command
- Coding Convention
- Dependency
- CI 規則
- 哪些檔案不能動
所以很多 Agent 會先大量 Search / Read,再開始改。
Tool 才是 Agent 的關鍵
它可能需要:
- File Read / Write
- Search
- Terminal
- Git
- Test Runner
- Browser
- GitHub API
這可以接回 Lesson 020:Agent 的能力不只來自模型「懂多少」,還來自它能操作哪些 Tools。
為什麼 Agent 一定要跑測試?
因為「看起來合理的 Code」不代表真的能跑。
好的 Coding Agent Loop 應該是:
修改
→ 測試
→ 讀錯誤
→ 修正
→ 再測試
而不是:
生成一大段 Code
→ 宣稱完成
PR 是比「直接改 main」更好的交付方式
Pull Request(拉取請求,PR) 讓修改先變成可 Review 的變更集。
GitHub 現在的 Coding Agent 工作流也常以 Issue → Agent → PR → Human Review 這種形式呈現。
好處是:
- 你可以看 Diff
- CI 可以跑
- 可以留言要求修改
- 不必一開始就信任 Agent 直接改正式分支
Agent 有權限,就有供應鏈與安全風險
如果 Coding Agent 可以:
- 讀 Secret
- 安裝任意 Dependency
- 執行 Shell
- Push Code
- 發布 Package
那它就是一個高權限軟體角色。
所以 Lesson 036 的最小權限 非常重要。
GitHub 目前也針對 Coding Agents 提供 CodeQL、Secret Scanning 與 Dependency 檢查等安全驗證,但這些工具仍不能取代 Human Review。
一句話帶走
Coding Agent 的核心不是「更會補 Code」,而是能在 Repository 裡執行一個多步驟工程任務:讀檔、搜尋、修改、跑命令與測試,再交付可 Review 的 Diff 或 PR。模型能力重要,但工具、測試、權限和 Review 同樣重要。
留言
有想法、疑問或想補充的地方,都可以留在這裡。
還沒有留言,來當 1F 吧。