大家在管 AI Coding Agent,可能都搞錯方向了

來源: Facebook — DavidKo Learning Journey 作者: davidko(David Ko) 日期: 2026-05-26(估計) 標籤: aicoding 軟體測試 harnessengineering aiagent feedforward feedback thoughtworks


文章概述

David Ko 分享從 Thoughtworks 的 Birgitta Boeckeler 與 Chris Ford 對談中得到的啟發, 探討「Harness Engineering」——如何透過感測器(sensors)而非責備(nagging)來引導 AI Coding Agent。

核心論點:與其塞滿 markdown 規則檔(AGENTS.md, CLAUDE.md)來「嘮叨」AI agent, 不如建立一套 feedback 系統,讓 agent 自己從錯誤中學習。


核心概念

Feedforward(引導)vs Feedback(回饋)

  • Feedforward(引導):像教小孩騎腳踏車時先扶著——給予規則、指南、限制條件
  • Feedback(回饋):腳踏車裝輔助輪讓小孩自己感受到傾斜——讓環境自動回饋行為結果

兩者缺一不可。

Sensors(感測器)類型

類型工具/技術特徵
LinterESLint, Ruff語法規則檢查
Static AnalysisSonarQube, CodeQL靜態程式碼分析
Test CoverageJest, pytest-cov測試涵蓋率
Mutation TestingStryker, PIT突變測試
Dependency ScanningDependabot, Snyk依賴安全性掃描
Structural TestingArchUnit架構約束測試
AI Code ReviewLLM-as-JudgeAI 程式碼審查

CPU vs GPU 工具分類

類型特徵範例
CPU tools確定性、快速、低成本Linter, Type Checker, Unit Tests
GPU tools非確定性、慢、高成本AI Code Review, LLM as Judge

Shift-Left 策略

將 sensors 盡可能左移(提早執行):

  1. Pre-commit(最快):linter, type checker, 快速測試
  2. Pipeline(較慢/昂貴):整合測試、mutation testing、AI review
  3. Continuous Monitoring:長期監控與回饋

未解決的問題

  • AI 自己寫測試 → 如何驗證「功能正確性」?(測試本身可能也有 bug)
  • 人類角色轉變:從「審查 AI 寫的程式」→「設計讓 AI 能自我審查的系統」

參考資料