Code-review-graph review-pr
Review a PR or branch diff using the knowledge graph for full structural context. Outputs a structured review with blast-radius analysis.
install
source · Clone the upstream repo
git clone https://github.com/tirth8205/code-review-graph
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/tirth8205/code-review-graph "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/review-pr" ~/.claude/skills/tirth8205-code-review-graph-review-pr && rm -rf "$T"
manifest:
skills/review-pr/SKILL.mdsource content
Review PR
Perform a comprehensive code review of a pull request or branch diff using the knowledge graph.
Token optimization: Before starting, call
get_docs_section_tool(section_name="review-pr") for the optimized workflow. Never include full files unless explicitly asked.
Steps
-
Identify the changes for the PR:
- If a PR number or branch is provided, use
to get changed filesgit diff main...<branch> - Otherwise auto-detect from the current branch vs main/master
- If a PR number or branch is provided, use
-
Update the graph by calling
to ensure the graph reflects the current state.build_or_update_graph_tool(base="main") -
Get the full review context by calling
:get_review_context_tool(base="main")- This uses
(or the specified base branch) as the diff basemain - Returns all changed files across all commits in the PR
- This uses
-
Analyze impact by calling
:get_impact_radius_tool(base="main")- Review the blast radius across the entire PR
- Identify high-risk areas (widely depended-upon code)
-
Deep-dive each changed file:
- Read the full source of files with significant changes
- Use
for high-risk functionsquery_graph_tool(pattern="callers_of", target=<func>) - Use
to verify test coveragequery_graph_tool(pattern="tests_for", target=<func>) - Check for breaking changes in public APIs
-
Generate structured review output:
## PR Review: <title> ### Summary <1-3 sentence overview> ### Risk Assessment - **Overall risk**: Low / Medium / High - **Blast radius**: X files, Y functions impacted - **Test coverage**: N changed functions covered / M total ### File-by-File Review #### <file_path> - Changes: <description> - Impact: <who depends on this> - Issues: <bugs, style, concerns> ### Missing Tests - <function_name> in <file> - no test coverage found ### Recommendations 1. <actionable suggestion> 2. <actionable suggestion>
Tips
- For large PRs, focus on the highest-impact files first (most dependents)
- Use
to find related code the PR might have missedsemantic_search_nodes_tool - Check if renamed/moved functions have updated all callers