Skip to main content

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.

Release

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

  1. Stage your changes as you normally would:

    git add .
    
  2. Instead of using git commit, use GitMuse:

    gitmuse commit
    
  3. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitmuse-0.1.7.tar.gz (16.9 kB view details)

Uploaded Source

Built Distribution

gitmuse-0.1.7-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

Details for the file gitmuse-0.1.7.tar.gz.

File metadata

  • Download URL: gitmuse-0.1.7.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for gitmuse-0.1.7.tar.gz
Algorithm Hash digest
SHA256 d544c61c46ce062c5c72eb01e217241ae6aaffe2f925c322484fb5168e973f70
MD5 a6217def5163d1aa0f5d980d6d5f945e
BLAKE2b-256 7fe9951d8fe3ab20dea3ef6afb07985917b77cbd339ae434cf89ded3a8d3552a

See more details on using hashes here.

File details

Details for the file gitmuse-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: gitmuse-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 22.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for gitmuse-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 2b167f1f95637e5eaa279bd5b7f890d108f822b36f6a39e1b63fca212b8c84ce
MD5 890392386b71fd659abf6830b0f9102e
BLAKE2b-256 4c9b708dc0ae3ebc558e2a4a3d1efb824fa4eee3fe6a127e90063c113b9e7d60

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page