Skip to content

atgreen/gail

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gail

An AI-powered GitHub Issue labeler

What is it?

gail will review the Issues in your GitHub-hosted project and, where appropriate, assign new labels to the Issues from a list of label options you provide. gail is currently configured to use OpenAI LLMs to accomplish this.

You can also use gail in GitHub Actions to label all new incoming Issues. Checkout the easy-to-use GitHub Action here: https://github.com/atgreen/gail-issue-labeler-action

I wrote gail to add some semblance of order to libffi's ~200 open Issues. It exceeded expectations, and I hope you enjoy it as well!

Building gail

Download all dependencies using ocicl.

$ ocicl install

Now run make. You are done.

Using gail

Labeling Issues has never been easier. Here's the gail help message with all of the instructions that you'll need:

NAME:
  gail - GitHub Automated Issue Labeler

USAGE:
  gail OWNER REPO | --action OWNER REPO

OPTIONS:
      --help           display usage information and exit
      --version        display version and exit
  -a, --action         Process a single issue from stdin instead of fetching from repository
  -l, --labels <PATH>  Labels file [default: .gail-labels]
  -m, --model <VALUE>  OpenAI model to use [default: gpt-4o-mini]
  -n, --dry-run        Show what would be labeled without actually labeling

EXAMPLES:

  Label issues in the libffi/libffi repository:

    gail libffi libffi

  Dry run with custom labels file:

    gail --labels my-labels.txt --dry-run microsoft vscode

  Use a different OpenAI model:

    gail --model gpt-4 owner repo

  Process a single issue from stdin:

    gail --action owner repo

  Process stdin issue with custom labels:

    gail --action --labels my-labels.txt owner repo

AUTHORS:
  Anthony Green <[email protected]>

LICENSE:
  MIT License

Note that you can simply commit your custom .gail-labels file to your repo and run gail in your project's root directory in order to pick up your custom labels. As an example, here's the file I created for libffi: https://github.com/libffi/libffi/blob/master/.gail-labels

Author and License

gail was written by Anthony Green, and is distributed under the terms of the MIT license.

About

An AI-powered GitHub Issue Labeler

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors