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.8.tar.gz (21.6 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.8-py3-none-any.whl (26.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: agent_gitv1-0.1.8.tar.gz
  • Upload date:
  • Size: 21.6 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.8.tar.gz
Algorithm Hash digest
SHA256 26addd548b7b6ef25d5460d62ca39ebec08d32c9c318f79507fa49403348515f
MD5 451e25ddd38874d6080a88856e9e6077
BLAKE2b-256 2b7e79159f949247ababecd9a810b7ff975672622f011d8811a1bec404da4aa7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: agent_gitv1-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 26.9 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 35945e5bb3407ef1d0bcd2d634898d4dc6bd4cec14252d5c9f3a493385e4703b
MD5 376fe3862575d8af8258780d66b59470
BLAKE2b-256 23d348acf35e5b093f934a83236fe38daa4abb0799615ec964467ac0e493f0fe

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