Skip to main content

AI-powered Git CLI using MCP + OpenAI, Gemini, or Ollama for commit workflows

Project description

agent-gitv1

AI-powered Git CLI for commit, push, explain, and pull-request workflows using MCP + LLMs.

What It Does

agent-gitv1 helps developers move faster in git workflows by generating commit messages, explaining large diffs, diagnosing push failures, and drafting PR titles/descriptions.

Supported LLM providers:

  • Google Gemini
  • OpenAI
  • Ollama (local or same network)

Quick Start

  1. Install:
pip install agent-gitv1
  1. Configure your provider:
agent config
  1. Run in any git repo:
agent commit
agent explain
agent pr
agent push

Key Features

  • AI-assisted commit messages with multiple suggestions
  • Smart staging mode that can split work into logical commit groups
  • Repository-aware commit style adaptation from recent commit history
  • agent explain for change intent, risk, and impacted files
  • agent push with live command output and LLM-driven failure diagnosis
  • Adaptive push diagnostics (light or full evidence collection)
  • Interactive PR drafting with remote detection and branch selection
  • Optional PR creation via GitHub CLI (gh pr create)
  • Ollama LAN auto-discovery (/24 subnet on port 11434)

Requirements

  • Python 3.10+
  • Git
  • uvx (install with pip install uv)
  • Provider credentials for Gemini/OpenAI, or a reachable Ollama instance
  • GitHub CLI (gh) if you want agent pr --create

Installation

pip install agent-gitv1

Verify installation:

agent --version
agent --help

Configuration

agent config

Provider notes:

  • Gemini: uses GEMINI_API_KEY env var or key entered during config
  • OpenAI: uses OPENAI_API_KEY env var or key entered during config
  • Ollama: can auto-detect URLs such as http://192.168.1.35:11434

Commands

agent commit

Generate AI commit messages and commit changes.

Examples:

agent commit
agent commit --suggestions 3
agent commit --no-smart-stage
agent commit --repo /path/to/repo
agent commit --verbose

Behavior highlights:

  • Uses MCP git diff for normal commit flow
  • Can auto-group changed files and create multiple commits
  • Adapts commit style to recent repository history

agent explain

Explain current uncommitted changes in a developer-friendly format.

Examples:

agent explain
agent explain --repo /path/to/repo

Output includes:

  • What changed
  • Why it likely changed
  • Risk areas
  • Files impacted

agent pr

Generate PR title/body from commits + diff, then optionally create PR via GitHub CLI.

Examples:

agent pr
agent pr --create
agent pr --draft --create
agent pr --target-remote upstream
agent pr --target-remote upstream --base develop --head feature/my-branch --create

Interactive flow (default):

  • Detect remotes (origin, upstream, etc.)
  • Let user choose PR target remote if multiple exist
  • Fetch and let user choose base branch
  • Compare ahead/behind status and warn if branch is behind target
  • Generate PR title and description with LLM
  • Optionally create PR with gh pr create

agent push

Push current branch (or explicit branch) with live output.

Examples:

agent push
agent push --branch main
agent push --remote origin --branch feature/my-branch

Behavior highlights:

  • Auto-detects and pushes current local branch when --branch is omitted
  • If no upstream exists, offers git push --set-upstream
  • On failure, collects live git evidence and generates LLM diagnosis with fix commands

agent config

Configure provider, model, and Ollama endpoint/model.

agent --help

List all commands and options.

Environment Variables

  • GEMINI_API_KEY
  • OPENAI_API_KEY

GitHub CLI Requirement for PR Creation

agent pr --create requires authenticated GitHub CLI.

gh auth status
gh auth login

Developer Setup (Optional)

Only if you are modifying this codebase locally:

git clone <repo-url>
cd Agent_bhai
pip install -e .

Build and Publish (PyPI)

python -m pip install --upgrade build twine
python -m build
python -m twine check dist/*
python -m twine upload dist/*

License

MIT

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

agent_gitv1-0.1.10.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

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

agent_gitv1-0.1.10-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

Details for the file agent_gitv1-0.1.10.tar.gz.

File metadata

  • Download URL: agent_gitv1-0.1.10.tar.gz
  • Upload date:
  • Size: 23.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for agent_gitv1-0.1.10.tar.gz
Algorithm Hash digest
SHA256 c374bcd2c457cd3c5e8752be28922949b349a4dd873cbaddc1bc586f9c25dfc2
MD5 8a0cf095828fe9018f68d953343ce788
BLAKE2b-256 5db81d606de3d473ba16b0915cdf3057b6b5886e56cceb23e88862b7a7fdc041

See more details on using hashes here.

File details

Details for the file agent_gitv1-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: agent_gitv1-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 29.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for agent_gitv1-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 026b4fd721b3d955783db5a2a7382aa73e9a3c688fa466fe513d32e8c8ef9a90
MD5 02c366163f962a04793d88ac648e26d4
BLAKE2b-256 0ab4c8b10c52521a51c7b71a31056d4bc11cad14b566809c5f3371b2995f46f5

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