Skip to main content

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 assess and execdiff-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

  1. Make your code change (or let your AI copilot make changes)

  2. Stage your changes with git

    git add .
    # For new files, you may need:
    git add -N .
    
  3. 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

  1. Reads git diff - Gets all staged changes
  2. Extracts symbols - Finds functions, classes, and variables
  3. Detects changes - Identifies NEW, MODIFIED, or DELETED code
  4. 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

execdiff_git_ai-1.0.3.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

execdiff_git_ai-1.0.3-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

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

Hashes for execdiff_git_ai-1.0.3.tar.gz
Algorithm Hash digest
SHA256 d2bb1476613b5718a73ab6e098fbfd26037720e42de8b07733e4845b0b44177b
MD5 a847d156a5d337e62610758523e43170
BLAKE2b-256 831747b08b912ba8c8abad3c52a0d8f97c61832ca8ce4e8273ca17714c6478da

See more details on using hashes here.

File details

Details for the file execdiff_git_ai-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for execdiff_git_ai-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8b7b4021a706cc2df32d928cd08a6e890b7ecf2bc3e87ce485242d7f3c6832f2
MD5 ff3fe1e668d532ebc8f1206862c05fae
BLAKE2b-256 b39e2a57070638eb831ac969ff83651c33a763f4f9ce08b3d09ab77a2a0ba36d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page