git commit-at
AI-powered git commit message generator — local, private, no API key needed.
git commit-at analyzes your staged changes and suggests 3 conventional commit messages
using a locally-running AI model (Ollama). Pick one, customize it, and commit — all from
the terminal.
Why git commit-at?
| git commit-at | Manual commits | Cloud AI tools | |
|---|---|---|---|
| Private | ✅ 100% local | ✅ | ❌ sends code to cloud |
| No API key | ✅ | ✅ | ❌ requires subscription |
| Conventional commits | ✅ auto | ❌ manual discipline | ⚠️ sometimes |
| Branch visualizer | ✅ built-in | ❌ | ❌ |
| Commit history | ✅ tracked | ❌ | ❌ |
Install
npm install -g git commit-at
Requires: Docker (all AI/backend services run in containers — no extra setup).
How to use
# 1. Stage your changes
git add .
# 2. Run the tool
git commit-at
# 3. First time: register/login at http://localhost:7860
# 4. Pick a suggested commit message
# 5. Confirm — done!
On first run, Docker starts Ollama, Redis, and the Gradio UI automatically.
Features
- 🤖 3 AI suggestions per run, tailored to your actual diff
- 📋 Conventional commits —
feat:,fix:,refactor:,chore:, etc. - 🎫 Ticket integration — prefix messages with JIRA/Linear ticket numbers
- 🌿 Branch visualizer — live git branch DAG in the web UI
- 📊 Commit history — track everything you've committed across repos
- 🔐 Session persistence — stay logged in between runs
- 🐳 Zero local dependencies — everything runs in Docker
Numbers
(TBH — to be updated with real metrics)
| Metric | Value |
|---|---|
| Average suggestion time | ~5–10 s |
| First-run setup time | ~30 s |
| AI model size | ~1 GB (qwen2.5-coder:1.5b) |
| Runs entirely offline after setup | ✅ |
Links
- 📦 npm: https://www.npmjs.com/package/git-commit-at
- 💻 GitHub: https://github.com/bhargavirengarajan21/git-commit-at
- 🎬 Demo: Coming soon
Install now
Quick Start
# Install
npm install -g git commit-at
# Go to any git repo
cd your-project
git add .
# Generate commit message
git commit-at
The first run starts all Docker services and opens the login UI at http://localhost:7860.
After login, you'll see 3 commit message suggestions based on your staged diff.
How it works
git commit-at (CLI)
│
├── Checks Docker services
│ ├── Ollama (AI model, port 11434)
│ ├── Redis (session + cache, port 6379)
│ └── Gradio (web UI, port 7860)
│
├── Waits for login at http://localhost:7860
│
└── Runs commit flow
├── Reads git diff of staged files
├── Sends diff to Ollama (qwen2.5-coder:1.5b)
├── Streams 3 commit suggestions
├── Prompts: ticket number? format?
├── You pick a message
└── git commit -m "..."