Skip to content

meklasdev/gitwhisper

Repository files navigation

🤫 GitWhisper

Typing SVG

The CLI that whispers perfect commit messages using AI

License Go Version Stars PRs Welcome


✨ Why GitWhisper?

🔒 Privacy First

Run Ollama locally. Your code never leaves your machine. Perfect for corporate environments.

🌐 Universal

Works with OpenAI, Gemini, Ollama, and any OpenAI-compatible API (Groq, DeepSeek, etc.).

🎨 Beautiful UX

Modern terminal UI with colors, spinners, and smooth interactions powered by Charm libraries.

Lightning Fast

Written in Go. Single binary. Zero dependencies. Instant startup.


🚀 Quick Start

# Clone the repo
git clone https://github.com/meklas/gitwhisper.git
cd gitwhisper

# Build (requires Go 1.21+)
go build -o gitwhisper .

# Stage your changes
git add .

# Let AI write your commit
./gitwhisper generate

🛠️ Configuration

Create ~/.gitwhisper.yaml:

ai:
  provider: ollama  # openai | ollama | gemini | openai-compatible

  # Ollama (Local & Private)
  ollama_endpoint: "http://localhost:11434/api/generate"
  ollama_model: "mistral"  # or qwen, llama3, etc.

  # OpenAI
  openai_api_key: "sk-..."
  openai_model: "gpt-4o"

  # Google Gemini
  gemini_api_key: "AIza..."
  gemini_model: "gemini-pro"

  # Generic (DeepSeek, Groq, etc.)
  # openai_base_url: "https://api.deepseek.com/v1/chat/completions"

� Features

Feature Description
🔐 Privacy Local models via Ollama - no data leaves your machine
🤖 Multi-AI OpenAI, Gemini, Ollama, or any compatible provider
📝 Conventional Commits Generates feat:, fix:, docs: format automatically
✏️ Interactive Review, edit, or reject before committing
🎨 Beautiful CLI Lipgloss styling + Bubbletea TUI
Fast Go binary - instant startup, no runtime needed

🧠 Supported AI Providers

Provider Privacy Speed Quality Models
Ollama 🟢 Local ⚡ Fast ⭐⭐⭐⭐ mistral, llama3, qwen
OpenAI 🔴 Cloud ⚡⚡ Very Fast ⭐⭐⭐⭐⭐ gpt-4o, gpt-3.5-turbo
Gemini 🔴 Cloud ⚡⚡⚡ Ultra Fast ⭐⭐⭐⭐ gemini-pro
Compatible 🟡 Varies 🟡 Varies 🟡 Varies Groq, DeepSeek, LocalAI

📸 Demo

$ git add .
$ gitwhisper generate

⠋ Generating commit message...

╭─────────────────────────────────────────────────╮
│                                                 │
│  feat: add multi-provider AI engine support    │
│                                                 │
╰─────────────────────────────────────────────────╯

Commit with this message? (y/n/e[dit]): y
✓ Commit successful!

🏗️ Architecture

Built with industry-standard Go libraries:


🤝 Contributing

Contributions are welcome! See CONTRIBUTING.md for guidelines.

  1. Fork the repo
  2. Create your feature branch (git checkout -b feature/amazing)
  3. Commit using GitWhisper 😉 (gitwhisper generate)
  4. Push and open a PR

� License

MIT © meklasdev


⭐ Star this repo if you find it useful!

Made by meklas with Go ⚡

About

AI-powered commit message generator - Privacy-first with Ollama, OpenAI, Gemini support. Built with Go.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages