# git-commit-at: Generate conventional commit messages locally with AI (no API key needed)

> Source: <https://dev.to/bhargavirengarajan21/git-commit-at-generate-conventional-commit-messages-locally-with-ai-no-api-key-needed-1nc4>
> Published: 2026-06-15 22:20:51+00:00

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](https://github.com/bhargavirengarajan21/git-commit-at)

npm: [https://www.npmjs.com/package/git-commit-at](https://www.npmjs.com/package/git-commit-at)

Hugging face: [https://huggingface.co/spaces/build-small-hackathon/git-commit-app](https://huggingface.co/spaces/build-small-hackathon/git-commit-app)

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.
