# I Built a CLI Tool That Writes Better Git Commits Than I Do

> Source: <https://dev.to/z_z_c01afd7cf4c3764a2c73d/i-built-a-cli-tool-that-writes-better-git-commits-than-i-do-82f>
> Published: 2026-05-26 13:33:47+00:00

Have you ever stared at a terminal after `git commit`

, trying to remember what you changed?

I have. Every single day.

Then I'd type "fixed stuff" or "update" and move on. Six months later, every `git log`

was a graveyard of useless messages.

So I built **git-copilot**.

``` bash
$ git add .
$ git-copilot gen
✨ feat(api): add user routes and controller
3 file(s), +124/-15 lines
```

Reads your staged diff, analyzes the files, and generates a conventional commit message. About 5 seconds.

No AI. No API calls. No internet. Pure Python stdlib with smart heuristics.

| Change | Auto-detects |
|---|---|
| src/*.py, *.js | feat |
| _test.py, spec.js | test |
| README.md, docs/* | docs |
| Dockerfile, .github/ | build or ci |
| *.css, *.scss | style |

Scope is inferred from directory names - api/, ui/, db/, auth/, config/. Breaking changes detected from migration files or BREAKING CHANGE keywords.

```
pip install git-copilot
```

Or from GitHub:

```
git clone https://github.com/zhirenhun-stack/git-copilot
cd git-copilot && pip install -e .
git-copilot gen
git-copilot gen --type fix
git-copilot config
git-copilot init
```

The free version is fully functional and open source. The Pro Pack includes:

I got tired of writing "wip" for every commit. Now I run `git-copilot gen | git commit -F -`

and get back to coding. Clean commits, every time.

Repo: [https://github.com/zhirenhun-stack/git-copilot](https://github.com/zhirenhun-stack/git-copilot)

Pro Pack: [https://zhirenhun.gumroad.com/l/git-copilot-pro](https://zhirenhun.gumroad.com/l/git-copilot-pro)
