Theme / v1.6.0

Codegraph

程式碼知識圖譜工具

指令詳解

codegraph watch 指令詳解

如何使用 codegraph watch 在背景啟動增量更新監控,保持圖譜與最新程式碼同步

指令用途

雖然我們可以使用手動指令來更新圖譜,但在頻繁的編碼與除錯過程中,每次手動執行更新會顯得非常繁瑣。如果忘記執行,AI 助手在查詢呼叫鏈時就會讀取到過時的歷史資訊,進而給出錯誤的重構建議。

codegraph watch 是一個背景增量監控服務。它啟動一個高效的檔案系統監聽器 (FsWatcher),在背景默默監看專案的檔案變更。當你保存檔案時,它會在幾毫秒內只針對受影響的檔案重新跑 Tree-sitter AST 解析並同步到本地 .codegraph/ 圖譜庫中,實現 100% 無感知的即時圖譜同步。


運作流程

  1. 背景啟動:在終端機中以 Daemon 或者是 tmux 背景行程啟動監控。
  2. FsWatcher 綁定:監聽專案根目錄下除了排除名單以外的所有原始碼副檔名(如 .ts*.go)。
  3. 增量事件處理
    • CREATE / MODIFY:當偵測到儲存事件,僅對該路徑進行重新編譯與圖節點覆蓋。
    • DELETE:當刪除檔案,同步在圖中抹除該檔案對應的所有關係邊。
  4. 即時日誌輸出:在背景輸出極簡日誌,如 [codegraph] Synced 1 file: src/api/user.ts (12ms)

實戰對話範例

範例:在背景啟動 watch 監控服務

  • You:
    /opsx:explore "我想在背景啟動 Codegraph 的 watch 監控,好讓我寫代碼時圖譜能即時更新。"
  • AI:

    好的,我將發送指令在背景啟動 codegraph watch 行程,自動為您監控檔案修改。

    命令執行: codegraph watch
    輸出回傳:

    [codegraph] Loading .codegraph/config.yaml...
    [codegraph] Graph database connected. (Indexed 482 files)
    [codegraph] File system watcher started. Watching for changes...

    背景觀察(當您隨後修改了 src/utils/math.ts 並存檔):

    [codegraph] File change detected: src/utils/math.ts [MODIFY]
    [codegraph] Re-parsing AST... Success. (Updated 2 nodes, 4 edges in 8ms)

    分析
    監控服務已順利在背景執行!當前您對 TypeScript 檔案的任何編輯,圖譜都會在 8 毫秒內增量更新。這確保了 AI 助手在任何對話中都能讀取到 100% 精準的調用鏈。接下來您想開始編寫代碼嗎?