AI-powered git commit message generator
Project description
AI Commit
An AI-powered git commit message generator that helps you write better commit messages. Currently supports Qwen API, with planned support for OpenAI, Claude, and DeepSeek.
Features
- Generate meaningful commit messages based on your staged changes
- Support for multiple AI providers (currently Qwen, with more coming soon)
- Easy configuration and API key management
- Beautiful CLI interface with rich formatting
- Cross-platform support (Windows, macOS, Linux)
Installation
Option 1: Using Installation Scripts (Recommended)
On macOS/Linux:
# Download the installation script
curl -O https://raw.githubusercontent.com/SimonGino/aicommit/main/scripts/install.sh
# Make it executable
chmod +x install.sh
# Run the installer (requires sudo)
sudo ./install.sh
On Windows:
- Open PowerShell as Administrator
- Run the following commands:
# Download and run the installation script
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/SimonGino/aicommit/main/scripts/install.ps1" -OutFile "install.ps1"
.\install.ps1
Option 2: Manual Installation
- Download the latest binary for your platform from the releases page
- Add the binary to your system PATH:
- Windows: Copy to
C:\Program Files\aicommit\ - macOS/Linux: Copy to
/usr/local/bin/
- Windows: Copy to
Option 3: Using pip (Python package)
pip install aicommit
Configuration
Before using the tool, you need to configure your AI provider API key. Currently, Qwen API is supported:
aicommit config --provider qwen --api-key your-api-key-here
Usage
- Stage your changes using git:
git add . # or specific files
- Generate and commit with AI-generated message:
aicommit
You can also specify a different provider:
aicommit --provider qwen # Use Qwen API
aicommit --provider deepseek # Use DeepSeek API
Or use it with a manual message (skips AI):
aicommit -m "your message"
Configuration
API Keys
- For Qwen API:
aicommit config --provider qwen --api-key your-api-key
- For DeepSeek API:
aicommit config --provider deepseek --api-key your-api-key
Language Settings
You can set the output language for commit messages:
aicommit config --language en # English
aicommit config --language zh-CN # Simplified Chinese
aicommit config --language zh-TW # Traditional Chinese
Language Settings
You can configure the output language for commit messages. Currently supported languages:
- English (en)
- Simplified Chinese (zh-CN)
- Traditional Chinese (zh-TW)
aicommit config --language en # Set to English
aicommit config --language zh-CN # Set to Simplified Chinese
aicommit config --language zh-TW # Set to Traditional Chinese
## Uninstallation
### On macOS/Linux:
```bash
# Download the uninstallation script
curl -O https://raw.githubusercontent.com/SimonGino/aicommit/main/scripts/uninstall.sh
# Make it executable
chmod +x uninstall.sh
# Run the uninstaller (requires sudo)
sudo ./uninstall.sh
On Windows:
- Open PowerShell as Administrator
- Run the following commands:
# Download and run the uninstallation script
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/SimonGino/aicommit/main/scripts/uninstall.ps1" -OutFile "uninstall.ps1"
.\uninstall.ps1
Development
- Clone the repository
- Install PDM if you haven't already:
pip install pdm
- Install dependencies:
pdm install
- Run the CLI:
pdm run aicommit
Building
Building Python Package
To build the package for Python distribution:
pdm build
Building Binary Executable
To build a standalone binary executable:
pdm run build-binary
This will create a single executable file in the dist directory that can be run without Python installation.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT
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 aicommit_simongino-0.1.0.tar.gz.
File metadata
- Download URL: aicommit_simongino-0.1.0.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76154a88a2a608d97203a2649e5c41f5c32fb2422fe7b1889918464fb5c623d1
|
|
| MD5 |
adc8033375dd209b3c120b1330705db6
|
|
| BLAKE2b-256 |
d05f5e592c1776990d1cc524b0c19bebe4459de62c9a1b86d5059c5369d098d0
|
File details
Details for the file aicommit_simongino-0.1.0-py3-none-any.whl.
File metadata
- Download URL: aicommit_simongino-0.1.0-py3-none-any.whl
- Upload date:
- Size: 12.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6f3de446ad7c539393e001efbf32ff9552bbaa82818775fd2e2b90466bd9510
|
|
| MD5 |
677b50c946e607f04ffbce928bede5cd
|
|
| BLAKE2b-256 |
1c8c131eaaf1755e23bb3b924f23bd8f1432be4802d74af4ebc9d0b35fa5882d
|