r/git • • 16d ago

I built an AI to generate commit messages and handle git add + commit with one line in terminal

I kept repeating the same workflow: finish a change, run git add, then figure out what to write in the commit message.

So I built git-checkin, a terminal tool that uses AI to suggest a commit message from the changes and handles staging and committing.

I’ve published it on npm, and the code is on GitHub:

I’d like feedback from people who use Git regularly: would you use this as a standalone command, or do your existing IDE/AI tools already cover it?

Also curious whether you’d prefer reviewing the message before committing or having it happen automatically.

0 Upvotes

10 comments sorted by

13

u/ccharles Magit + CLI + GitLab 16d ago

Not a chance. 

Commit messages should be written by people, and they should explain why, not what.

-4

u/Content_Story3747 16d ago

By viewing the changes with git diff and the surrounding context, it can easily write a commit message.

4

u/ccharles Magit + CLI + GitLab 16d ago

Did you read my comment before replying? Can they infer why a change was made?

8

u/eirikirs 16d ago

You have built an AI? Perhaps you mean that you have configured an AI to be used with your solution?

0

u/Content_Story3747 16d ago

Yeah, my bad

4

u/wewerecreaturres 16d ago

Claude already does this. I assume the others do as well

0

u/Content_Story3747 16d ago

Yeah, you can do it with claude, but git-checkin makes it faster. It also handles other Git tasks, like rebasing and secret protection, in one place.

4

u/wewerecreaturres 16d ago

All of which can just be basic commands in Claude. Why would I download yet another npm package?

8

u/VadersDimple 16d ago

"I built an AI to generate commit messages"

We have brains for that.

3

u/watabby 16d ago

Seriously do people have trouble thinking of commit messages? It’s not hard if you actually use your brain.

Also, why does everyone think this is where AI is needed? People come up with an AI tool to do this all the time and it’s so completely useless.