Metadata-Version: 2.1
Name: aicommit
Version: 0.1.0
Summary: Generate AI powered commit messages
Project-URL: Homepage, https://github.com/abi/autocommit
Project-URL: Bug Tracker, https://github.com/abi/autocommit/issues
Author-email: Abi Raja <abimanyuraja@gmail.com>
License-File: LICENSE
Requires-Python: >=3.7
Requires-Dist: async-timeout~=4.0
Requires-Dist: black~=22.12.0
Requires-Dist: certifi~=2022.12.7
Requires-Dist: cffi~=1.15.1
Requires-Dist: charset-normalizer~=2.1.1
Requires-Dist: click~=8.1.3
Requires-Dist: et-xmlfile~=1.1.0
Requires-Dist: gitdb~=4.0.10
Requires-Dist: gitpython~=3.1.29
Requires-Dist: idna~=3.4
Requires-Dist: importlib-metadata~=5.2.0
Requires-Dist: jaraco-classes~=3.2.3
Requires-Dist: keyring~=23.13.1
Requires-Dist: langchain~=0.0.45
Requires-Dist: markdown~=3.4.1
Requires-Dist: more-itertools~=9.0.0
Requires-Dist: mypy-extensions~=0.4.3
Requires-Dist: numpy~=1.24.0
Requires-Dist: openai~=0.25.0
Requires-Dist: openpyxl~=3.0.10
Requires-Dist: pandas-stubs~=1.5.2.221213
Requires-Dist: pandas~=1.5.2
Requires-Dist: pathspec~=0.10.3
Requires-Dist: platformdirs~=2.6.0
Requires-Dist: prompt-toolkit~=1.0.14
Requires-Dist: pycparser~=2.21
Requires-Dist: pydantic~=1.10.2
Requires-Dist: pygit2~=1.11.1
Requires-Dist: pygments~=2.13.0
Requires-Dist: pyinquirer~=1.0.3
Requires-Dist: python-dateutil~=2.8.2
Requires-Dist: python-dotenv~=0.21.0
Requires-Dist: pytz~=2022.7
Requires-Dist: pyyaml~=6.0
Requires-Dist: redis~=4.4.0
Requires-Dist: regex~=2022.10.31
Requires-Dist: requests~=2.28.1
Requires-Dist: six~=1.16.0
Requires-Dist: smmap~=5.0.0
Requires-Dist: sqlalchemy~=1.4.45
Requires-Dist: tomli~=2.0.1
Requires-Dist: tqdm~=4.64.1
Requires-Dist: types-pytz~=2022.7.0.0
Requires-Dist: typing-extensions~=4.4.0
Requires-Dist: urllib3~=1.26.13
Requires-Dist: wcwidth~=0.2.5
Requires-Dist: zipp~=3.11.0
Description-Content-Type: text/markdown

# autocommit

AI-Generated Git Commit Messages

Includes two tools: `commit.py` and `scan_repo.py`

Install the `aicommit` command with `pip install aicommit`

## commit

An interactive CLI tool that generates 5 commit message suggestions for all the changes in your current Git repo. After you pick and edit the commit message you want, it performs the commit.

![ezgif-1-1425a5f8d5](https://user-images.githubusercontent.com/23818/208993321-ec3a41d1-2208-4054-bc4d-c12279fa2484.gif)

**NOTE:** it commits all changes, untracked and unstaged, in your current repo.

On first run, it will prompt you for your OpenAI API key. Sign up for OpenAI if you haven't. Grab your API key by going to the dropdown on the top right, selecting "View API Keys" and creating a new key. Copy this key.

## scan_repo

`scan_repo` runs through all the commits in your repository to generate a CSV with AI-suggested commit messages side-by-side with your original commit messages.

To run scan_repo, copy `.env.example` to `.env` and add your OPENAI_KEY.

To update the repo it runs on, modify the `GITHUB_REPO_URL` variable at the top of `scan_repo.py`

# Publishing to pip

Version bump and clear out `dist/`

```
python3 -m build
twine check dist/*
twine upload dist/* --verbose
```
