We all know the commit history that looks like this:
fix
wip
actually fix
update
FINAL fix
AI tools can help, but most of them send your code diff to the cloud and require a paid API key. That's a non-starter for private repos or sensitive codebases.
What I built
git-commit-at is an npm CLI that analyzes your staged diff and suggests 3 conventional commit messages using a locally-running AI model. Nothing leaves your machine.
npm install -g git-commit-at
Then, in any git repo:
git add .
git-commit-at
You get an interactive prompt to pick a message, optionally add a ticket number (JIRA, Linear, etc.), and confirm. Done.
How it works under the hood
git-commit-at (CLI)
│
├── Checks if Docker services are running
│ ├── Ollama — runs qwen2.5-coder:1.5b locally (port 11434)
│ ├── Redis — session + cache (port 6379)
│ └── Gradio — web UI for login/history (port 7860)
│
├── Reads your staged git diff
├── Streams 3 commit suggestions from Ollama
├── You pick one (and optionally add a ticket prefix)
└── Runs git commit
On first run, Docker pulls the model (~1 GB) and starts the services. After that, suggestions take about 5–10 seconds.
Features
Feature Details
AI suggestions 3 per run, based on your actual diff
Conventional commits feat:, fix:, refactor:, chore:, etc.
Ticket integration Prefix with JIRA/Linear ticket numbers
Branch visualizer Live git DAG in the web UI
Commit history Tracked across all your repos
Fully offline After first model download
Privacy 100% local — no data sent anywhere
Requirements
Docker (all backend services run in containers)
Node.js 18+
That's it. No Ollama install, no Python setup, no API keys.
Install
npm install -g git-commit-at
GitHub: https://github.com/bhargavirengarajan21/git-commit-at
npm: https://www.npmjs.com/package/git-commit-at
Hugging face: https://huggingface.co/spaces/build-small-hackathon/git-commit-app
fine-tune: https://huggingface.co/Bhargavi5q1/git-commit-messages/tree/main
Feedback welcome — especially on the Docker requirement and model choice. I'm considering making the model configurable as a first-class setting.
Both posts are ready to copy-paste. For dev.to, paste as Markdown and set the tags to git, ai, opensource, devtools. Add a cover image and a demo GIF if you have one — posts with visuals get significantly more reach there.
Top comments (0)