GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - coder/labeler: A GitHub app that labels your issues for you

BranchesTags
Open more actions menu

Latest commit

 

History

44 Commits
44 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
cmd/labeler
cmd/labeler
 
 
ghapi
ghapi
 
 
httpjson
httpjson
 
 
img
img
 
 
.gitignore
.gitignore
 
 
Dockerfile
Dockerfile
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
aicontext.go
aicontext.go
 
 
bigquery.go
bigquery.go
 
 
go.mod
go.mod
 
 
go.sum
go.sum
 
 
indexer.go
indexer.go
 
 
webhook.go
webhook.go
 
 

Repository files navigation

labeler

labeler is a GitHub app that automatically labels newly created issues for you based on your past labelling decisions.

Important

You can install coder-labeler on your repo here.

img

We currently use it on coder/coder and coder/code-server.

The labeler is well-suited to manage labels that describe or reduce the semantic information of an issue. For example, labels like bug, enhancement, are self-evident from the contents of an issue. Often, a tracker will use labels that add information to an issue, e.g. wontfix, roadmap. These inscriptive labels should be disabled in your configuration.

#5 tracks the automatic disabling of inscriptive labels.

Configuration

The labeler's primary configuration is your label descriptions. This way, the labeler interprets your label system in the same way a human would.

Additionally, the labeler reads your .github/labeler.yml file for a list of Regex exclusions. Here's an example:

# .github/labeler.yml
exclude:
    - good first issue
    - customer.*$

#4 tracks the creation of a dashboard for debugging configuration.

Architecture

sequenceDiagram
    participant GitHub
    participant Labeler as @coder-labeler 
    participant AI as OpenAI
    GitHub->>Labeler: [Create|Reopen] Issue event
    note over Labeler: Load repo data, all labeling is stateless
    Labeler->GitHub: Get all repo issue labels
    Labeler->GitHub: Get last 100 repo issues
    Labeler->AI: Generate setLabels via GPT completion
    Labeler ->> GitHub: Add labels to issue
Loading

The labeler uses a GPT-4o completion with the past 100 opened issues instead of a more complex vector DB / embedding system. This is because of the proven accuracy of @cdr-bot on coder/coder and the fact that the completion approach lets us remove the need for a DB.

Context construction

See aicontext.go for the code that constructs the GPT context.

About

A GitHub app that labels your issues for you

Resources

Readme

Code of conduct

Code of conduct

Security policy

Security policy
Activity
Custom properties

Stars

29 stars

Watchers

1 watching

Forks

6 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.