前幾天讓 Claude Code 先讀懂專案後,我開始思考另一個問題
如果 AI 自己寫錯 Code,它能不能自己發現?
以前的流程通常是 AI 寫完 Code,我自己執行,發現錯誤後再把錯誤訊息丟回 AI,讓它修正。這樣AI 還是需要等待我的指令。
所以這次我決定直接實際測試。
我先準備一個簡單的 Python 程式,故意讓它有錯誤
接著我沒有直接告訴 Claude Code 哪裡錯,而是請它:
「請執行這個程式,如果發現錯誤,請自行分析原因並修正,修正後再次執行。
Claude Code 執行後發現:
執行後出現錯誤:
TypeError: add_user() missing 1 required positional argument: 'email'
原因是 add_user 函式定義需要 name 和 email 兩個參數,但呼叫時只傳入了 "Tom",缺少 email。我補上 email 參數後再次執行。
再重新執行後,程式就可以正常運作。
這次的流程就變成:
寫 Code → 執行 → 發現錯誤 → 分析 → 修正 → 再次測試
這跟以前「我發現錯誤,再告訴 AI」的方式已經有明顯差別
不過我也發現,程式可以執行不代表程式一定正確。像邏輯錯誤可能不會產生任何 Exception,所以還是需要測試和明確的驗證標準。
這次實驗讓我更理解 Agent 的概念:AI 不只是負責「寫 Code」,而是可以透過執行、觀察、修正形成一個循環
明天研究主題:Code 讓 Claude Code 自己寫 Test