處理大型程式碼庫
在大型程式碼庫中導覽與工作的策略
處理大型程式碼庫需要特定策略來管理上下文限制並維持生產力。本指南提供實用的工作流程,協助你使用 Verdent for VS Code 有效率地導覽、理解並修改大型專案。
使用 Explorer 代理探索程式碼庫
假設你剛接觸一個大型程式碼庫,需要找出特定功能實作的位置。
提出廣泛的探索性問題
Where is user authentication handled in this codebase?Verdent 會自動委派給 Explorer 代理,這是一個對 token 使用高效的程式碼庫搜尋專家。
Explorer 高效搜尋
Explorer 代理會:
- 搜尋檔案名稱與路徑
- 對程式碼內容進行關鍵字 grep
- 分析架構模式
- 回傳包含檔案路徑與程式碼片段的結果
精煉你的搜尋
Show me all files that import the authentication moduleExplorer 可以執行後續搜尋以縮小結果範圍。
平行化複雜搜尋
若要進行全面探索,Verdent 可以平行執行多個 Explorer 代理:
- Explorer 1:尋找身分驗證邏輯
- Explorer 2:尋找授權邏輯
- Explorer 3:尋找工作階段管理
透過平行搜尋,結果能更快回傳。
提示:
- Explorer 代理在大型程式碼庫中高效運作,不會佔滿主要上下文
- 多個 Explorer 代理可同時搜尋不同面向
- 使用 Explorer 進行模式比對與架構探索
- 結果包含檔案路徑與相關程式碼片段以提供上下文
將任務拆解成可管理的區塊
假設你正在處理一個大型程式碼庫,需要新增一項牽涉許多檔案的功能。
找出自然的任務邊界
與其一次要求所有事情:
Phase 1: Add the data models for the notification system先聚焦於一個獨立的元件。
完整完成該階段
在進入第 2 階段之前,先完整處理第 1 階段,包括測試。這會建立一個乾淨的檢查點。
提交你的進度
git add .
git commit -m "feat: add notification data models"提交可建立一個安全的回滾點。
為下一階段清除上下文
對於複雜任務,在進入下一階段前先清除上下文。這能確保 Verdent 有足夠的上下文容量以維持最佳效能。
Phase 2: Build the notification API endpoints using the data models以全新且僅聚焦於第 2 階段的上下文開始新工作階段。
提示:
- 自然的斷點可避免上下文耗盡
- 每個階段都應可獨立測試
- 在各階段之間提交可進行安全的實驗
- 全新工作階段能保持上下文乾淨且聚焦
善用 Plan Mode 進行大規模變更
假設你需要重構一個散佈在大型程式碼庫數十個檔案中的功能。
從 Plan Mode 開始
Switch to Plan Mode: Refactor the payment processing logic to use a new payment provider across all filesPlan Mode 允許唯讀分析,不會因檔案修改而消耗上下文。
使用 Explorer 找出所有受影響的檔案
Use the Explorer agent to find all files that reference payment processing確保你能發現每一處需要更新的位置。
檢視全面的計畫
Verdent 會呈現一份計畫,顯示:
- 所有需要變更的檔案(已識別 25 個檔案)
- 需納入主要上下文的最小檔案集合
- 操作順序
- 變更之間的相依關係
在確定採用此方法前先檢視。
批准執行
對計畫滿意後,批准執行。Verdent 會有條理地逐一處理變更。
提示:
- Plan Mode 有助於在執行前識別最小檔案集合
- Explorer 確保大規模重構中不會遺漏任何檔案
- 計畫能在消耗上下文前清楚顯示範圍
- 將計畫儲存為檔案以供文件記錄與團隊審查
跨多個檔案進行協調性變更
假設你需要重新命名一個在大型程式碼庫中被 50 多個檔案使用的函式。
使用 Explorer 找出所有使用處
Use the Explorer agent to find all files that use the calculateTotal function識別每個需要更新的檔案。
在 Plan Mode 中檢視範圍
In Plan Mode: Rename calculateTotal to computeFinalTotal across all files在進行變更前查看完整範圍。
確認沒有遺漏任何檔案
Verdent 顯示全部 52 個需要更新的檔案。檢視清單以確保完整性。
執行協調性變更
批准計畫。Verdent 會系統性地更新所有檔案,確保各處命名一致。
執行測試以驗證
Run the full test suite to verify all references were updated correctly測試能找出任何遺漏的參照。
提示:
- Explorer 確保大規模變更中不會遺漏任何檔案
- Plan Mode 在執行前顯示完整範圍
- 系統性更新可在所有檔案間維持一致性
- 在大規模重構後進行全面測試
跨多個檔案的協調性變更若分階段進行會更安全,先更新一層、驗證,再進入相依的層級。
常見問題
我如何知道自己快接近上下文限制了?
徵兆包括回應速度變慢、工作階段持續數小時,或載入了許多大型檔案。請監控你的工作階段長度與檔案數量。當你注意到效能下降時,請完成當前任務、提交你的進度,並以乾淨的上下文開始新的工作階段。
讓 Verdent 一次修改數十個檔案安全嗎?
若使用得當,是安全的。請務必先使用 Plan Mode 檢視完整範圍、確保你有全面的測試覆蓋率,並在各階段之間頻繁提交。這能讓你逐步驗證變更,並在需要時輕鬆回滾。
我該在什麼時候使用 Explorer 代理,而非直接載入檔案?
使用 Explorer 代理進行探索與搜尋任務,不會消耗主要上下文。只有在需要修改檔案時,才透過 @-mention 直接載入檔案。Explorer 適合「找出所有……的檔案」這類問題,而 @-mention 則適合「更新這個特定檔案」的任務。
哪個模型預設最適合大型程式碼庫工作?
複雜的多檔案操作與重構請使用 Performance 預設。簡單的搜尋與探索任務請使用 Efficiency 預設。Performance 為協調性變更提供更強的推理能力,而 Efficiency 在探索時更快速且更具成本效益。