Package Exports
- honestcommit
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (honestcommit) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
honestcommit
You type the truth. It types the lie your team lead wants to read.
✦ what you said: "moved one div and somehow fixed everything"
✦ what git sees: "fix: resolve layout rendering inconsistency in component hierarchy"
→ Use as-is Regenerate Edit CancelSame change. Same diff. Two completely different stories. That's the whole product.
why?
Because git log is a lie and we all know it.
Every commit message ever written by a human under deadline pressure is either:
fixfix againactual fix this timeplease workasdkjasd- or some variation of "idk why but it works now"
Meanwhile every commit message a recruiter sees needs to sound like you've been A/B testing render pipelines since birth. honestcommit closes that gap. You keep being honest (to yourself, in the terminal, where it's safe). Git keeps looking professional (to everyone else, forever, in the permanent record).
It's not lying. It's translation.
install
npm install -g honestcommitYou'll also need a free Groq API key, because
the lying is outsourced to llama-3.3-70b-versatile (fast, smart, and currently
free, which is the only reason this project exists).
hc config set GROQ_API_KEY=your_key_hereusage
The classic flow:
git add .
hc "moved one div and somehow fixed everything"honestcommit secretly reads git diff --cached in the background too, so even
if your message is just vibes, the AI has the actual code to work with. You
don't have to know this. You're welcome.
Some real inputs that work great:
hc "no idea why this works but the tests pass now"
hc "copy pasted from stackoverflow, deal with it"
hc "renamed a variable because the old name embarrassed me"
hc "deleted the thing that was breaking everything, sorry future me"
hc "added a console.log, found the bug, forgot to remove the console.log, removed it now i guess"options
hc "your honest message" # the main thing (already feat:/fix:/chore: by default)
hc -g 3 "fixed some stuff" # generate 3 options, pick your favorite
hc --type conventional "..." # stricter Conventional Commits, adds scopes like fix(auth):
hc --dry-run "..." # just show the lie, don't commit itconfig
hc config set GROQ_API_KEY=<key> # save your key (stored locally, never sent anywhere else)
hc config get GROQ_API_KEY # check what's saved (masked, don't worry)everything else
hc --version
hc --helpthe review screen
After generating, you get four options:
- Use as-is: commit it, move on with your life
- Regenerate: ask the robot to lie better
- Edit: you know better than the AI (sometimes)
- Cancel: chicken out, nothing is committed
Nothing ever gets committed without you seeing it first. honestcommit will make you sound competent, but it won't do it behind your back.
faq
Is this a joke? Yes. Also it works. Both things are true.
Will this make my commit history lie about what actually happened? Your commit history was already going to say "fix" 200 times. This is strictly an upgrade.
Does it actually read my code or just my message? Both. It grabs your staged diff for context, even if you don't mention it. The AI gets the full picture; you just have to type the short version.
What if I don't have a Groq API key? Get one here, it's free. honestcommit will politely yell at you if it's missing.
What model does this use?
llama-3.3-70b-versatile on Groq. Fast enough that the spinner barely shows up.
license
MIT. Do whatever you want, just don't blame me for your git history.