LLM-assisted conventional commits generator for git repositories. Automatically generates git add and commit lines based on git diff and status.
Project description
gitmeup
gitmeup is a lightweight command-line tool that automates Conventional Commit generation using an LLM.
It analyses your working tree using git diff --stat, git status, and a filtered git diff, then produces
atomically grouped git add and git commit commands with strict path-quoting rules.
This improves commit hygiene in large or fast-moving repositories while reducing cognitive overhead.
Features
- Extracts:
git diff --statgit status --shortgit diffexcluding image and binary noise
- Sends structured context to an LLM
- Produces:
- Precise Conventional Commits
- Batched
git add/git commitsequences - Proper double-quote path escaping
- Dry-run or apply mode
- Minimal overhead, only Python and git required
Installation
Local development (editable)
git clone https://github.com/ikramagix/gitmeup
cd gitmeup
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -e .
System-wide (user environment)
pip install git+https://github.com/ikramagix/gitmeup
Ensure GEMINI_API_KEY is configured:
export GEMINI_API_KEY="your-key"
You also need a model with:
export GITMEUP_MODEL="a gemini model"
Usage
From any git repository with uncommitted changes:
gitmeup
Dry-run prints proposed commands. To apply staged operations:
gitmeup --apply
Specify a model:
gitmeup --model gpt-4.1
Specify an API key manually:
gitmeup --api-key sk-....
Example
gitmeup
Sample output:
git add src/app/main.py
git add src/app/utils/helpers.py
git commit -m "refactor(core): clean helper logic"
License
MIT License. See LICENSE for details.
Maintainer
Created and maintained by @ikramagix.
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 gitmeup-1.0.0.tar.gz.
File metadata
- Download URL: gitmeup-1.0.0.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ebb082a3b851fc2bb63e3a73f0d832e184b8f5f78714342608fe44f52562a592
|
|
| MD5 |
3b1d19a9816305727d492bbb36facf09
|
|
| BLAKE2b-256 |
400f0b6c0e7d81de183fca3ea4fc18e108fdc5e93a07e53558e66a3b1b339103
|
File details
Details for the file gitmeup-1.0.0-py3-none-any.whl.
File metadata
- Download URL: gitmeup-1.0.0-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
156789af7e226910f847ec57c47986350b87aa91c0b4a468ce363ffaa53fd0b8
|
|
| MD5 |
14875f4cdd44da80e168f910dad59711
|
|
| BLAKE2b-256 |
26d8b136c33e5997c654360b43aa094b48133cf70e5ce547f282f61a026158ce
|