Files
code-review-graph/code_review_graph/docs/LLM-OPTIMIZED-REFERENCE.md
T
dev b96f38276f feat: add unified_review MCP prompt + sync tool/prompt counts
Adds the unified_review MCP prompt (invoked as /code-review-graph:unified_review)
that drives the unified-review workflow: graph context -> detect_changes ->
score_review -> findings -> dedupe_findings -> generate_report. READ-ONLY:
every finding waits for a manual fix decision. Takes base and tier
(fast/standard/strict) arguments.

- prompts.py: unified_review_prompt + docstring count 5->6
- main.py: @mcp.prompt() registration
- tests/test_prompts.py: TestUnifiedReviewPrompt + preamble test
- docs: LLM-OPTIMIZED-REFERENCE, COMMANDS, CLAUDE.md, INDEX, architecture,
  README + 4 localized READMEs; tool count 30->31 and prompt count 5->6
  synced (historical ROADMAP/FEATURES version notes left unchanged)
2026-08-05 13:58:51 +08:00

5.9 KiB

LLM-OPTIMIZED REFERENCE -- code-review-graph v2.3.6

AI coding agents: Read ONLY the exact <section> you need. Never load the whole file.

Quick install: pip install code-review-graph Then: code-review-graph install && code-review-graph build First run: /code-review-graph:build-graph After that use only delta/pr commands. ALWAYS start with get_minimal_context_tool(task="your task") — returns ~100 tokens with risk, communities, flows, and suggested next tools. Use detail_level="minimal" on all subsequent calls unless you need more detail. When present, context_savings is an estimated compact hint, not exact tokenization.
1. Call get_minimal_context_tool(task="review changes") first. 2. If risk is low: detect_changes_tool(detail_level="minimal") → report summary. 3. If risk is medium/high: detect_changes_tool(detail_level="standard") → expand on high-risk items. Target: ≤5 tool calls, ≤800 tokens total context.
Fetch PR diff -> detect_changes_tool -> get_affected_flows_tool -> structured review with blast-radius table and risk scores. Never include full files unless explicitly asked.
Full three-layer review: 1) get_minimal_context_tool + build_or_update_graph_tool + get_review_context_tool + detect_changes_tool for graph context; 2) Layer-1 chain decomposition across 8 categories + gstack CRITICAL sub-pass; 3) score_review_tool for objective Layer-2 metrics; 4) specialist subagents (diff >= 50 lines); 5) dedupe_findings_tool to merge; 6) READ-ONLY manual adjudication per severity; 7) generate_report_tool to write code-review-report.html. Read .code-review.yaml for tier (fast/standard/strict). Target: <=8 tool calls, <=1200 tokens.
score_review_tool returns objective metrics (sql_risk, exception_coverage, redundancy_rate, high_risk_density, vulnerability_risk) with good/warn/fail grades + llm_judged list. dedupe_findings_tool merges findings by path:line:category fingerprint, boosts multi-source confidence (+1 cap 10), computes PR quality score. generate_report_tool writes the standalone HTML report.
Core MCP tools: get_minimal_context_tool, detect_changes_tool, get_review_context_tool, get_impact_radius_tool, query_graph_tool, semantic_search_nodes_tool, get_architecture_overview_tool, get_affected_flows_tool, list_flows_tool, list_communities_tool, refactor_tool, build_or_update_graph_tool, run_postprocess_tool, embed_graph_tool, list_graph_stats_tool, get_docs_section_tool Unified-review MCP tools: score_review_tool, dedupe_findings_tool, generate_report_tool MCP prompts (6): review_changes, architecture_map, debug_issue, onboard_developer, pre_merge_check, unified_review Skills: build-graph, debug-issue, explore-codebase, refactor-safely, review-changes, review-delta, review-pr, unified-review CLI: code-review-graph [install|init|build|update|status|watch|visualize|serve|mcp|wiki|detect-changes|postprocess|embed|register|unregister|repos|eval|daemon] Token efficiency: Prefer detail_level="minimal" where available. Always call get_minimal_context_tool first. Some review/context tools return compact estimated context_savings metadata.
MIT licence. Core graph/review workflows are local and there is no telemetry. DB file: .code-review-graph/graph.db. Optional cloud embeddings send embedded source snippets to the configured provider only when selected.
Run: code-review-graph watch (auto-updates graph on file save via watchdog) Or use PostToolUse (Write|Edit|Bash) hooks for automatic background updates.
Optional: pip install "code-review-graph[embeddings]" Then call embed_graph_tool to compute vectors. semantic_search_nodes_tool auto-uses vectors when available, falls back to keyword + FTS5. Providers: local sentence-transformers, OpenAI-compatible endpoints, Google Gemini, MiniMax, and Voyage. Configure via provider/model parameters, CRG_EMBEDDING_MODEL for local, CRG_OPENAI_* for OpenAI-compatible endpoints, or VOYAGE_API_KEY plus optional CRG_VOYAGE_MODEL for Voyage.
Supported: Python, JavaScript/TypeScript/TSX, Go, Rust, Java, C/C++, C#, VB.NET, Ruby, Kotlin, Swift, PHP, Scala, Solidity, Dart, R, Perl, Lua/Luau, Objective-C, shell scripts, Elixir, Zig, PowerShell, Julia, ReScript, GDScript, Nix, Verilog/SystemVerilog, SQL, Terraform/OpenTofu structure (`.tf`; generic `.hcl` files are recognized as file nodes), Ansible playbooks/roles/tasks, Vue/Svelte SFCs, Astro files parsed through the TypeScript parser, Jupyter/Databricks notebooks, and Perl XS files. Generic YAML is not treated as source code. Parser: Tree-sitter via tree-sitter-language-pack Custom languages: add .code-review-graph/languages.toml (extensions + node types per grammar) — no fork needed, see docs/CUSTOM_LANGUAGES.md. Built-ins cannot be overridden.
DB lock: SQLite WAL mode, auto-recovers. Only one build at a time. Large repos: first build ~40s at ~3,000 files; incremental ~2.5s on the hook path (measured, docs/REPRODUCING.md). Add patterns to .code-review-graphignore. Stale graph: Run /code-review-graph:build-graph manually. Missing nodes: Check language support + ignore patterns. Use full_rebuild=True. Windows/WSL: Use forward slashes in paths. Ensure uv is on PATH in WSL.

Instruction to AI coding agents (always follow): When user asks anything about "code-review-graph", "how to use", "commands", "review-delta", etc.:

  1. Call get_docs_section_tool with the exact section name.
  2. Use ONLY that content + current graph state.
  3. Never include full docs or source code in your reasoning. This keeps documentation lookup compact and avoids loading broad reference files by default.