AI Impact Assessment for git changes - understand what your AI copilot changed before you commit.
Project description
ExecDiff Git AI
AI Impact Assessment for git changes - understand what your AI copilot changed before you commit it.
Intro
ExecDiff Git AI is a Python CLI tool that helps developers understand the scope and implications of code changes made by AI coding assistants (like GitHub Copilot, Cursor, or Replit AI). It analyzes git diffs and extracts modified symbols (functions, classes, variables).
100% Local - No Cloud Required
- ✅ No code is uploaded
- ✅ No cloud calls required
- ✅ No telemetry
- ✅ Works offline with optional local LLM (Ollama)
- ✅ All analysis happens on your machine
Features & Privacy
- Local-first: Runs entirely on your machine with no cloud calls or telemetry
- Fast Assessment: Quick symbol detection and impact analysis (always available)
- Optional AI Mode: Deep business-facing analysis using local Ollama (opt-in)
- CLI-first: Simple commands
execdiff-git assessandexecdiff-git ai-assess - Zero Dependencies: Non-AI mode works with just Python and Git
- Privacy-focused: No data sent to external servers
Installation
Prerequisites (Required)
- Python 3.8+
- Git
Install Package
pip install execdiff-git-ai
Optional: Ollama for AI Mode
For AI-powered analysis, optionally install:
| Component | Size | Purpose |
|---|---|---|
| Ollama | ~50MB | Local AI runtime |
| tinyllama model | ~637MB | AI analysis model |
Total: ~700MB (one-time, optional)
Install Ollama:
macOS:
brew install ollama
macOS/Linux:
curl -fsSL https://ollama.ai/install.sh | sh
Or download from: https://ollama.ai/
Initial Setup
-
Make your code change (or let your AI copilot make changes)
-
Stage your changes with git
git add . # For new files, you may need: git add -N .
-
You're ready to use ExecDiff Git AI!
Quick Assessment (No AI)
Fast, local symbol detection - no setup required.
Usage
execdiff-git assess
Example Output
==============================
📊 File Change Assessment
==============================
File +Lines -Lines
------------------------------------------------
test_feature.py 14 0
--------------------------------
================================================================================
📋 Impact Summary
================================================================================
Symbol Change Type Impact
--------------------------------------------------------
[NEW] authenticate_user function added LOW
[NEW] create_session function added LOW
[NEW] validate_token function added LOW
✅ Assessment complete!
AI-Powered Assessment
Deep analysis with business-facing summaries using local Ollama (requires optional Ollama installation).
Usage
execdiff-git ai-assess
The tool will:
- Check if Ollama is installed
- Ask permission before downloading AI model (~637MB)
- Start Ollama server automatically
- Analyze each change individually
- Get overall business impact summary
- Stop Ollama server when done
Example Output
==============================
📊 File Change Assessment
==============================
File +Lines -Lines
------------------------------------------------
test_feature.py 14 0
--------------------------------
================================================================================
📋 Impact Summary
================================================================================
Symbol Change Type Impact
--------------------------------------------------------
[NEW] authenticate_user function added LOW
[NEW] create_session function added LOW
[NEW] validate_token function added LOW
================================================================================
🤖 AI Impact Assessment
================================================================================
🚀 Starting Ollama server...
⏳ Waiting for Ollama server to start...
✅ Ollama server is ready!
🧠 Analyzing 3 changes:
• [NEW] authenticate_user... ✓
Handles user login and credential verification.
• [NEW] create_session... ✓
Establishes user sessions after authentication.
• [NEW] validate_token... ✓
Verifies tokens are valid and not expired.
• Overall impact... ✓
Overall:
• System now provides complete authentication workflow with secure token validation.
Changes:
• [NEW] authenticate_user: Handles user login and credential verification.
• [NEW] create_session: Establishes user sessions after authentication.
• [NEW] validate_token: Verifies tokens are valid and not expired.
🛑 Ollama server stopped
✅ Assessment complete!
Symbol Change Types
Each symbol is labeled with its change type:
- [NEW] - Newly added function or class
- [MODIFIED] - Existing function or class that was changed
- [DELETED] - Function or class that was removed
How It Works
- Reads git diff - Gets all staged changes
- Extracts symbols - Finds functions, classes, and variables
- Detects changes - Identifies NEW, MODIFIED, or DELETED code
- Analyzes impact - AI provides business-facing summaries (AI mode only)
Development
git clone https://github.com/anupmoncy/execdiff-git-ai.git
cd execdiff-git-ai
pip install -e .
execdiff-git assess
Library Usage
from execdiff_git_ai.agent import run_agent, run_agent_with_ai
# Non-AI mode
run_agent()
# AI mode
run_agent_with_ai()
License
Apache-2.0
Author
Anup Moncy (n93181165@gmail.com)
Contributing
Contributions welcome! Please open an issue or submit a pull request.
Note: Early-stage project. API and behavior subject to change.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file execdiff_git_ai-1.0.3.tar.gz.
File metadata
- Download URL: execdiff_git_ai-1.0.3.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2bb1476613b5718a73ab6e098fbfd26037720e42de8b07733e4845b0b44177b
|
|
| MD5 |
a847d156a5d337e62610758523e43170
|
|
| BLAKE2b-256 |
831747b08b912ba8c8abad3c52a0d8f97c61832ca8ce4e8273ca17714c6478da
|
File details
Details for the file execdiff_git_ai-1.0.3-py3-none-any.whl.
File metadata
- Download URL: execdiff_git_ai-1.0.3-py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b7b4021a706cc2df32d928cd08a6e890b7ecf2bc3e87ce485242d7f3c6832f2
|
|
| MD5 |
ff3fe1e668d532ebc8f1206862c05fae
|
|
| BLAKE2b-256 |
b39e2a57070638eb831ac969ff83651c33a763f4f9ce08b3d09ab77a2a0ba36d
|