Loading...
Loading...
GitHub issue state machine and code integration patterns. Covers state transitions (needs-triage → accepted → in-progress → completed), branch naming (feat/123-desc), PR linking (Closes
npx skill4agent add poindexter12/waypoint gh-issue-lifecycle ┌─────────────────┐
│ needs-triage │ ← New issue created
└────────┬────────┘
│ triage
┌────────▼────────┐
┌───────────│ accepted │ ← In backlog
│ └────────┬────────┘
│ │ start work
│ ┌────────▼────────┐
│ ┌──────│ in-progress │ ← Active development
│ │ └────────┬────────┘
│ │ │ PR merged
│ │ ┌────────▼────────┐
│ │ │ completed │ ← Issue resolved
│ │ └─────────────────┘
│ │
│ │ blocked
│ │ ┌─────────────────┐
│ └─────►│ blocked │ ← Waiting on dependency
│ └─────────────────┘
│
│ needs-info
│ ┌─────────────────┐
└──────────►│ needs-info │ ← Waiting for clarification
└─────────────────┘| State | Label | Meaning |
|---|---|---|
| New | | Just created, not reviewed |
| Clarification | | Waiting on reporter |
| Backlog | | Triaged, waiting for work |
| Active | | Someone is working on it |
| Blocked | | Can't proceed |
| State | Reason | Comment |
|---|---|---|
| Completed | Fixed/implemented | Via PR or manual |
| Duplicate | Same as another | "Duplicate of #N" |
| Won't Fix | Out of scope | Explain why |
| Invalid | Not a real issue | Cannot reproduce |
| Stale | No activity | Auto-closed after warning |
#123feat/123-short-description # feature
fix/123-short-description # bug fix
chore/123-short-description # maintenance
docs/123-short-description # documentation
i18n/locale-code # internationalization (e.g., i18n/zh-CN, i18n/ja-JP)
i18n/123-locale-code # i18n with issue (e.g., i18n/42-es-MX)feat/42-add-dark-modefix/123-login-timeoutchore/99-update-depsi18n/zh-CNi18n/42-ja-JPfeat: add dark mode (#42)
fix: resolve login timeout (#123)
chore: update dependencies (#99)| Keyword | Effect |
|---|---|
| Auto-closes when merged |
| Same as Closes |
| Same as Closes |
## Summary
Add dark mode toggle to settings page.
Closes #42
## Changes
- Add theme context
- Create toggle component
- Update color variablesRelated to #45
See also #67
Depends on #89gh issue close 123 --comment "Duplicate of #456"gh issue close 123 --comment "Closing as won't fix: [reason]"gh issue close 123 --comment "Cannot reproduce with provided steps. Please reopen with more details if issue persists."gh issue close 123 --comment "Closing due to inactivity. Please reopen if still relevant."# Find stale issues
gh issue list --search "updated:<$(date -v-90d +%Y-%m-%d)"staleThis issue has been inactive for 90 days.
It will be closed in 30 days if there's no further activity.
Please comment if this is still relevant.name: Stale Issues
on:
schedule:
- cron: '0 0 * * *'
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v9
with:
stale-issue-message: 'This issue has been inactive for 90 days.'
days-before-stale: 90
days-before-close: 30
stale-issue-label: 'stale'# Close all issues with label
gh issue list --label "stale" --json number --jq '.[].number' | \
xargs -I {} gh issue close {} --comment "Closing stale issue"# Add label to all issues matching query
gh issue list --search "is:open label:bug" --json number --jq '.[].number' | \
xargs -I {} gh issue edit {} --add-label "needs-review"# Move issue to another repo
gh issue transfer 123 owner/other-repo# Create branch from issue
gh issue develop 123 --checkout
# Or manually
git checkout -b fix/123-description main
gh issue edit 123 --add-label "in-progress"# Create PR that closes issue
gh pr create --title "fix: resolve issue (#123)" --body "Closes #123"gh issue edit 123 \
--remove-label "in-progress" \
--add-label "blocked"
gh issue comment 123 --body "Blocked on #456"Closes #123needs-triageacceptedin-progressblocked# Branch naming from this skill
git checkout -b feat/123-description
# PR creation with linking
gh pr create --title "feat: description (#123)" --body "Closes #123"gh-issue-templatesgh-issue-triagegh-wrangler