glab

Manage GitLab projects entirely from the terminal using glab . This skill covers creating merge requests, triaging issues, running pipelines, cutting releases, and making raw API calls — all without leaving your shell.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "glab" with this command: npx skills add beeltec/skills/beeltec-skills-glab

GitLab CLI (glab)

Manage GitLab projects entirely from the terminal using glab . This skill covers creating merge requests, triaging issues, running pipelines, cutting releases, and making raw API calls — all without leaving your shell.

When to Use

  • Creating, reviewing, approving, or merging merge requests

  • Creating, listing, updating, or closing issues and incidents

  • Running, retrying, canceling, or viewing CI/CD pipelines and jobs

  • Creating releases with assets and changelogs

  • Cloning, forking, or managing repositories

  • Managing CI/CD variables, schedules, and snippets

  • Making raw REST or GraphQL API calls to GitLab

  • Working with stacked diffs (experimental)

  • Managing labels, milestones, deploy keys, SSH/GPG keys

  • Authenticating to GitLab instances

Prerequisites

  • glab installed (brew install glab , apt install glab , or see https://gitlab.com/gitlab-org/cli)

  • Authenticated via glab auth login (minimum scopes: api , write_repository )

  • Inside a Git repository with a GitLab remote (or use -R OWNER/REPO to target another project)

Command Structure

glab <command> <subcommand> [flags]

All commands support -h /--help and -R /--repo OWNER/REPO (to target a different project).

Reference Guides

Topic File Load when...

Merge requests references/merge-requests.md

Creating, reviewing, approving, merging, or listing MRs

Issues references/issues.md

Creating, listing, updating, closing, or triaging issues/incidents

CI/CD pipelines & jobs references/ci-cd.md

Running, viewing, retrying, canceling pipelines or jobs; linting CI config

Releases references/releases.md

Creating releases, uploading assets, managing changelogs

Repo, auth & config references/repo-and-config.md

Cloning, forking, creating repos; authenticating; configuring glab

API, variables & advanced references/api-and-advanced.md

Making raw API calls; managing variables, snippets, schedules, stacks, labels, milestones, aliases

Writing issues & MRs references/writing-issues-and-mrs.md

REQUIRED before creating or updating any issue or MR title/description

Core Workflows

Create a Merge Request

REQUIRED: Read references/writing-issues-and-mrs.md for full guidelines before writing titles/descriptions.

Title format: <type>[scope]: <imperative description> (closes #N)

Types: feat , fix , docs , refactor , test , chore , perf , ci

Max 72 chars. Imperative mood ("Add", not "Added").

Interactive — prompts for title, description, target branch

glab mr create

Non-interactive with conventional title, reviewers, and labels

glab mr create -t "feat(auth): add OAuth2 login (closes #123)" --yes -a assignee --reviewer reviewer1 --label "ready for review" -b main

Draft MR for early feedback

glab mr create -f --draft

Review and Merge

glab mr list --reviewer=@me # MRs awaiting your review glab mr diff 42 # View changes glab mr approve 42 # Approve glab mr merge 42 # Merge (prompts for method)

Create an Issue

REQUIRED: Read references/writing-issues-and-mrs.md for full guidelines before writing titles/descriptions.

Title format: [Type]: <specific problem/action> <context>

Types: [Bug] , [Feature] , [Docs] , [Task]

50-70 chars. Sentence case. Include location + symptom.

glab issue create -t "[Bug]: Login fails on iOS Safari 17 after timeout" -l bug,P1 -m v2.0 glab issue list --label bug --assignee=@me glab issue close 99

Run and Monitor CI/CD

glab ci run -b main # Trigger pipeline on branch glab ci status # Current pipeline status glab ci view # Interactive pipeline viewer glab ci retry lint # Retry a specific job by name glab ci lint # Validate .gitlab-ci.yml

Create a Release

glab release create v1.2.0 ./dist/*.tar.gz
--notes "Bugfix release"
--milestone v1.2.0

Raw API Calls

REST

glab api projects/:fullpath/members

GraphQL

glab api graphql -f query='{ currentUser { username } }'

With pagination

glab api issues --paginate --output ndjson

Manage Variables

glab variable list glab variable set MY_SECRET "s3cret" glab variable get MY_SECRET glab variable delete MY_SECRET

All Top-Level Commands

Command Purpose

glab alias

Create command shortcuts

glab api

Make authenticated REST/GraphQL API calls

glab attestation

Manage attestations

glab auth

Authenticate to GitLab instances

glab changelog

Generate changelogs

glab check-update

Check for glab updates

glab ci

Manage CI/CD pipelines and jobs

glab cluster

Manage cluster agents

glab completion

Generate shell completions (bash/zsh/fish/PowerShell)

glab config

Set and get glab configuration

glab deploy-key

Manage deploy keys

glab duo

Interact with GitLab Duo AI

glab gpg-key

Manage GPG keys

glab incident

Manage incidents

glab issue

Manage issues

glab iteration

Manage iterations

glab job

Manage CI/CD jobs

glab label

Manage labels

glab mcp

Model Context Protocol server

glab milestone

Manage milestones

glab mr

Manage merge requests

glab opentofu

OpenTofu integration

glab release

Manage releases

glab repo

Manage repositories

glab schedule

Manage pipeline schedules

glab securefile

Manage secure files

glab snippet

Manage snippets

glab ssh-key

Manage SSH keys

glab stack

Stacked diffs (experimental)

glab token

Manage personal access tokens

glab user

Interact with user accounts

glab variable

Manage CI/CD variables

glab version

Show glab version

Global Flags

Flag Description

-h, --help

Show help for any command

-R, --repo OWNER/REPO

Target a different repository (also accepts GROUP/NAMESPACE/REPO or full URL)

-v, --version

Show glab version

Tips

  • Title conventions: Always use conventional commit prefixes for MR titles (feat: , fix: , docs: , etc.) and descriptive problem-statement titles for issues. See references/writing-issues-and-mrs.md .

  • Auto-detection: glab reads your Git remotes to determine the GitLab project. No need to specify --repo when inside the project directory.

  • Multiple instances: Use glab auth login for each GitLab host. glab picks the right credentials based on your remote URL.

  • Output formats: Many list commands accept -F json for machine-readable output.

  • Aliases: Create shortcuts with glab alias set mrc 'mr create --fill --yes' then use glab mrc .

  • Editor: Set EDITOR or VISUAL env vars to control which editor opens for descriptions.

  • Recover: Use --recover on mr create and issue create to save progress if creation fails.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

elementor-content

No summary provided by upstream source.

Repository SourceNeeds Review
General

nano-banana-2

Nano Banana 2 - Gemini 3.1 Flash Image Preview

Repository Source
15338.9K
inferen-sh
General

p-video

Pruna P-Video Generation

Repository Source
15338.8K
inferen-sh