Skip to content

Automatically generate commit messages using ChatGPT

Notifications You must be signed in to change notification settings

JNBYWXD/commitgpt

 
 

Repository files navigation

commitgpt

Automatically generate commit messages using ChatGPT.

commitgpt

How to use?

npx commitgpt

Local install

npm i
npm run build
npm link

# now you can use it
cd worksapce
commitgpt

Get OpenAI api key

https://platform.openai.com/account/api-keys

Configuration (Optional)

you can create .commitgpt.json and/or .commitgpt-template config files in your project root.

.commitgpt.json file

default:

{
  "model": "gpt-4-32k",
  "temperature": 0.7,
  "maxTokens": 2048,
  "locale": "english"
}

this file can be used to change the openai model and other parameters.

If you want to use Azure:

{
  "basePath": "https://<YOUR_RESOURCE_NAME>.openai.azure.com"
}

.commitgpt-template file

default:

suggest 10 commit messages based on the following diff:
{{diff}}
commit messages should:
 - follow conventional commits
 - message format should be: <type>[scope]: <description>

examples:
 - fix(authentication): add password regex pattern
 - feat(storage): add new test cases

this file can be used to change the template used to generate the prompt request. you can modify the template to fit your needs.

How it works

  • Runs git diff --cached
  • Sends the diff to ChatGPT and asks it to suggest commit messages
  • Shows suggestions to the user

Credits

Some code and approaches were inspired by the awesome projects below:


Do you need API docs? Check out Redocly.

About

Automatically generate commit messages using ChatGPT

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 60.6%
  • JavaScript 39.4%