調試模式可幫助你找出根本原因,並修復難以復現或理解的棘手缺陷。智能體不會立即編寫代碼,而是會先提出假設、添加日誌語句,並利用運行時信息精確定位問題,再進行鍼對性修復。
何時使用調試模式¶
調試模式尤其適用於:
- 可復現但難以定位的缺陷:你知道出了問題,但僅靠閱讀代碼難以看出原因
- 競態條件和時序問題:取決於執行順序或異步行爲的問題
- 性能問題和內存泄漏:需要通過運行時性能分析才能瞭解的問題
- 原本正常的功能出現迴歸:需要追蹤發生了哪些變化時
當標準智能體交互難以解決某個缺陷時,調試模式會基於運行時證據,而非猜測修復方案,提供另一種思路。
工作原理¶
-
探索並提出假設:智能體會探索相關文件、構建上下文,並針對潛在的根本原因提出多個假設。
-
添加埋點:智能體會添加日誌語句,將數據發送到 Cursor 擴展中運行的本地調試服務器。
-
復現缺陷:調試模式會引導你復現缺陷,並提供具體步驟。這讓你始終參與其中,並確保智能體能夠捕獲真實的運行時行爲。
-
分析日誌:復現後,智能體會分析收集到的日誌,並根據運行時證據找出真正的根本原因。
-
進行鍼對性修復:智能體會進行直接解決根本原因的針對性修復,通常只需修改幾行代碼。
-
驗證並清理:你可以重新執行復現步驟來驗證修復結果。確認後,智能體會移除所有埋點。
調試模式提示¶
- 提供詳細上下文:對缺陷及其復現方式描述得越詳細,智能體的埋點效果就越好。請附上錯誤消息、堆棧跟蹤和具體步驟。
- 嚴格遵循復現步驟:執行智能體提供的步驟,確保日誌捕獲到實際問題。
- 必要時多次復現:多次復現缺陷可能有助於智能體識別競態條件等棘手問題。
- 明確說明預期行爲與實際行爲:幫助智能體瞭解應發生什麼,以及實際發生了什麼。
切換模式¶
- 在智能體中使用模式選擇下拉菜單
- 按 Shift+Tab 快速切換