src/bin/codegraph.ts · uninstall.ts · node-version-check.tsCLI 入口用 commander 定義全部子指令。每個指令只是「把參數整理好 → 呼叫 CodeGraph class / installer → 把結果排版印出」的薄殼。serve --mcp 啟動 MCP server。bin/codegraph.js(dist)被 chmod 0o755 當 binary。node-version-check.ts 在 Node <20 或 ≥25 時硬性退出。
每個子指令與 CLI 參考一一對應。查詢類(query/callers/callees/impact/files/status)都支援 --json,給腳本用;explore 與 node 直接輸出與 MCP 工具相同的內容——非 MCP harness 的對等介面。
讓 agent 能以 command: "codegraph", args: ["serve", "--mcp"] 啟動。server 內部再處理 daemon 共享、connect-time catch-up、staleness banner 等(見 mcp)。
codegraph uninstall 走 installer 的反向:剝掉每個 agent 的 MCP config、instructions 段落與 permissions(--keep-cli 只移除設定);列出找到的每份安裝(standalone bundle / npm global / launcher link)再刪。codegraph uninit 是另一回事——只移除單一專案的 .codegraph/。
package.json engines 是 >=20.0.0 <25.0.0,這裡在啟動時強制檢查。CLI/MCP 跑在 bundle runtime(不受影響);從 source 跑需要 Node ≥22.5(node:sqlite)。