Library · Team · LangGraph · coding-review
Coding Review — LangGraph
Review a diff or file for bugs, risky paths, and missing tests — without auto-committing or running destructive commands. (LangGraph stateful graph with a human checkpoint.)
Id: langgraph/coding-review · Slug: coding-review · Status: Untested · Untested on this machine — recipe reviewed for safety (no secrets, no destructive commands, no auto-spend). Mark tested after you run it locally.
What is this
Code for LangGraph. Review a diff or file for bugs, risky paths, and missing tests — without auto-committing or running destructive commands. (LangGraph stateful graph with a human checkpoint.)
How this runtime fits
This LangGraph implementation is a graph-style runtime for the parent AI Team. Agent orchestration and multi-agent workflow language fit when nodes split work and gates; it is not automatically identical to every multi-agent system.
Parent AI Team: coding-review · What is an AI Team?
What it does
Review a diff or file for bugs, risky paths, and missing tests — without auto-committing or running destructive commands. (LangGraph stateful graph with a human checkpoint.)
Who for
Builders working on Engineering jobs who can run LangGraph themselves.
Need to run
- You will run this locally or on infra you control.
- No production credentials in prompts or committed files.
- Python 3.10+
- LangGraph in a venv
- Local model binder
How to use
- Install LangGraph in a venv (pin versions).
- Wire produce() to your local model client.
- Run the file once with Example in.
- Keep human_gate approval defaulting to False; enable revise only intentionally.
Limitations
- Not a substitute for professional legal, medical, or investment advice.
- Outputs can be wrong; human review required before publish or spend.
- Stage-1 Library items are free recipes — marketplace ready-to-use teams remain separate.
- Do not attach billing cloud LLM nodes without a human budget check.
Test status
Status: Untested · Untested on this machine — recipe reviewed for safety (no secrets, no destructive commands, no auto-spend). Mark tested after you run it locally.
Files
graph_coding_review.py— LangGraph nodes + interruptREADME.md— Run notes
Full prompt / config / code
# graph_coding_review.py — Coding Review (LangGraph sketch)
# pip install langgraph langchain-core (pin yourself)
# Use a local chat model binder; do not embed secrets.
from typing import TypedDict, Literal
from langgraph.graph import StateGraph, END
SYSTEM = """You are a code review specialist. Goal: find bugs and risks in the pasted diff/file.
RULES:
- Do not rewrite the whole codebase. Comment on the provided snippet only.
- Flag: correctness, security, missing tests, irreversible ops, secrets.
- Never suggest committing secrets, force-push, or rm -rf style cleanup.
- Propose patches as unified-diff style snippets when useful.
- Stop with a severity-ordered list. Human decides merges.
OUTPUT:
1) Summary (2-4 sentences)
2) Issues table: severity | location | issue | suggested fix
3) Tests to add
4) What looks fine"""
class State(TypedDict):
user_input: str
draft: str
approved: bool
notes: str
def produce(state: State) -> State:
# Pseudo: call your local model with SYSTEM + state["user_input"]
draft = "[MODEL OUTPUT PLACEHOLDER — wire your local LLM here]\n" + state["user_input"][:500]
return {**state, "draft": draft, "notes": "awaiting human"}
def human_gate(state: State) -> State:
# In real use: interrupt / input() / UI approval.
# Default False so nothing auto-publishes.
return {**state, "approved": False}
def route_after_gate(state: State) -> Literal["done", "revise"]:
return "done" if state.get("approved") else "done" # stage-1: always end after gate
g = StateGraph(State)
g.add_node("produce", produce)
g.add_node("human_gate", human_gate)
g.set_entry_point("produce")
g.add_edge("produce", "human_gate")
g.add_conditional_edges("human_gate", route_after_gate, {"done": END, "revise": "produce"})
app = g.compile()
if __name__ == "__main__":
out = app.invoke({"user_input": "PASTE_EXAMPLE_IN", "draft": "", "approved": False, "notes": ""})
print(out)
Example in
Review this Python snippet:
```
def pay(user, amount):
charge(user.card, amount)
send_receipt(user.email)
```
Context: internal tool, no retries yet.Example out
Summary: Charge-then-receipt with no idempotency or failure handling. Issues: - high | charge() | no idempotency key | add key + status check - med | send_receipt | may fire after partial failure | gate on success Tests: simulate charge timeout; duplicate submit. Looks fine: clear happy-path shape.
Model / runtime notes
Graph includes an explicit human checkpoint. Stage-1 ends after gate (no infinite revise loop).
Canonical Team
Parent: coding-review
· implementation_id: langgraph/coding-review
GitHub source
teams/coding-review/langgraph · commit eb87e8e049fdf9908e438305ff827c7b617505b5
· license: free-use-at-own-risk
Structural check: PASS · env: structural (structural only — does not set Verified)
Related Library items
Related marketplace Team pages
Soft thematic links only — not identity merges. Marketplace Teams ≠ Library AI Team records.
- Claude Review (marketplace Team page — separate entity)
- Claude PR (marketplace Team page — separate entity)