Every project I start hits the same two friction points:
- I stage my changes and stare at the terminal thinking "how do I word this commit?"
- I clone a repo, copy
.env.exampleto.env, run the app, and get a cryptic error because three keys are missing from.env.example.
So I spent a weekend building two small tools to fix them permanently.
gitmage — Stop writing commit messages
npm install -g gitmage
git add .
gitmage
It reads your staged diff, sends it to AI (Groq for free, Claude Haiku for ~$0.0001),
and presents 3 commit options you navigate with arrow keys.
Hit enter to commit. Hit R to regenerate. That's it.
Flags worth knowing:
- --push — commit and push in one command
- --lang=ja — commit message in Japanese (or vi, zh, ko, es...)
- --dry-run — preview suggestions without committing
- --provider=claude — force Claude even if Groq key is set
→ https://github.com/long260398/gitmage
envpatch — Never deploy with a broken .env again
cp .env.example .env
manually compare files
hope I didn't miss anything
deploy
production error: "DATABASE_URL is not defined"
The workflow now:
envpatch init # creates .env from .env.example
fill in your values
envpatch check # confirms nothing is missing
And when a teammate adds a new key to .env.example:
envpatch sync # adds the missing keys to your .env automatically
Also works great in CI:
- run: npx envpatch check # fail the build if .env is incomplete
→ https://github.com/long260398/envpatch
Both tools are TypeScript, published on npm, MIT licensed.
Would love feedback if you try them.


Top comments (0)