thomasbabuj / aicommits

A CLI that writes your git commit messages for you with AI

Home Page:https://www.npmjs.com/package/aicommits

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AI Commits

AI Commits

A CLI that writes your git commit messages for you with AI. Never write a commit message again.

Current version Hassan Twitter follower count

Installation and Usage

  1. Install the CLI:

    npm install -g aicommits
  2. Retrieve your API key from OpenAI

    Note: If you haven't already, you'll have to create an account and set up billing.

  3. Set the key so aicommits can use it:

    echo "OPENAI_KEY=<your token>" >> ~/.aicommits
  4. You're ready to go!

    Run aicommits in any Git repo and it will generate a commit message for you.

How it works

This CLI tool runs git diff to grab all the latest 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.

Limitations

  • 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!

Future tasks

  • 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

About

A CLI that writes your git commit messages for you with AI

https://www.npmjs.com/package/aicommits

License:MIT License


Languages

Language:JavaScript 66.6%Language:TypeScript 33.4%