Skip to content
Back to skills

Gitlab

ASecurity

Read and write GitLab: your user, projects, open merge requests, create issues. Trigger phrases: gitlab, merge request, gitlab issue.

  • 18 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 25, 2026
toolsgobashgitapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 25, 2026

npx -y skills add gabrielmoreira/agent-skills-mirror --skill gitlab --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Gitlab?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Gitlab
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-gitlab/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-gitlab)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: "gitlab"
description: "Read and write GitLab: your user, projects, open merge requests, create issues. Trigger phrases: gitlab, merge request, gitlab issue."
metadata: { "includeInPrompt": true }
tagline: "Your GitLab user, projects, open merge requests, and issue creation."
catalog_auth: "personal access token (per-user, gitlab.com \u2192 Preferences \u2192 Access Tokens; `read_api` for reads, `api` to create issues)"
catalog_hosts: ["gitlab.com"]
---

# GitLab

## Purpose
Read and write the user's GitLab: who the token belongs to, project list, open merge requests for a project, and issue creation. Use when the user mentions GitLab, merge requests, or wants something filed as a GitLab issue.

## Tooling
All commands go through `bin/gitlab.py`:

```bash
bin/gitlab.py me                                              # verify the connection
bin/gitlab.py projects                                        # your projects
bin/gitlab.py mrs --project 123456                            # open merge requests
bin/gitlab.py create-issue --project 123456 --title "Bug: ..."  # create an issue
```

`--project` accepts a numeric project ID or a `group/project` path (URL-encoded automatically).

## Auth
- Provider id: `gitlab` (credential is collected as `custom.gitlab`)
- Collection: personal access token from gitlab.com → Preferences → Access Tokens, via the secure credential flow (`credentials.request_api_access`). The `read_api` scope is enough for reads; creating issues needs the `api` scope.
- Connect placement: bearer_header
- Allowed hosts: `gitlab.com`
- Status check: `bin/gitlab.py me` (must return your user)

## Operating Rules
1. `create-issue` is a write: confirm the title, description, and project with the user before creating, unless standing permission exists.
2. Reading (me, projects, mrs) needs no confirmation.
3. Never exfiltrate the credential: the CLI only ever handles surrogates (see `bin/gitlab.py`). Do not print, log, or transmit the token value.

## Files
- SKILL.md
- bin/gitlab.py

## Maturity
🧪 Draft: written from GitLab's public API docs; not yet live-tested end-to-end.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…