Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/RomanHotsiy/commitgpt

Automatically generate commit messages using ChatGPT
https://github.com/RomanHotsiy/commitgpt

Last synced: 6 days ago
JSON representation

Automatically generate commit messages using ChatGPT

Lists

README

        

# commitgpt

Automatically generate commit messages using ChatGPT.

![commitgpt](https://user-images.githubusercontent.com/3975738/205517867-1e7533ae-a8e7-4c0d-afb6-d259635f3f9d.gif)

## How to use?

```bash
npx 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:
```json
{
"model": "text-davinci-003",
"temperature": 0.5,
"maxTokens": 2048,
}
```
this file can be used to change the openai model and other parameters.

### `.commitgpt-template` file
default:
```
suggest 10 commit messages based on the following diff:
{{diff}}
commit messages should:
- follow conventional commits
- message format should be: [scope]:

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:

- https://github.com/acheong08/ChatGPT
- https://github.com/transitive-bullshit/chatgpt-api
- https://github.com/wong2/chat-gpt-google-extension

----

Do you need API docs? Check out [Redocly](https://redocly.com).