我構建了Ponytrail:一個AI程式設計代理編輯的本地審計追蹤工具
Ponytrail是一款本地命令列工具和代理技能,用於記錄AI程式設計代理對檔案更改的原因,提供歷史樹狀檢視,並支援回滾到之前的快照。它整合了對Claude、Copilot和Codex等代理的支援,是開源專案,在GitHub上獲得104顆星。
Ponytrail是一款創新的本地審計追蹤工具,專為使用AI程式設計代理(如Claude、Copilot和Codex)的開發者設計。它透過記錄每次檔案變更的原因、時間戳和代理操作細節,構建出一個完整的本地歷史樹,讓開發者可以清晰地追蹤“為什麼”檔案被修改,並在必要時回滾到之前的任意快照。
該工具的核心功能圍繞快照管理展開。當開發者執行命令時,Ponytrail會在專案根目錄下的.pony-trail/資料夾中生成快照。快照包含變更前後的檔案狀態、操作摘要、檢查結果以及回滾所需的資訊。透過npx ponytrail history命令,可以展示快照樹;新增--details引數則顯示更豐富的資訊,包括操作、摘要、檢查和回滾細節。此外,還支援按會話過濾和JSON格式輸出,方便機器處理。
回滾功能是Ponytrail的另一大亮點。開發者可以使用npx ponytrail revert --dry-run預覽計劃中的檔案操作,然後透過npx ponytrail revert實際執行回滾。在非互動式環境中,工具會列印計劃並取消操作,避免對專案造成意外修改。回滾時,會從快照的“前狀態”恢復檔案,如果檔案在快照前不存在,則會被刪除。
Ponytrail的安裝十分簡單,只需執行npx ponytrail skills install pony-trail或使用Bun執行bunx ponytrail skills install pony-trail。安裝器會在寫入代理技能檔案前記錄本地快照,確保安裝過程可追溯。該專案是開源的,使用TypeScript編寫(佔90.7%),幷包含Shell和Python元件,目前已在GitHub上獲得104顆星。
對於依賴AI代理進行程式碼修改的開發者而言,Ponytrail提供了一種輕量級但強大的方法,來保持對專案變更的控制和可見性。它解決了代理編輯可能帶來的“黑盒”問題,讓每次修改都有據可查。隨著AI代理在開發流程中的普及,這類審計工具的價值將愈發凸顯。