CommitBuddy 🤖
Your AI-Powered Git Commit Assistant 🚀
📖 Overview
CommitBuddy is an intelligent command-line tool that revolutionizes your Git workflow by generating semantic commit messages using AI. Powered by the Ollama CLI, it provides a fun, interactive, and step-by-step process to craft clear, conventional commit messages.
✨ Key Features
🎯 Smart Commit Generation
- AI-powered semantic commit message generation
- Conventional commit format compliance
- Context-aware suggestions based on your changes
🔄 Interactive Workflow
- Step-by-Step Process: Guided commit creation with progress indicators
- Multiple Options:
- ✅ Accept & commit changes
- 🔄 Regenerate commit message
- ❌ Abort process
- Real-time Feedback: Clear status updates and error messages
🔍 Built-in Diagnostics
- Configuration verification
- Git installation check
- Ollama server connectivity test
- Model availability confirmation
🚀 Getting Started
Prerequisites
- Python 3.6 or higher
- Git (initialized repository)
- Ollama installed and running
Installation
For Users
pip install commit-buddy
For Developers
git clone https://github.com/atom2ueki/commitbuddy
cd commitbuddy
pip install -e .
⚙️ Configuration
CommitBuddy uses a .commit-buddy.yml configuration file with the following search priority:
- Current project directory
- Home directory (
~/.commit-buddy.yml)
Sample Configuration
# Model settings
model: qwen:14b # Ollama model selection
ollamaIp: localhost:11434 # Ollama server address
🎮 Usage Guide
Generate Commit Message
commitbuddy generate
The process follows these steps:
- 🔍 Loading configuration
- 📄 Retrieving staged changes
- 🤖 Generating AI commit message
- 🎯 Presenting options
- 🚀 Committing changes (if accepted)
Interactive Options
What would you like to do?
👉 [Y] Accept & commit
👉 [R] Regenerate message
👉 [N] Abort
Your choice (Y/R/N):
Run Diagnostics
commitbuddy doctor
Checks performed:
- ✅ Configuration validation
- ✅ Git installation verification
- ✅ Ollama server connection
- ✅ Model availability
🤝 Contributing
We welcome contributions! Whether it's bug fixes, feature additions, or documentation improvements, please feel free to:
- Fork the repository
- Create your feature branch
- Submit a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Release files for commit-buddy 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| commit_buddy-0.1.0.tar.gz | 6.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| commit_buddy-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.6 kB
Release files / commit_buddy-0.1.0.tar.gz
| Download URL | commit_buddy-0.1.0.tar.gz |
|---|---|
| Size | 6.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e9ad9120496aa9f9c631ab5f75b96715770002e02ab2c35550e10d58651ce487
|
|
BLAKE2b-256 checksum How to use checksums |
2f945db3f19c66a7d01d3ac0c9a47c941e89d12f296d883b875b367b345a4eb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Release files / commit_buddy-0.1.0-py3-none-any.whl
| Download URL | commit_buddy-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c9cd2c7d211edd669d0529bfb2839416242e8646016eb8aa172e20d40df5f8c9
|
|
BLAKE2b-256 checksum How to use checksums |
51198133ce0b34fdb9e519ec3bc9480de059fa93eb9168af7a9a96e557b13cf7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|