Install the CLI then grab your OpenAI key and add it as an env variable with the two commands below.
npm install -g aicommits
export OPENAI_KEY=sk-xxxxxxxxxxxxxxxx
It's recommended to add the line in #2 to your .zshrc
or .bashrc
so it persists instead of having to define it in each terminal session.
After doing the two steps above, generate your commit by running aicommits
.
Note: If you get a EACCESS error on mac/linux when running the first command, try running it with
sudo npm install -g aicommits
.
This CLI tool runs a git diff
command to grab all the latest changes, sends this to OpenAI's GPT-3, then returns the AI generated commit message. I also want to note that it does cost money since GPT-3 generations aren't free. However, OpenAI gives folks $18 of free credits and commit message generations are cheap so it should be free for a long time.
Video coming soon where I rebuild it from scratch to show you how to easily build your own CLI tools powered by AI.
- Only supports git diffs of up to 200 lines of code for now
- Does not support conventional commits
The next version of the CLI, version 2, will address both of these limitations as well as the tasks below!
- Add a debugging flag to troubleshoot OpenAI responses
- Add support for conventional commits as a flag that users can enable
- Add support for diffs greater than 200 lines by grabbing the diff per file
- Add support for a flag that can auto-accept
- Add ability to specify a commit message from inside aicommit
- Solve latency issue (use a githook to asynchronously run gpt3 call on every git add, store the result in a temp file (or in the .git folder)
- Use gpt-3-tokenizer
- Add automated github releases
- Add opt-in emoji flag
- Add opt-in languages flag
- Build landing page for the 2.0 launch