Metadata-Version: 2.1
Name: commitgpt
Version: 1.0.0
Summary: commitgpt assists developers in generating high-quality commit messages for their version control systems, such as git.
License: LICENSE
Author: Rodney Osodo
Author-email: socials@rodneyosodo.com
Requires-Python: >=3.8.1,<4.0.0
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: coveralls (>=3.3.1,<4.0.0)
Requires-Dist: feedparser (>=6.0.10,<7.0.0)
Requires-Dist: gitpython (>=3.1.32,<4.0.0)
Requires-Dist: langchain (>=0.0.329,<0.0.330)
Requires-Dist: openai (>=0.27.10,<0.29.0)
Requires-Dist: packaging (>=23.2,<24.0)
Requires-Dist: pytest (>=7.4.1,<8.0.0)
Requires-Dist: tiktoken (>=0.5.1,<0.6.0)
Requires-Dist: typer[all] (>=0.9.0,<0.10.0)
Requires-Dist: unstructured (>=0.10.28,<0.11.0)
Description-Content-Type: text/markdown

# commitgpt

[![Coverage Status](https://coveralls.io/repos/github/0x6flab/commitgpt/badge.svg?branch=tests)](https://coveralls.io/github/0x6flab/commitgpt?branch=tests)
[![Continuous Integration](https://github.com/0x6flab/commitgpt/actions/workflows/ci.yaml/badge.svg)](https://github.com/0x6flab/commitgpt/actions/workflows/ci.yaml)
[![Continuous Deployment](https://github.com/0x6flab/commitgpt/actions/workflows/cd.yaml/badge.svg)](https://github.com/0x6flab/commitgpt/actions/workflows/cd.yaml)

commitgpt assists developers in generating high-quality commit messages for their version control systems, such as git.

## Features

- Generate commit messages from OpenAI's GPT-3 API based on the changes in the diff
- Configurable commit message guidelines
- Configurable OpenAI GPT-3 agent role

## Prerequisites

- An OpenAI API key
- Python 3.6 or higher
- Pip
- Git

## Installation

```bash
pip install commitgpt
```

## Usage

[![asciicast](https://asciinema.org/a/606115.svg)](https://asciinema.org/a/606115)

```bash
commitgpt setup
```

## Example

Make a change to a file, then run `git diff` to see the changes. Then, run `commitgpt` to generate a commit message.

```bash
commitgpt
```

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md)

## License

[GNU GENERAL PUBLIC LICENSE](LICENSE)

