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.
Metadata
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 | Provenance | Actions |
|---|---|---|---|---|
| commit_buddy-0.1.0.tar.gz | 6.4 kB | Without provenance | Details for commit_buddy-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| commit_buddy-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for commit_buddy-0.1.0-py3-none-any.whl |
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
|
Security for commit-buddy 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.