| name | glab |
| description | Interact with GitLab using the `glab` CLI. Use for issues, merge requests, CI pipelines, and advanced API queries. |
GitLab Skill
Use the glab CLI to interact with GitLab. Always specify --repo namespace/project when not inside a git directory.
Provide all required fields explicitly to avoid interactive prompts:
glab mr create --title "..." --description "..." --yes
Issues
glab issue list --repo namespace/project
glab issue view 42 --repo namespace/project
glab issue create --title "..." --description "..." --repo namespace/project
glab issue close 42 --repo namespace/project
Merge Requests
glab mr list --repo namespace/project
glab mr view 55 --repo namespace/project
glab mr create --title "..." --description "..." --yes --repo namespace/project
glab mr merge 55 --yes --repo namespace/project
glab mr checks 55 --repo namespace/project
CI / Pipelines
glab ci list --repo namespace/project
glab ci status --repo namespace/project
glab ci view --repo namespace/project
glab ci trace --repo namespace/project
JSON Output
Use --output json for structured output and pipe to jq:
glab issue list --output json | jq '.[] | "\(.iid): \(.title)"'
glab mr list --output json | jq '.[] | "\(.iid) [\(.source_branch)]: \(.title)"'
glab mr view 55 --output json | jq .web_url
API for Advanced Queries
Use glab api for anything not covered by subcommands:
glab api projects/namespace%2Fproject
glab api projects/namespace%2Fproject/merge_requests --field state=opened \
| jq '.[] | "\(.iid): \(.title)"'
glab api --paginate projects/namespace%2Fproject/issues | jq '.[].title'
Note: GitLab API uses URL-encoded namespace/project — replace / with %2F.