Open Model Lab keeps recommended public-intake labels in .github/labels.yml. This file is the source of truth for label names, colors, and descriptions, but it does not create labels by itself.
Before public contribution intake, create the labels in the GitHub UI:
- Open the repository in GitHub.
- Go to Issues -> Labels.
- Create or update each label from
.github/labels.yml. - Keep names exact, including prefixes such as
type:,area:, andpriority:. - Confirm issue templates render and attach the expected type labels.
The templates under .github/ISSUE_TEMPLATE/ reference these labels. Missing labels do not change product behavior, but they make public triage noisier.
You can inspect the label plan without mutating GitHub:
pnpm github:labels:planTo print optional gh label create --force commands for review:
pnpm github:labels:plan -- --emit-gh-commandsIn this mode, commands are printed only. The script does not call the GitHub API, does not require a token, and does not store credentials. Review commands before running them manually.
After owner approval, the same helper can apply the labels through the GitHub CLI:
pnpm github:labels:plan -- --applyApply mode is intentionally opt-in. It uses the authenticated gh session for the current repository and prints label names only.
type: security is for private triage tracking only. Do not ask reporters to post vulnerability details in public issues. Public security reports should be redirected to SECURITY.md and handled privately.
Use needs owner decision for work that touches:
- billing, Stripe, Supporter checkout, or webhook behavior
- entitlement gates or internal
free | premiumvalues - auth, sessions, account sync, or user data
- ads, AdSense policy, or private
ads.txtsetup - database migrations or stored data models
- security, privacy, licensing, content-license, or brand policy
Use good first issue only when the intended change is small, clear, and unlikely to touch protected product seams.