Skip to main content

An AI-powered CLI tool to help you write better commit messages and PRs.

Project description

G3

All-in-one CLI to commit your work to Github [Presentation, Design]

Watch the video

Install

pip install g3

Alias

You can, optionally, create the alias g=g3 so that you execute simply g commit and g pr.

Configuration

g3 configure

You will be asked to enter:

  • your Github token
  • your open-ai key
  • the openai model you want to use
  • the temperature which will be used to generate the commit messages and PR descriptions
  • the openai api version
  • the tone which will be used in the commit messages and PR descriptions
  • the commit message max characters
  • the PR description max words

Usage

Commit

g3 commit

Options:

  • --tone: The tone to use
  • --jira: The jira ticket(s) to reference
  • --include: A phrase you want to include
  • --edit: The hash of the commit you want to rephrase

PR

g3 pr

Options:

  • --tone: The tone to use
  • --jira: The jira ticket(s) to reference
  • --include: A phrase you want to include
  • --edit: The number of the PR you want to rephrase

Development

The project requires Python 3.11 and Poetry for dependency management.

Optionally configure poetry to create the virtual environment within the project as follows:

poetry config virtualenvs.in-project true

Build

Now install the project, along with its development dependencies, in a local virtual environment as follows:

poetry install

You may enable the virtual environment, so that you run modules without the poetry run prefix, as follows:

source `poetry env info -p`/bin/activate

or simply as follows:

poetry shell

Contribution

You are expected to enable pre-commit hooks so that you get your code auto-sanitized before being committed.

  • mypy: Static type checker of variables and functions based on PEP 484
  • isort: Optimizes imports
  • black: Opinionated code formatter based on PEP 8
  • flake8: Improves code style and quality based on PEP 8

Install pre-commit before starting to contribute to the project as follows:

pre-commit install

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

g3-0.5.0.tar.gz (16.5 kB view hashes)

Uploaded Source

Built Distribution

g3-0.5.0-py3-none-any.whl (23.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page