GitMuse is an AI-powered tool that helps developers craft meaningful and descriptive Git commit messages.
Project description
GitMuse
GitMuse is an AI-powered tool that helps developers craft meaningful and descriptive Git commit messages. By analyzing your staged changes, GitMuse provides intelligent suggestions for your commit messages, making your Git history more informative and easier to navigate.
Features
- AI-Powered Commit Messages: Leverages OpenAI's GPT models or Ollama for locally hosted models to generate context-aware commit messages.
- Git Integration: Seamlessly integrates with your existing Git workflow.
- Customizable: Configure AI providers, commit message styles, and other preferences via a JSON configuration file.
- Interactive CLI: User-friendly command-line interface with rich formatting for easy interaction.
- Diff Analysis: Intelligent analysis of your staged changes to provide accurate commit message suggestions.
Installation
pip install gitmuse
Note: GitMuse requires Python 3.11 or higher.
Usage
-
Stage your changes as you normally would:
git add .
-
Instead of using
git commit
, use GitMuse:gitmuse commit
-
GitMuse will analyze your changes and suggest a commit message. You can accept, modify, or reject the suggestion.
Configuration
GitMuse can be configured to match your preferences. Create a gitmuse.json
file in your project root or home directory:
{
"version": 1,
"ai": {
"provider": "ollama",
"ollama": {
"model": "llama3.1",
"url": "http://localhost:11434",
"max_tokens": 1000,
"temperature": 0.7
}
},
"commit": {
"style": "conventional",
"maxLength": 72,
"includeScope": true,
"includeBody": true,
"includeFooter": true
}
}
For more configuration options, refer to the gitmuse-schema.json
file in the repository.
Contributing
We welcome contributions! Please see our Contributing Guide for more details.
License
GitMuse is released under the MIT License. See the LICENSE file for more details.
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
File details
Details for the file gitmuse-0.1.2.tar.gz
.
File metadata
- Download URL: gitmuse-0.1.2.tar.gz
- Upload date:
- Size: 17.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eacdb23db002d0c0c79577c8b7208bf3e08f110764a476814826265f58788660 |
|
MD5 | 58120f1b8e0b07fbf36e1752bcf6070f |
|
BLAKE2b-256 | 194d33d484f46076ffb6748b0ed8628ac11aca93cd97a3c145ec8f914648cbe9 |
File details
Details for the file gitmuse-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: gitmuse-0.1.2-py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb73952c41b48e48276c50db38b96aa3bd7ce9b4e8dcad2167495e4af3beb1ef |
|
MD5 | b3423247dc5f6742deb33d012291e3bd |
|
BLAKE2b-256 | ea84b4928264c6527e23301706a23e3de2730e91df8ed40c2a7dd38342a0cf13 |