Code Review Graph 教學手冊
Code-Review-Graph 教學手冊 Code-Review-Graph — 本地優先(Local-first)程式碼知識圖譜與 AI Code Review 加速引擎企業級完整指南 適用對象:資深工程師、AI Agent 平台團隊、架構師、Tech Lead、DevSecOps 負責人、企業導入人員、PM 文件性質:企業內部 AI Agent 開發流程標準導入、開發與維運培訓教材 版本基準:Code-Review-Graph(tirth8205/code-review-graph,MIT License,PyPI 套件 code-review-graph,參考版本 v2.3.6+) ⚠️ 重要聲明(請務必先讀) Code-Review-Graph 仍在持續迭代中。 本專案為開源專案(MIT License,GitHub 星數 28.1k+、Fork 2.6k+,主分支 900+ commits),其 CLI 指令、MCP 工具清單、環境變數與設定檔格式可能隨版本演進而調整。任何指令與設定在正式導入前,務必以官方最新文件(docs/USAGE.md、docs/COMMANDS.md、docs/FAQ.md、docs/TROUBLESHOOTING.md、docs/GITHUB_ACTION.md、docs/ROADMAP.md)與您實際安裝版本為準。 本手冊定位是「理解、彙整、分析、重組、補充企業導入最佳實務」,而非官方 README 或文件的翻譯。 本書不直接翻譯、不直接抄錄原文,而是重新以繁體中文彙整、重組、延伸為企業教材,並大量補充實戰案例、企業導入策略與 AI Agent 協作方法論。 內容分兩類: 官方已確認事實(例如 Tree-sitter 多語言解析、SQLite 圖譜儲存、30 個 MCP 工具、build/update/serve 等 CLI 指令、GitHub Action 用法、環境變數清單、基準測試數據等)作為骨幹,均已對照官方 README 及文件重新查證。 作者補充:凡屬作者依大型企業(含金融業)導入 AI Agent 程式碼審查之實務經驗所補充、推論或延伸之處,會標註 (企業實務建議) 或 (作者推論)。這些是最佳實務參考,非官方保證,導入前請自行驗證於您的環境。 本手冊中所有「企業案例」(第 16 章、第 23 章)皆為教學示範用途之虛構情境,用於示範 Code-Review-Graph 與既有技術堆疊(Spring Boot 4.x、Vue3、Java25 等)的整合模式,非真實客戶專案。涉及既有框架的深入機制,請參閱本 Repository 既有手冊: Spring boot 4.x 教學手冊 Maven 4.x 教學手冊 Vue3 前端framework教學 PrimeVue使用教學 Java25升版教學 官方權威來源請見 第 24 章 附錄 → 24.7 官方文件索引。 目錄 第一章 專案背景與痛點分析 1.1 原理 1.1.1 專案背景與誕生脈絡 1.1.2 設計理念:Local-first 與 Graph-based Context 1.1.3 要解決的核心問題 1.1.4 AI Code Review 的痛點:Token 浪費 1.1.5 Context Window 與 Architecture Blind Spot 1.1.6 Global Context 與 Local-first 的權衡 1.1.7 核心概念:Knowledge Graph、Impact Radius、Architecture Awareness 1.1.8 與傳統 RAG 的差異 1.1.9 與 Vector Database 的差異 1.1.10 與純 AST 工具的差異 1.1.11 與其他 MCP Tool 的差異 1.1.12 與 GraphRAG 的差異 1.2 架構圖(Mermaid) 1.3 流程圖(Mermaid) 1.4 Sequence Diagram 1.5 實作 1.6 範例 1.7 最佳實務 1.8 常見錯誤 1.9 效能建議 1.10 AI Agent 如何使用 1.11 Enterprise 建議 第二章 整體系統架構 2.1 原理 2.1.1 分層架構總覽 2.1.2 資料來源層:Git Repository 2.1.3 解析層:Tree-sitter 與 AST 抽取 2.1.4 圖譜層:Graph Builder 與 SQLite 2.1.5 服務層:Review Engine、Impact Analyzer、MCP Server 2.1.6 整合層:AI Agent 與 CI/CD 2.1.7 Data Flow 總覽 2.2 架構圖(Mermaid) 2.3 流程圖(Mermaid) 2.4 Sequence Diagram 2.5 實作 2.6 範例 2.7 最佳實務 2.8 常見錯誤 2.9 效能建議 2.10 AI Agent 如何使用 2.11 Enterprise 建議 第三章 Tree-sitter 與 AST 解析 3.1 原理 3.1.1 Tree-sitter 是什麼 3.1.2 AST 節點型別與四大分類 3.1.3 支援語言清單 3.1.4 增量解析機制(Incremental Parsing) 3.1.5 自訂語言支援:languages.toml 3.1.6 從 AST 到 Graph:Node 的定義 3.1.7 從 AST 到 Graph:Edge 與四種關係圖 3.1.8 Reference Graph 與信賴度分級 3.2 架構圖(Mermaid) 3.3 流程圖(Mermaid) 3.4 Sequence Diagram 3.5 實作 3.6 範例 3.7 最佳實務 3.8 常見錯誤 3.9 效能建議 3.10 AI Agent 如何使用 3.11 Enterprise 建議 第四章 Knowledge Graph 邏輯模型 4.1 原理 4.1.1 Knowledge Graph 在 Code-Review-Graph 中的定位 4.1.2 Node 的完整屬性模型 4.1.3 Edge 的完整屬性模型 4.1.4 Relationship 型別總表 4.1.5 Graph Schema(邏輯層級) 4.1.6 Graph Query 與 Traversal 策略 4.1.7 Impact Analysis 的圖論基礎 4.1.8 Community Detection:Leiden 演算法 4.1.9 Architecture Discovery:從社群到架構總覽 4.2 架構圖(Mermaid) 4.3 流程圖(Mermaid) 4.4 Sequence Diagram 4.5 實作 4.6 範例 4.7 最佳實務 4.8 常見錯誤 4.9 效能建議 4.10 AI Agent 如何使用 4.11 Enterprise 建議 第五章 SQLite 儲存層 5.1 原理 5.1.1 為何選擇 SQLite 而非專用圖資料庫 5.1.2 資料庫檔案位置 5.1.3 實際 Schema 設計(依官方 docs/schema.md 核對) 5.1.4 索引策略 5.1.5 WAL 模式與並行存取 5.1.6 Migration 策略 5.1.7 Backup 與 Restore 5.1.8 Maintenance:定期維護 5.2 架構圖(Mermaid) 5.3 流程圖(Mermaid) 5.4 Sequence Diagram 5.5 實作 5.6 範例 5.7 最佳實務 5.8 常見錯誤 5.9 效能建議 5.10 AI Agent 如何使用 5.11 Enterprise 建議 第六章 安裝 6.1 原理 6.1.1 安裝方式總覽 6.1.2 系統需求 6.1.3 選配依賴總表 6.1.4 Windows 安裝要點 6.1.5 Linux 安裝要點 6.1.6 macOS 安裝要點 6.1.7 WSL 安裝要點(企業實務建議) 6.1.8 Docker/Podman 容器化部署(企業實務建議) 6.1.9 驗證安裝 6.2 架構圖(Mermaid) 6.3 流程圖(Mermaid) 6.4 Sequence Diagram 6.5 實作 6.6 範例 6.7 最佳實務 6.8 常見錯誤 6.9 效能建議 6.10 AI Agent 如何使用 6.11 Enterprise 建議 第七章 設定與初始化 7.1 原理 7.1.1 初始化流程 7.1.2 .code-review-graphignore 語法與規則 7.1.3 與 .gitignore 的關係 7.1.4 大型 Repository 考量 7.1.5 Incremental Build:update、watch 與平台原生 Hook 7.1.6 Configuration 總覽 7.2 架構圖(Mermaid) 7.3 流程圖(Mermaid) 7.4 Sequence Diagram 7.5 實作 7.6 範例 7.7 最佳實務 7.8 常見錯誤 7.9 效能建議 7.10 AI Agent 如何使用 7.11 Enterprise 建議 第八章 MCP Server 詳解 8.1 原理 8.1.1 MCP 是什麼、為何是關鍵拼圖 8.1.2 啟動 MCP Server 8.1.3 自動化設定:code-review-graph install 8.1.4 MCP 設定檔格式 8.1.5 MCP 工具全覽(30 個工具,8 大分類) 8.1.6 MCP Prompts:5 個工作流樣板 8.1.7 Tool Calling 與 Context Injection 的運作模式 8.2 架構圖(Mermaid) 8.3 流程圖(Mermaid) 8.4 Sequence Diagram 8.5 實作 8.6 範例 8.7 最佳實務 8.8 常見錯誤 8.9 效能建議 8.10 AI Agent 如何使用 8.11 Enterprise 建議 第九章 如何協助 AI Agent:九大場景 9.1 原理 9.1.1 Architecture Discovery(架構探索) 9.1.2 Context Retrieval(上下文檢索) 9.1.3 Impact Radius(影響範圍分析) 9.1.4 Function Analysis(函式分析) 9.1.5 Class Analysis(類別分析) 9.1.6 Dependency Analysis(依賴分析) 9.1.7 PR Review(Pull Request 審查) 9.1.8 Root Cause Analysis(根因分析) 9.1.9 Refactoring(重構) 9.2 架構圖(Mermaid) 9.3 流程圖(Mermaid) 9.4 Sequence Diagram 9.5 實作 9.6 範例 9.7 最佳實務 9.8 常見錯誤 9.9 效能建議 9.10 AI Agent 如何使用 9.11 Enterprise 建議 第十章 逆向工程與大型系統分析 10.1 原理 10.1.1 逆向工程為何是 Code-Review-Graph 的殺手級場景 10.1.2 Legacy Java/Spring 系統的逆向工程模式 10.1.3 跨語言逆向工程:.NET、Node.js、Python 10.1.4 前端框架逆向工程:Vue、Angular、React 10.1.5 大型系統分析的漏斗式方法論 10.1.6 Architecture Recovery 與 Dependency Discovery 10.2 架構圖(Mermaid) 10.3 流程圖(Mermaid) 10.4 Sequence Diagram 10.5 實作 10.6 範例 10.7 最佳實務 10.8 常見錯誤 10.9 效能建議 10.10 AI Agent 如何使用 10.11 Enterprise 建議 第十一章 Framework Upgrade 影響分析 11.1 原理 11.1.1 為何 Framework Upgrade 是 Impact Analysis 的天然應用場景 11.1.2 框架升級的通用四步驟方法論 11.1.3 Java/Jakarta EE 升級案例:javax.* → jakarta.* 命名空間遷移 11.1.4 Spring Boot 升級案例:組態屬性與 Bean 定義變更 11.1.5 MyBatis/Hibernate ORM 遷移案例 11.1.6 前端框架升級案例:Vue 2 → Vue 3、AngularJS → Angular 11.1.7 API Migration:內部 API 版本演進 11.2 架構圖(Mermaid) 11.3 流程圖(Mermaid) 11.4 Sequence Diagram 11.5 實作 11.6 範例 11.7 最佳實務 11.8 常見錯誤 11.9 效能建議 11.10 AI Agent 如何使用 11.11 Enterprise 建議 第十二章 架構感知的 Code Review 12.1 原理 12.1.1 什麼是「架構感知」的 Code Review 12.1.2 Security(安全性)視角 12.1.3 Performance(效能)視角 12.1.4 Maintainability 與 Readability 視角 12.1.5 Dependency Risk 與 Circular Dependency(循環依賴) 12.1.6 Dead Code(死碼)偵測 12.1.7 整合為 Code Review Checklist 12.2 架構圖(Mermaid) 12.3 流程圖(Mermaid) 12.4 Sequence Diagram 12.5 實作 12.6 範例 12.7 最佳實務 12.8 常見錯誤 12.9 效能建議 12.10 AI Agent 如何使用 12.11 Enterprise 建議 第十三章 GitHub Action 與 CI/CD 整合 13.1 原理 13.1.1 為何 CI/CD 整合是企業導入的關鍵里程碑 13.1.2 官方 Composite Action 用法 13.1.3 執行行為:本地優先、Sticky Comment 13.1.4 Risk Score 與 Merge Gate 13.1.5 PR 評論內容:Architecture Summary 13.1.6 與既有 CI/CD 生態的搭配 13.1.7 Fork PR 的安全限制與雙工作流程設計(企業實務建議) 13.2 架構圖(Mermaid) 13.3 流程圖(Mermaid) 13.4 Sequence Diagram 13.5 實作 13.6 範例 13.7 最佳實務 13.8 常見錯誤 13.9 效能建議 13.10 AI Agent 如何使用 13.11 Enterprise 建議 第十四章 AI Coding Workflow 全流程 14.1 原理 14.1.1 從單點工具到端到端工作流 14.1.2 完整流程十一步 14.1.3 流程中的兩個關鍵回饋迴圈 14.1.4 流程失敗模式與斷點偵測 14.2 架構圖(Mermaid) 14.3 流程圖(Mermaid) 14.4 Sequence Diagram 14.5 實作 14.6 範例 14.7 最佳實務 14.8 常見錯誤 14.9 效能建議 14.10 AI Agent 如何使用 14.11 Enterprise 建議 第十五章 大型企業架構風格最佳實務 15.1 原理 15.1.1 圖譜分析與架構風格的交會點 15.1.2 Monorepo 場景 15.1.3 Microservice 場景 15.1.4 DDD(領域驅動設計)場景 15.1.5 Clean/Hexagonal/Onion Architecture 場景 15.1.6 Event-Driven Architecture 場景 15.1.7 大型 Repository 的通用治理原則 15.2 架構圖(Mermaid) 15.3 流程圖(Mermaid) 15.4 Sequence Diagram 15.5 實作 15.6 範例 15.7 最佳實務 15.8 常見錯誤 15.9 效能建議 15.10 AI Agent 如何使用 15.11 Enterprise 建議 第十六章 Web Application 完整案例 16.1 原理 16.1.1 技術棧總覽與既有教材對照 16.1.2 專案結構與初始化 16.1.3 後端圖譜建置要點(Java 25 / Spring Boot 4 / Maven 4) 16.1.4 前端圖譜建置要點(Vue3 / TypeScript / PrimeVue) 16.1.5 PostgreSQL、Redis、Kafka 的圖譜可見度 16.1.6 OpenAPI 契約與跨前後端 Impact Analysis 16.1.7 Docker、Kubernetes 與 CI 整合位置 16.1.8 端到端情境:新增「訂單退貨」功能 16.2 架構圖(Mermaid) 16.3 流程圖(Mermaid) 16.4 Sequence Diagram 16.5 實作 16.6 範例 16.7 最佳實務 16.8 常見錯誤 16.9 效能建議 16.10 AI Agent 如何使用 16.11 Enterprise 建議 第十七章 與 AI 工具整合 17.1 原理 17.1.1 整合的共同基礎:MCP 協定 17.1.2 Claude Code 17.1.3 Cursor 17.1.4 GitHub Copilot(含 Copilot CLI) 17.1.5 OpenAI Codex CLI 17.1.6 Gemini CLI 17.1.7 Continue.dev、Cline、Roo Code 17.1.8 多平台並存的企業考量 17.1.9 其他官方自動偵測平台:Windsurf、Zed、OpenCode、Antigravity、CodeBuddy Code、Qwen、Qoder、Kiro 17.1.10 VS Code Extension:獨立於 MCP 協定之外的原生整合方案 17.2 架構圖(Mermaid) 17.3 流程圖(Mermaid) 17.4 Sequence Diagram 17.5 實作 17.6 範例 17.7 最佳實務 17.8 常見錯誤 17.9 效能建議 17.10 AI Agent 如何使用 17.11 Enterprise 建議 第十八章 企業導入指南 18.1 原理 18.1.1 導入流程:四階段路線圖 18.1.2 團隊規範:從「工具」到「規範」 18.1.3 Repository 規範 18.1.4 Branch Strategy 與 Graph 的關係 18.1.5 Code Review Policy 整合 18.1.6 Graph 更新策略的治理選擇 18.1.7 CI/CD 的組織級規劃 18.2 架構圖(Mermaid) 18.3 流程圖(Mermaid) 18.4 Sequence Diagram 18.5 實作 18.6 範例 18.7 最佳實務 18.8 常見錯誤 18.9 效能建議 18.10 AI Agent 如何使用 18.11 Enterprise 建議 第十九章 維護 19.1 原理 19.1.1 維護的三個層次 19.1.2 Graph Rebuild:何時需要完整重建 19.1.3 Daemon:多倉庫常駐監看 19.1.4 Parser/Language 更新 19.1.5 Migration 與 Upgrade 策略 19.1.6 卸載與清理 19.2 架構圖(Mermaid) 19.3 流程圖(Mermaid) 19.4 Sequence Diagram 19.5 實作 19.6 範例 19.7 最佳實務 19.8 常見錯誤 19.9 效能建議 19.10 AI Agent 如何使用 19.11 Enterprise 建議 第二十章 疑難排解(100+ FAQ) 20.1 原理 20.2 架構圖(Mermaid) 20.3 流程圖(Mermaid) 20.4 Sequence Diagram 20.5 實作 20.6 常見問題總表(100+ FAQ) 20.6.1 安裝與環境(Q1–Q14) 20.6.2 建圖與解析(Q15–Q28) 20.6.3 MCP 與 Agent 整合(Q29–Q42) 20.6.4 圖查詢與結果解讀(Q43–Q56) 20.6.5 GitHub Action/CI(Q57–Q68) 20.6.6 效能與規模(Q69–Q80) 20.6.7 多倉庫與 Daemon(Q81–Q90) 20.6.8 安全與合規(Q91–Q104) 20.7 最佳實務 20.8 常見錯誤 20.9 效能建議 20.10 AI Agent 如何使用 20.11 Enterprise 建議 第二十一章 最佳實務總表(100+ 條) 21.1 原理 21.2 架構圖(Mermaid) 21.3 流程圖(Mermaid) 21.4 Sequence Diagram 21.5 實作 21.6 範例 21.7 最佳實務總表(100+ 條) 21.7.1 導入與治理(BP1–BP15) 21.7.2 圖譜維運(BP16–BP30) 21.7.3 Agent 協作(BP31–BP50) 21.7.4 Code Review 整合(BP51–BP65) 21.7.5 CI/CD(BP66–BP75) 21.7.6 安全與合規(BP76–BP88) 21.7.7 跨團隊協作(BP89–BP96) 21.7.8 效能(BP97–BP105) 21.8 常見錯誤 21.9 效能建議 21.10 AI Agent 如何使用 21.11 Enterprise 建議 第二十二章 AI Prompt Library(150+ 提示詞) 22.1 原理 22.2 架構圖(Mermaid) 22.3 流程圖(Mermaid) 22.4 Sequence Diagram 22.5 實作 22.6 提示詞總表(150+ 則) 22.6.1 Architecture 分析(P1–P13) 22.6.2 Dependency 分析(P14–P26) 22.6.3 API 分析(P27–P38) 22.6.4 Service 分析(P39–P50) 22.6.5 Impact 分析(P51–P63) 22.6.6 Risk 分析(P64–P75) 22.6.7 PR 分析(P76–P88) 22.6.8 Bug 分析(P89–P100) 22.6.9 Refactoring 分析(P101–P113) 22.6.10 Performance 分析(P114–P125) 22.6.11 Security 分析(P126–P138) 22.6.12 Test Coverage 分析(P139–P152) 22.7 最佳實務 22.8 常見錯誤 22.9 效能建議 22.10 AI Agent 如何使用 22.11 Enterprise 建議 第二十三章 完整企業案例:銀行大型系統 23.1 原理 23.1.1 專案背景 23.1.2 需求階段:架構盡職調查 23.1.3 設計階段:現代化改造範圍界定 23.1.4 Coding 階段:AI 協作開發 23.1.5 Review 階段:架構感知審查 + 人工複核雙重把關 23.1.6 Testing 階段:以 Impact Radius 驅動測試優先序 23.1.7 Deployment 階段:Kubernetes 部署與 CI 品質關卡 23.1.8 Maintenance 階段:常態化架構治理 23.2 架構圖(Mermaid) 23.3 流程圖(Mermaid) 23.4 Sequence Diagram 23.5 實作 23.6 範例 23.7 最佳實務 23.8 常見錯誤 23.9 效能建議 23.10 AI Agent 如何使用 23.11 Enterprise 建議 第二十四章 附錄:指令速查表 24.1 CLI Cheat Sheet 24.2 MCP 工具 Cheat Sheet 24.3 Tree-sitter/語言支援 Cheat Sheet 24.4 SQLite Cheat Sheet 24.5 環境變數 Cheat Sheet 24.6 Mermaid Cheat Sheet(本手冊使用慣例) 24.7 官方文件索引 24.8 GitHub Action Cheat Sheet 附錄 企業導入總檢查清單 A.1 安裝與環境檢查清單 A.2 設定與初始化檢查清單 A.3 MCP 與 Agent 整合檢查清單 A.4 Code Review 與 CI/CD 檢查清單 A.5 安全與合規檢查清單 A.6 維護與治理檢查清單 A.7 團隊賦能檢查清單 第一章 專案背景與痛點分析 1.1 原理 1.1.1 專案背景與誕生脈絡 Code-Review-Graph 誕生於一個非常具體的觀察:AI Coding Agent(Claude Code、Cursor、GitHub Copilot Agent Mode 等)在協助工程師進行 Code Review 或修改程式碼時,最大的成本不是「推理」,而是「找答案前的閱讀」。一個 Agent 要理解「這個函式改了會影響誰」,往往得先用 grep、Read 把半個 Repository 掃過一遍——不是因為它笨,而是因為它手上沒有一張「地圖」。 ...