aicommits
aicommits copied to clipboard
A CLI that writes your git commit messages for you with AI

AI Commits
A CLI that writes your git commit messages for you with AI. Never write a commit message again.
Setup
The minimum supported version of Node.js is the latest v14. Check your Node.js version with
node --version
.
-
Install aicommits:
npm install -g aicommits
-
Retrieve your API key from OpenAI
Note: If you haven't already, you'll have to create an account and set up billing.
-
Set the key so aicommits can use it:
aicommits config set OPENAI_KEY=<your token>
This will create a
.aicommits
file in your home directory.
Upgrading
Check the installed version with:
aicommits --version
If it's not the latest version, run:
npm update -g aicommits
Usage
CLI mode
You can call aicommits
directly to generate a commit message for your staged changes:
git add <files...>
aicommits
aicommits
passes down unknown flags to git commit
, so you can pass in commit
flags (with some exceptions (e.g. --all
):
aicommits --dry-run
👉 Tip: Use the
aic
alias ifaicommits
is too long for you.
Git hook
You can also integrate aicommits with Git via the prepare-commit-msg
hook. This lets you use Git like you normally would, and edit the commit message before committing.
Install
In the Git repository you want to install the hook in:
aicommits hook install
Uninstall
In the Git repository you want to uninstall the hook from:
aicommits hook uninstall
Usage
-
Stage your files and commit:
git add <files...> git commit # Only generates a message when it's not passed in
If you ever want to write your own message instead of generating one, you can simply pass one in:
git commit -m "My message"
-
Aicommits will generate the commit message for you and pass it back to Git. Git will open it with the configured editor for you to review/edit it.
-
Save and close the editor to commit!
How it works
This CLI tool runs git diff
to grab all your latest code changes, sends them to OpenAI's GPT-3, then returns the AI generated commit message.
Video coming soon where I rebuild it from scratch to show you how to easily build your own CLI tools powered by AI.
Maintainers
-
Hassan El Mghari: @Nutlope
-
Hiroki Osame: @privatenumber
Contributing
If you want to help fix a bug or implement a feature in Issues, checkout the Contribution Guide to learn how to setup and test the project.