Install
openclaw skills install glabManage GitLab projects from the command line: create, review, merge MRs; manage issues; monitor and trigger CI/CD; support self-hosted instances and automation.
openclaw skills install glabOfficial CLI for GitLab. Manage issues, merge requests, pipelines, and more from the terminal.
Source: Inspired by NikiforovAll/glab-skill on Smithery.
The glab api command provides unrestricted GitLab API access with your token.
read_api - Read-only operationsapi - Full access (only when write operations needed)sudo scope unless requiredRequired binaries:
glab - GitLab CLIjq - JSON processor (for scripts and API parsing)Required credentials:
GITLAB_TOKEN - GitLab personal access tokenOptional configuration:
GITLAB_HOST - Self-hosted GitLab instance (default: gitlab.com)# Verify installation
glab --version
jq --version
# Authenticate (interactive)
glab auth login
# Or via environment
export GITLAB_TOKEN="glpat-xxxxxxxxxxxxxxxxxxxx"
export GITLAB_HOST="gitlab.example.org" # for self-hosted
# Verify auth
glab auth status
Merge Requests:
glab mr create --title "Fix" --description "Closes #123"
glab mr list --reviewer=@me # MRs awaiting your review
glab mr checkout 123 # Test MR locally
glab mr approve 123 && glab mr merge 123
Issues:
glab issue create --title "Bug" --label=bug
glab issue list --assignee=@me
glab issue close 456
CI/CD:
glab ci status # Current pipeline status
glab pipeline ci view # Watch pipeline live
glab ci lint # Validate .gitlab-ci.yml
glab ci retry # Retry failed pipeline
Working Outside Repo:
glab mr list -R owner/repo # Specify repository
Advanced API Access:
See references/api-advanced.md for glab api usage. This command enables arbitrary GitLab API calls and should be used with appropriately-scoped tokens.
# 1. Push branch
git push -u origin feature-branch
# 2. Create MR
glab mr create --title "Add feature" --description "Implements X" --reviewer=alice,bob --label="enhancement"
# 3. After approval, merge
glab mr approve 123
glab mr merge 123 --remove-source-branch
# List MRs for review
glab mr list --reviewer=@me
# Checkout and test
glab mr checkout 123
# Approve or comment
glab mr approve 123
glab mr note 123 -m "Looks good, just one suggestion..."
# Watch current branch pipeline
glab pipeline ci view
# Check specific pipeline
glab ci view 456
# View failed job logs
glab ci trace
# Retry
glab ci retry
# Set default host
export GITLAB_HOST=gitlab.example.org
# Or per-command
glab mr list -R gitlab.example.org/owner/repo
| Script | Description |
|---|---|
glab-mr-await.sh | Wait for MR approval and successful pipeline |
glab-pipeline-watch.sh | Monitor pipeline with exit codes for CI |
# Wait for MR to be approved and merged
./scripts/glab-mr-await.sh 123 --timeout 600
# Watch pipeline, exit 0 on success, 1 on failure
./scripts/glab-pipeline-watch.sh --timeout 300
Script environment variables:
TIMEOUT - Max wait time in seconds (default varies by script)INTERVAL - Polling interval in seconds (default 5-10s)| Error | Fix |
|---|---|
command not found: glab | Install glab |
command not found: jq | Install jq |
401 Unauthorized | Set GITLAB_TOKEN or run glab auth login |
404 Project Not Found | Verify repo name and permissions |
not a git repository | Use -R owner/repo flag |
source branch already has MR | glab mr list to find existing |
For detailed troubleshooting, see references/troubleshooting.md.
glab api usage with security considerationsLoad these when you need specific flag details or are debugging issues.
glab auth statusglab ci lint--output=json for scripting--web to open in browser