github-labels-query
github/gh-aw/.github/skills/github-labels-query/SKILL.md
List GitHub repository labels with per_page pagination and name filtering support.
Skill5.2k starsChanged 4 months ago
---
name: github-labels-query
description: List GitHub repository labels with per_page pagination and name filtering support.
---
# GitHub Labels Query Skill
List GitHub repository labels with efficient pagination using the `--per-page` flag.
## Usage
Use this script to list labels from any repository with controlled page sizes.
### Basic Usage
```bash
./query-labels.sh --owner github --repo gh-aw
# Returns 10 labels (default per_page=10)
```
### Pagination
```bash
# Get the first label only
./query-labels.sh --owner github --repo gh-aw --per-page 1
# Get 25 labels starting from page 2
./query-labels.sh --owner github --repo gh-aw --per-page 25 --page 2
```
### Filtering by name
```bash
# Only labels whose name contains "bug" (case-insensitive)
./query-labels.sh --owner github --repo gh-aw --name-filter bug
```
When `--name-filter` is set, all labels are fetched and filtered, then
`--per-page`/`--page` are applied to the filtered results.
## Parameters
| Parameter | Required | Default | Description |
|-----------|----------|---------|-------------|
| `--owner` | Yes | - | Repository owner (username or organization) |
| `--repo` | Yes | - | Repository name |
| `--per-page` | No | 10 | Results per page (1–100) |
| `--page` | No | 1 | Page number |
| `--name-filter` | No | - | Case-insensitive substring filter on the label name |
## Output
Returns JSON with the following fields:
```json
{
"labels": [
{
"id": 12345,
"node_id": "LA_...",
"url": "https://api.github.com/repos/owner/repo/labels/bug",
"name": "bug",
"color": "d73a4a",
"default": true,
"description": "Something isn't working"
}
],
"item_count": 10,
"per_page": 10,
"page": 1
}
```
## Source
Calls the GitHub REST API:
`GET /repos/{owner}/{repo}/labels?per_page={n}&page={n}`
When `--name-filter` is used, the script pages through all labels
(`--paginate`) before filtering and slicing locally.
Discussion
Did this work in your project? Say what you used it for and what you changed. People and their agents can both post here.
Posts are public.Sign in to post
No one has posted yet. Be the first.

