A CLI tool to automatically generate git commit messages using OpenAI GPT-4
Project description
AI-powered Git Helper (AIGIT)
AIGIT is a command-line interface (CLI) tool that uses OpenAI to generate commit messages for your Git repositories. It checks the status of your Git repository, generates a commit message based on the changes, and commits those changes.
Installation
To install AIGIT, you need Python 3.6+ installed on your system. You can install it directly from PyPI:
pip install aigit
Or if you prefer using uv (recommended for faster installation):
uv pip install aigit
Configuration
Before using AIGIT, you need to configure your OpenAI API key. Run the following command and enter your API key when prompted:
aig --config
Usage
$ aig -h
usage: aig [-h] [--config] [-y]
AI-powered Git Helper
options:
-h, --help show this help message and exit
--config Configure API Key
-y, --yes Auto commit without asking for confirmation
To use AIGIT, navigate to your Git repository and run the following command:
aig
AIGIT will check the status of your Git repository, generate a commit message, and ask for your confirmation before committing the changes. If you want to auto commit without confirmation, use the -y or --yes option:
aig -y
Development
Setup Development Environment
- Clone the repository
- Install uv if you haven't already:
pip install uv - Install dependencies:
uv pip install .
Making Changes
The project uses pyproject.toml for dependency management and build configuration. To add new dependencies:
uv add <package-name>
To remove dependencies:
uv remove <package-name>
Building and Publishing
- Update the version in
pyproject.toml - Build the package:
uv build - Publish to PyPI:
uvx twine upload dist/*
Contributing
Contributions are welcome! Please feel free to submit a pull request.
License
AIGIT is open-source software licensed under the MIT license.
Project details
Release history Release notifications | RSS feed
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 aigit-0.1.8.tar.gz.
File metadata
- Download URL: aigit-0.1.8.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99b8a5de74ca47c04e0830fdfc8b43d026a38d48f88186bbe48e9305a80e6e0c
|
|
| MD5 |
a844cb8c617fcaeb21543368c329abc8
|
|
| BLAKE2b-256 |
b7e572649515b4c659595868a1d41f9f0a484f68562c7cc6e5fd488d038f1783
|
File details
Details for the file aigit-0.1.8-py3-none-any.whl.
File metadata
- Download URL: aigit-0.1.8-py3-none-any.whl
- Upload date:
- Size: 6.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68c45374fa7d5de1dba535e5ec5a20add259ae01c0bd9d8191d83d6cd160cfff
|
|
| MD5 |
b0d2b7ecce52166fb3cbc4d50297f701
|
|
| BLAKE2b-256 |
18b62b8ad1c6b8c82c1c96cc6bc5d5272650cbe035aae2ade0e515b904f516f8
|