How itsaugustine04/agentic-code-review-system works
This is an agentic code-review application: a user submits Python code through the CLI or Streamlit UI, the LangGraph workflow analyzes it, selects a quick, deep, or security-focused LLM review, and presents a Markdown report. Static analysis counts nonblank lines, calculates cyclomatic complexity, and scans for security patterns; security flags take routing priority over complexity. The graph also checkpoints per-thread state and streams node progress. The README documents these capabilities, and the sampled source confirms the workflow; no separate storage or persistence service is shown.
Main entry points: nodes.py Report Generator · graph.py LangGraph Workflow · review.py CLI · app.py Streamlit UI
Components 16
User Interfaces
- CLI
review.py - Streamlit UI
app.py
Review Workflow
- LangGraph Workflow
graph.py - Review State
state.py - Memory Checkpoint
graph.py - Review Router
nodes.py
Static Analysis
- Ingest Code
nodes.py - Complexity Check
nodes.py - Pattern Scanner
security.py
LLM Review
- Quick Review
nodes.py - Deep Review
nodes.py - Security Review
nodes.py - Report Generator
nodes.py
Other components
- Code Submitter
- Radon
- Groq LLM
Connections 23
- Code Submitter → CLI: submits code
- Code Submitter → Streamlit UI: submits code
- CLI → LangGraph Workflow: streams review
- Streamlit UI → LangGraph Workflow: streams review
- LangGraph Workflow → Ingest Code: starts
- Ingest Code → Complexity Check: passes state
- Complexity Check → Radon: calculates complexity
- Complexity Check → Pattern Scanner: scans code
- Complexity Check → Review Router: provides findings
- Review Router → Quick Review: selects default
- Review Router → Deep Review: selects high complexity
- Review Router → Security Review: prioritizes security
- Quick Review → Groq LLM: requests review
- Deep Review → Groq LLM: requests review
- Security Review → Groq LLM: requests review
- Quick Review → Report Generator: passes findings
- Deep Review → Report Generator: passes findings
- Security Review → Report Generator: passes findings
- Report Generator → Groq LLM: requests summary
- LangGraph Workflow → Memory Checkpoint: checkpoints state
- LangGraph Workflow → Review State: updates state
- Report Generator → CLI: returns report
- Report Generator → Streamlit UI: returns report