Skip to main content

A CLI tool to generate commit messages based on git diffs using AI

Project description

demo

CommitCrafter 🎨

Craft your commit messages while you focus on coding. CommitCrafter analyzes your git diff and generates meaningful, conventional commit messages.

✨ What's Cool

  • 🤖 Multiple AI Brains: Choose your favorite - GPT, Claude, Gemini, Mistral, or Ollama
  • 🎯 Smart Selection: Pick from multiple suggestions for the perfect commit message
  • 📋 Auto-Copy: Selected message goes straight to your clipboard
  • 🎭 Conventional Commits: Proper formatting with emojis included
  • 🔌 Just Works: Zero config needed - works with any git repo

🚀 Quick Start

# Install with pipx
pipx install commitcrafter

# Use it (in any git repository)
commitcraft         # Uses Claude by default
commitcraft -a gpt  # Or use GPT instead

🎮 Choose Your Model

commitcraft -a claude   # Anthropic's Claude
commitcraft -a gpt      # OpenAI's GPT
commitcraft -a gemini   # Google's Gemini
commitcraft -a mistral  # Mistral AI
commitcraft -a ollama   # Local Ollama

🔑 Setup

You'll need an API key for your chosen model. Set it as an environment variable:

# Pick the one you need:
export ANTHROPIC_API_KEY='your-key'
export OPENAI_API_KEY='your-key'
export GEMINI_API_KEY='your-key'
export MISTRAL_API_KEY='your-key'
export OLLAMA_API_KEY='your-key'

📦 Requirements

  • Python 3.12+
  • A git repository
  • An API key for your chosen model

🤝 Contributing

Found a bug? Have an idea? PRs and issues are always welcome!

📝 License

MIT - Do whatever you want with it!

🔗 Useful Links

🛠️ Built With

🤖 AI Providers

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

commitcrafter-0.3.2.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

commitcrafter-0.3.2-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file commitcrafter-0.3.2.tar.gz.

File metadata

  • Download URL: commitcrafter-0.3.2.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.1 CPython/3.12.6 Darwin/24.0.0

File hashes

Hashes for commitcrafter-0.3.2.tar.gz
Algorithm Hash digest
SHA256 a8ecf4b2da063e00307f706c7132ce933da89dceda60ab214589edd7d7ebab52
MD5 addb4f2af2ab846cfd56984b0bc2060b
BLAKE2b-256 53c8e9c79f4157a70b2d91ef4c61c463039245460ee65e635145a964d7e7fba0

See more details on using hashes here.

File details

Details for the file commitcrafter-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: commitcrafter-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 8.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.1 CPython/3.12.6 Darwin/24.0.0

File hashes

Hashes for commitcrafter-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d28a99049fa5d730cdc75de75eb251ca9c4f64f8c88c20574c13759a0e2a7b8c
MD5 9aecd887e46d330e9a6183b03ef55a15
BLAKE2b-256 81b757bd692dc79f2775c926599e85d73f120e30fe9480c176182b5ce22b380f

See more details on using hashes here.

Supported by

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