- name
- inbox-search-issues
- description
- Search GitHub issues and PRs assigned to you, needing triage, or matching custom queries
- tools
- ["execute"]
# Search GitHub Issues and PRs
Use `gh` CLI to search for issues and PRs beyond notifications. This covers your full "issues inbox" — assigned work, triage queue, open PRs, and custom queries.
## My assigned issues
```
gh api /search/issues --jq '.items[] | {number, title, repo: .repository_url, state, labels: [.labels[].name], updated_at, html_url}' -f q='assignee:@me is:open is:issue sort:updated-desc'
```
## My open PRs
```
gh api /search/issues --jq '.items[] | {number, title, repo: .repository_url, state, draft: .draft, updated_at, html_url}' -f q='author:@me is:open is:pr sort:updated-desc'
```
## PRs waiting for my review
```
gh api /search/issues --jq '.items[] | {number, title, repo: .repository_url, state, updated_at, html_url}' -f q='review-requested:@me is:open is:pr sort:updated-desc'
```
## Issues needing triage (no type label)
This depends on the repo's label conventions. Common pattern — issues with no `bug`, `feature-request`, or `enhancement` label:
```
gh api /search/issues --jq '.items[] | {number, title, labels: [.labels[].name], updated_at, html_url}' -f q='assignee:@me is:open is:issue -label:bug -label:feature-request -label:enhancement sort:updated-desc repo:{owner}/{repo}'
```
Replace `{owner}/{repo}` with the target repository.
## Issues in a specific repo
```
gh api /search/issues --jq '.items[] | {number, title, state, labels: [.labels[].name], updated_at, html_url}' -f q='is:open is:issue repo:{owner}/{repo} sort:updated-desc'
```
## Stale issues (no activity in 30 days)
```
gh api /search/issues --jq '.items[] | {number, title, updated_at, html_url}' -f q='assignee:@me is:open is:issue sort:updated-asc updated:<{30_days_ago_date}'
```
Replace `{30_days_ago_date}` with a date like `2026-01-24`.
## Issues by milestone
```
gh api /search/issues --jq '.items[] | {number, title, state, labels: [.labels[].name], html_url}' -f q='is:open milestone:"{milestone}" repo:{owner}/{repo}'
```
## Custom query
The GitHub search syntax supports:
- `assignee:@me`, `author:@me`, `mentions:@me`
- `is:open`, `is:closed`, `is:issue`, `is:pr`
- `label:bug`, `-label:duplicate`
- `repo:owner/repo`, `org:microsoft`
- `review-requested:@me`, `reviewed-by:@me`
- `sort:updated-desc`, `sort:created-desc`
- `updated:>2026-01-01` (date filters)
```
gh api /search/issues --jq '.items[] | {number, title, state, labels: [.labels[].name], updated_at, html_url}' -f q='{query}'
```
## Rules
- Run each search as a separate terminal invocation
- NEVER pipe to `jq` or other programs — use `--jq`
- NEVER add `2>/dev/null` or redirects
Ver en GitHub