DEV Community

Vlad
Vlad

Posted on

Stop Writing Boring Commit Messages. Let a Local AI Do It for You.

How many times have you typed git commit -m "fix stuff" or git commit -m "wip" because you just wanted to push your code and grab a coffee?

Writing great, meaningful commit messages is a hallmark of a good developer. It helps your team, makes code reviews easier, and keeps your project history clean. But let’s be honest: when you’re deep in the zone, writing a perfect Conventional Commit is the last thing you want to spend brainpower on.

Enter komit β€” an AI-powered git commit message generator that runs 100% locally on your machine. No API keys, no internet required, and completely private.


🧠 Why komit?

There are plenty of AI commit generators out there, but most of them send your proprietary diffs to external APIs (like OpenAI or Anthropic). If you are working on a closed-source enterprise project, that’s a massive security no-no.

komit bridges the gap by leveraging Ollama to run lightweight, powerful open-source LLMs right on your laptop.

✨ Key Features:

  • πŸ”’ Pure Privacy: Everything stays on your machine via Ollama. No data leaks.
  • 🌿 Smart Branch Inference: It automatically reads your active git branch (e.g., feat/auth-login) to extract the exact Conventional Commit type (feat) and scope (auth) before the AI even starts writing!
  • πŸ“ Multiple Styles: Choose between conventional, simple, or detailed commit formats depending on your team's workflow.
  • ⚑ Safe & Interactive: It previews the message, letting you accept it, reject it, regenerate a new one, or open your default terminal editor ($EDITOR) to tweak it before finalizing.
  • πŸͺŸ Universal & Fast: Works seamlessly across Linux, macOS (including Apple Silicon), and Windows.

πŸ› οΈ The Interactive Developer Experience

When you run komit, you get a beautiful, clean terminal interface:

┬──────────────────────── Staged files (3) ────────────────────────┬
β”‚  β€’ src/auth.py                                                   β”‚
β”‚  β€’ tests/test_auth.py                                            β”‚
β”‚  β€’ README.md                                                     β”‚
┴──────────────────────────────────────────────────────────────────┴
Branch name: feature/auth-tokens
Model: qwen2.5:7b Β· Style: conventional

β ‹ Generating commit message...

┬──────────────────── Suggested commit message ────────────────────┬
β”‚ feat(auth): add JWT authentication token engine [feature/auth-t… β”‚
┴──────────────────────────────────────────────────────────────────┴

Β» Choose an action: (y)es, (n)o, (e)dit, (r)egenerate [y]: 

Enter fullscreen mode Exit fullscreen mode

What do those options do?

  • y (Yes) $\rightarrow$ Instantly runs git commit -m "..." for you.
  • n (No) $\rightarrow$ Aborts the mission without touching your code.
  • e (Edit) $\rightarrow$ Launches your environment editor (git commit -m ... -e) so you can perfect the AI's draft.
  • r (Regenerate) $\rightarrow$ Feeds the diff back to Ollama for a fresh perspective.

πŸš€ Getting Started in 60 Seconds

1. Prerequisites

You just need Ollama installed and a local model pulled down. We recommend any of these depending on your system specs:

# High quality (Recommended)
ollama pull qwen2.5:7b

# Great balance
ollama pull mistral:7b

# Blazing fast / Resource friendly
ollama pull llama3.2:3b

Enter fullscreen mode Exit fullscreen mode

2. Installation

You can install komit using your preferred method:

Via pipx (Recommended for Python CLI tools):

pipx install komit

Enter fullscreen mode Exit fullscreen mode

Via Shell Script (Linux/macOS):

curl -fsSL https://raw.githubusercontent.com/glemiu6/komit/master/scripts/install.sh | bash

Enter fullscreen mode Exit fullscreen mode

Via PowerShell (Windows):

irm https://raw.githubusercontent.com/glemiu6/komit/master/scripts/install.ps1 | iex

Enter fullscreen mode Exit fullscreen mode

3. Pro-Tip: Create a Git Alias

Make your life even easier by aliasing it directly in git:

git config --global alias.ai '!komit'

Enter fullscreen mode Exit fullscreen mode

Now, your workflow becomes:

git add .
git ai

Enter fullscreen mode Exit fullscreen mode

βš™οΈ Customization & Styles

By running komit init, the tool sets up a global configuration file (~/.config/komit/config.toml) where you can tweak your default model, timeout limits, and preferred output style.

Here is what the different styles look like:

Conventional (Default)

feat(auth): add user authentication [feature/login]

Simple

Add user authentication [feature/login]

Detailed

feat(auth): add user authentication [feature/login]
- Add JWT token generation pipeline
- Implement password security layers using bcrypt primitives
- Append rotation verification routes


πŸ›‘οΈ Open Source & Contributing

komit is fully open-source under the Apache License 2.0. If you want to check out the code, report a bug, or add a feature, feel free to drop by the repository!

πŸ‘‰ Check out komit on GitHub

Give it a spin, and let me know in the comments: Do you trust AI to write your commit messages, or are you a commit-message purist? πŸ‘‡

Top comments (0)