GitHub Issues Guide
Issues track bugs, feature requests, tasks, and discussions. Each issue has a number, title, body, state (open/closed), labels, assignees, and milestone.
Query Interpretation
When users say "my issues," they typically mean issues they created (author:username) or are assigned to (assignee:username). "Open issues" means filtering by state=open. "Recent issues" means sorted by created descending.
Natural language to API mapping: "bugs" โ filter by bug label, "high priority" โ priority:high or P0/P1 labels, "stale issues" โ no updates in 30+ days, "my PRs" โ actually means pull requests, route to PR task.
Search Filters
The issues endpoint accepts: state (open/closed/all), labels (comma-separated), sort (created/updated/comments), direction (asc/desc), since (ISO 8601 timestamp), assignee, creator, mentioned.
For text search across titles and bodies, use GitHub's search API with q parameter: repo:owner/name is:issue is:open keyword.
Label Conventions
Common patterns: bug, enhancement, documentation, good first issue, help wanted, question. Priority labels vary: P0/P1/P2 or priority:critical/high/medium/low. Status labels: in progress, blocked, ready for review.
Presentation
When presenting issues, show: number, title, state (with emoji: ๐ข open, ๐ด closed), author, labels, age. For detail view, include body, comments count, assignees, and milestone.