aicom (I Hate Writing Commit Messages, So I Automated Them)

24 October, 2025
2 min read
37 views

I was deep in a refactor — moving files, updating imports, tweaking types. Flow state.

Then I had to stop and write a commit message.

"What did I even change? Was it 'refactor' or 'chore'? Do I need a scope?"

Five minutes gone. Flow broken.

I tried existing tools — they were either too slow, too chatty, or required me to describe my changes anyway. Which defeats the point.

The idea: What if a CLI just read the diff and committed for me? No prompts. No thinking. Just aicom.


Building It (The Messy Middle)

First version: 50 lines of Node.js

I hacked together a script that:

  1. Ran git diff --cached
  2. Sent it to OpenAI's API
  3. Committed with the response

It worked. Barely.

The problems I hit:

1. API keys are friction
I didn't want people to sign up for OpenAI just to try this. Found OpenRouter — it aggregates multiple models and has free tier credits. Perfect.

2. Large diffs killed the context window
A big refactor would blow past token limits. Solution: truncate smartly, prioritize changed lines over context.

3. The AI was too verbose
Early commits looked like: "This commit refactors the authentication module by extracting..."
I tuned the prompt: "One line. Conventional commits format. No preamble."

4. Zero dependencies was non-negotiable
I wanted this to install fast and work everywhere. No frameworks. Pure Node (later Bun). Just the essentials.

Shipping & Reality Check

Launch day: 10 downloads

Posted on X/Twitter. One comment: "Why not just use Copilot?"

Fair question. But Copilot requires context switching and it's paid. This doesn't.

The turning point: Developers who actually used it

Started getting GitHub stars from people I didn't know. One guy opened an issue: "Works great, but can it support gitmoji?"

That's when I realized — people were actually integrating this into their workflow.

1,000 downloads later:

  • Developers using it in CI pipelines

What I learned:
Tools don't need to be perfect. They need to solve one problem really well.


What's Next

The tool works. But it's not done.

On the roadmap:

  • Streaming responses — so you see the commit message before it commits
  • Gitmoji support — because some people like their commits with 🎨 and 🐛
  • Custom templates — let people define their own commit format

It's open source for a reason:
I built this for my workflow. But if it helps yours too, contribute. Fix what bugs you. Add what you need.

👉 Try it: npm i -g aicom
👉 Repo: github.com/olllayor/aicom