GitLab Explorer
Wide-Moat/open-computer-use
Explore GitLab repositories using glab CLI and git commands.
Expert guidance for using the GitLab CLI (glab) to manage GitLab issues, merge requests, CI/CD pipelines, repositories, and other GitLab operations from the command line.
$ npx skills add NikiforovAll/claude-code-rules --skill glab -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install NikiforovAll/claude-code-rules glab --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/NikiforovAll/claude-code-rules.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/handbook-glab/skills/glab .claude/skills/glab && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "glab" agent skill from https://github.com/NikiforovAll/claude-code-rules/tree/main/plugins/handbook-glab/skills/glab into .claude/skills/glab/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "glab", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/NikiforovAll/claude-code-rules/tree/main/plugins/handbook-glab/skills/glabType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add NikiforovAll/claude-code-rules --skill glab -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install NikiforovAll/claude-code-rules glab --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NikiforovAll/claude-code-rules.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/handbook-glab/skills/glab .agents/skills/glab && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "glab" agent skill from https://github.com/NikiforovAll/claude-code-rules/tree/main/plugins/handbook-glab/skills/glab into .agents/skills/glab/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "glab", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NikiforovAll/claude-code-rules --skill glab -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install NikiforovAll/claude-code-rules glab --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NikiforovAll/claude-code-rules.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/handbook-glab/skills/glab .cursor/skills/glab && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "glab" agent skill from https://github.com/NikiforovAll/claude-code-rules/tree/main/plugins/handbook-glab/skills/glab into .cursor/skills/glab/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "glab", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/NikiforovAll/claude-code-rules.git --path plugins/handbook-glab/skills/glab--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add NikiforovAll/claude-code-rules --skill glab -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install NikiforovAll/claude-code-rules glab --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NikiforovAll/claude-code-rules.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/handbook-glab/skills/glab .gemini/skills/glab && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "glab" agent skill from https://github.com/NikiforovAll/claude-code-rules/tree/main/plugins/handbook-glab/skills/glab into .gemini/skills/glab/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "glab", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install NikiforovAll/claude-code-rules glabInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add NikiforovAll/claude-code-rules --skill glab -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/NikiforovAll/claude-code-rules.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/handbook-glab/skills/glab .github/skills/glab && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "glab" agent skill from https://github.com/NikiforovAll/claude-code-rules/tree/main/plugins/handbook-glab/skills/glab into .github/skills/glab/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "glab", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NikiforovAll/claude-code-rules --skill glab -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install NikiforovAll/claude-code-rules glab --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NikiforovAll/claude-code-rules.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/handbook-glab/skills/glab .opencode/skills/glab && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "glab" agent skill from https://github.com/NikiforovAll/claude-code-rules/tree/main/plugins/handbook-glab/skills/glab into .opencode/skills/glab/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "glab", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
glabExpert guidance for using the GitLab CLI (glab) to manage GitLab issues, merge requests, CI/CD pipelines, repositories, and other GitLab operations from the command line.
Glab is an agent skill from NikiforovAll/claude-code-rules. Expert guidance for using the GitLab CLI (glab) to manage GitLab issues, merge requests, CI/CD pipelines, repositories, and other GitLab operations from the command line. Use this skill when the user needs to interact with GitLab resources or perform GitLab workflows.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `references/commands-detailed.md`, `references/quick-reference.md` and `references/troubleshooting.md`).
It sits in DevOps & Cloud, covering CI/CD. It works with GitLab and Git. The repository describes itself as: Learn practical techniques to enhance your AI-assisted development workflow with Claude Code. The licence is Apache-2.0.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 281c063. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
glabgitjqFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use glab and git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
GITLAB_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Glab loads about 2.2k tokens when it runs, and up to ~9.1k if it reads all its reference files. Until then it costs about 68 tokens; SKILL.md has 628 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from NikiforovAll/claude-code-rules at commit 281c063, republished under its Apache-2.0 licence (© NikiforovAll). 628 words, ~2,173 tokens.
.claude/skills/glab/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Provides guidance for using glab, the official GitLab CLI, to perform GitLab operations from the terminal.
Invoke when the user needs to:
Verify glab installation before executing commands:
glab --versionIf not installed, inform the user and provide platform-specific installation guidance.
Most glab operations require authentication:
# Interactive authentication
glab auth login
# Check authentication status
glab auth status
# For self-hosted GitLab
glab auth login --hostname gitlab.example.org
# Using environment variables
export GITLAB_TOKEN=your-token
export GITLAB_HOST=gitlab.example.org # for self-hosted# 1. Ensure branch is pushed
git push -u origin feature-branch
# 2. Create MR
glab mr create --title "Add feature" --description "Implements X"
# With reviewers and labels
glab mr create --title "Fix bug" --reviewer=alice,bob --label="bug,urgent"# 1. List MRs awaiting your review
glab mr list --reviewer=@me
# 2. Checkout MR locally to test
glab mr checkout <mr-number>
# 3. After testing, approve
glab mr approve <mr-number>
# 4. Add a general comment
glab mr note <mr-number> -m "Please update tests"To anchor a comment to a specific line in the diff (a DiffNote), you must use a JSON body with the Content-Type: application/json header. Using -F form fields will create an unanchored DiscussionNote.
# Get SHA values from the MR
glab mr view <id> --output=json | grep -oP '"(base_sha|head_sha|start_sha)":\s*"\K[0-9a-f]{40}'
# Post a DiffNote on a new line
glab api --method POST "projects/:id/merge_requests/:iid/discussions" \
-H "Content-Type: application/json" \
--input - <<'JSONEOF'
{
"body": "Your review comment here",
"position": {
"base_sha": "<base_sha>",
"start_sha": "<start_sha>",
"head_sha": "<head_sha>",
"position_type": "text",
"new_path": "path/to/file.js",
"new_line": 42
}
}
JSONEOFKey rules for DiffNotes:
--input - with a heredoc and -H "Content-Type: application/json". Never use -F for the position object — it will silently create a DiscussionNote instead.@@ -old,count +new,count @@), not the diff output line numbers. Count only context lines and + lines from the hunk start.git fetch origin <branch> then git grep), not the current working branch.glab api --method PUT "projects/:id/merge_requests/:iid/notes/:note_id" -H "Content-Type: application/json" --input - <<< '{"body":"updated text"}'glab api "projects/:id/merge_requests/:iid/discussions" --paginate# Create issue with labels
glab issue create --title "Bug in login" --label=bug
# Link MR to issue
glab mr create --title "Fix login" --description "Closes #<issue-number>"
# List your assigned issues
glab issue list --assignee=@me# Watch pipeline in progress
glab pipeline ci view
# Check pipeline status
glab ci status
# View logs if failed
glab ci trace
# Retry failed pipeline
glab ci retry
# Lint CI config before pushing
glab ci lintWhen not in a Git repository, specify the repository:
glab mr list -R owner/repo
glab issue list -R owner/repoSet hostname for all commands:
export GITLAB_HOST=gitlab.example.org
# or per-command
glab repo clone gitlab.example.org/owner/repoglab api "projects/:id/merge_requests/{mr}/discussions?per_page=100" | jq '[.[] | select(.notes[0].resolvable == true and .notes[0].resolved == false) | {id: .notes[0].id, body: .notes[0].body[0:100], path: .notes[0].position.new_path, line: .notes[0].position.new_line}]'Use JSON output for parsing:
glab mr list --output=json | jq '.[] | .title'glab mr note creates standalone comments. To reply within a discussion thread, use the API:
# 1. Find the discussion_id containing the note
glab api "projects/:id/merge_requests/{mr}/discussions" | jq '.[] | select(.notes[].id == {note_id}) | .id'
# 2. Post reply to the discussion thread
glab api --method POST "projects/:id/merge_requests/{mr}/discussions/{discussion_id}/notes" --field body="Your reply"Example:
# Get discussion_id for note 13698970
glab api "projects/:id/merge_requests/1013/discussions" | jq '.[] | select(.notes[].id == 13698970) | {id}'
# Returns: {"id": "5356c3552e72e7b4c49276eb4dacfe3efe5c2c5c"}
# Reply to that thread
glab api --method POST "projects/:id/merge_requests/1013/discussions/5356c3552e72e7b4c49276eb4dacfe3efe5c2c5c/notes" --field body="Thanks for the review!"The glab api command provides direct GitLab API access:
# Basic API call
glab api projects/:id/merge_requests
# IMPORTANT: Pagination uses query parameters in URL, NOT flags
# ❌ WRONG: glab api --per-page=100 projects/:id/jobs
# ✓ CORRECT: glab api "projects/:id/jobs?per_page=100"
# Auto-fetch all pages
glab api --paginate "projects/:id/pipelines/123/jobs?per_page=100"
# POST with data
glab api --method POST projects/:id/issues --field title="Bug" --field description="Details"glab auth status--help to explore command options: glab <command> --helpglab ci lintgit remote -vMerge Requests:
glab mr list --assignee=@me - Your assigned MRsglab mr list --reviewer=@me - MRs for you to reviewglab mr create - Create new MRglab mr checkout <number> - Test MR locallyglab mr approve <number> - Approve MRglab mr merge <number> - Merge approved MRIssues:
glab issue list - List all issuesglab issue create - Create new issueglab issue close <number> - Close issueCI/CD:
glab pipeline ci view - Watch pipelineglab ci status - Check statusglab ci lint - Validate .gitlab-ci.ymlglab ci retry - Retry failed pipelineRepository:
glab repo clone owner/repo - Clone repositoryglab repo view - View repo detailsglab repo fork - Fork repositoryFor detailed command documentation, refer to:
Load these references when:
"command not found: glab" - Install glab or verify PATH
"401 Unauthorized" - Run glab auth login
"404 Project Not Found" - Verify repository name and access permissions
"not a git repository" - Navigate to repo or use -R owner/repo flag
"source branch already has a merge request" - Use glab mr list to find existing MR
For detailed troubleshooting, load references/troubleshooting.md.
--web flag to open in browser--output=json for scripting and automation© NikiforovAll, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (references) in plugins/handbook-glab/skills/glab of NikiforovAll/claude-code-rules.
Open the folder on GitHubat commit 281c063
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in NikiforovAll/claude-code-rules, which our catalogue first saw on October 7, 2026.
Glab next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Glab this skillNikiforovAll/claude-code-rules | 141 | 1 repos | ~2.2k | Automated safety check: Pass | Apache-2.0 | |
| GitLab ExplorerWide-Moat/open-computer-use | 126 | — | ~891 | Automated safety check: Pass | Custom licence | |
| Authoring GitHub Workflowsdotnet/skills | 5.6k | 1 repos | ~2.3k | Automated safety check: Pass | MIT | |
| CI Failure Triage and RepairChachamaru127/claude-code-harness | 3.2k | 1 repos | ~1.1k | Automated safety check: Notes | MIT | |
| Megatron-LM CI/CD GuideNVIDIA/Megatron-LM | 18k | — | ~1.8k | Automated safety check: Pass | Apache-2.0 | |
| Reviewwerf/werf | 4.7k | — | ~2k | Automated safety check: Pass | Apache-2.0 |
Wide-Moat/open-computer-use
Explore GitLab repositories using glab CLI and git commands.
dotnet/skills
Author and review GitHub Actions workflow YAML safely so syntactically-valid YAML can't ship a workflow that GitHub Actions refuses to run.
Chachamaru127/claude-code-harness
Diagnoses failing CI pipelines and tests, deciding first whether the test or the implementation is at fault, and hands hard cases to a dedicated fixer subagent.
NVIDIA/Megatron-LM
Explains Megatron-LM's CI pipeline, PR scope labels, triggering the internal GitLab CI with a dry run first, and investigating CI failures.
werf/werf
Code review of a pull request, branch, or diff. An agent skill from werf/werf.
nvuillam/npm-groovy-lint
Collect MegaLinter lint errors for the current repository. An agent skill from nvuillam/npm-groovy-lint.
NikiforovAll/claude-code-rules
Summarize WHAT WAS SHIPPED in a Claude Code session as a self-contained HTML slide deck — the elevator pitch (problem, solution, decisions, artifacts, verification, gaps), not a play-by-play of tool…
NikiforovAll/claude-code-rules
Run dotnet format to fix code style and analyzer diagnostics (IDE0005, CA, SA).
NikiforovAll/claude-code-rules
Understand implementation details of .NET code by decompiling assemblies.
NikiforovAll/claude-code-rules
Visualize a Claude Code session as a quest/skill tree — a navigable SVG graph where nodes are turns and edges show flow, with distinct visual encoding for normal flow, dead-ends, corrections…
NikiforovAll/claude-code-rules
This skill should be used when planning and tracking complex feature implementations that require systematic task decomposition.
NikiforovAll/claude-code-rules
This skill automates version bumping during the release process for the Claude Code Handbook monorepo.
Categories
Expert guidance for using the GitLab CLI (glab) to manage GitLab issues, merge requests, CI/CD pipelines, repositories, and other GitLab operations from the command line. Glab is an agent skill from NikiforovAll/claude-code-rules. Expert guidance for using the GitLab CLI (glab) to manage GitLab issues, merge requests, CI/CD pipelines, repositories, and other GitLab operations from the command line.
Glab fits situations like: the user needs to interact with GitLab resources; perform GitLab workflows.
Run `npx skills add NikiforovAll/claude-code-rules --skill glab -a claude-code`. Or copy the skill folder (plugins/handbook-glab/skills/glab in NikiforovAll/claude-code-rules) into .claude/skills/glab in your project. Claude Code loads it when a task matches its description.
Run `npx skills add NikiforovAll/claude-code-rules --skill glab -a codex`. Or copy the skill folder (plugins/handbook-glab/skills/glab in NikiforovAll/claude-code-rules) into .agents/skills/glab in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add NikiforovAll/claude-code-rules --skill glab -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/glab, .gemini/skills/glab, .github/skills/glab and .opencode/skills/glab in your project.
Going by SKILL.md and its folder, Glab needs the command-line tools its instructions call (glab, git and jq) and credentials named GITLAB_TOKEN. Our summary lists: A credential in GITLAB_TOKEN.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Glab is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.9k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Glab: GitLab Explorer (Wide-Moat/open-computer-use, 126 stars), Authoring GitHub Workflows (dotnet/skills, 5.6k stars), CI Failure Triage and Repair (Chachamaru127/claude-code-harness, 3.2k stars) and Megatron-LM CI/CD Guide (NVIDIA/Megatron-LM, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
NikiforovAll (a GitHub user) maintains it in NikiforovAll/claude-code-rules, which has 141 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 2, 2026.
Source: NikiforovAll/claude-code-rules on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.