gitlab

Manage GitLab projects, issues, merge requests, and pipelines via REST API calls.

76|18|Updated Dec 12, 2025
One-click install
npx skills add https://github.com/vm0-ai/vm0-skills --skill gitlab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gitlab
Source: https://github.com/vm0-ai/vm0-skills/tree/main/gitlab
Command: npx skills add https://github.com/vm0-ai/vm0-skills --skill gitlab

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill lets you manage GitLab resources via curl, covering projects, issues, merge requests, pipelines, and users.

Core Features & Use Cases

  • Manage projects - list, create, get project details
  • Handle issues - create, update, close, list issues
  • Work with merge requests - create, list, merge MRs
  • Check pipelines - list jobs, view pipeline status
  • Manage users - search users, get user info

Quick Start

bash -c 'curl -s "https://${GITLAB_HOST}/api/v4/projects?membership=true&per_page=20" --header "PRIVATE-TOKEN: ${GITLAB_TOKEN}"' | jq '.[] | {id, path_with_namespace, visibility, default_branch}'

Frequently Asked Questions about gitlab

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate GitLab project management via REST API with curl?

Use curl with the GitLab REST API to automate project, issue, merge request, and pipeline management. Authenticate by setting GITLAB_HOST and GITLAB_TOKEN environment variables, then call endpoints like https://$GITLAB_HOST/api/v4/projects with the PRIVATE-TOKEN header to list, create, and update resources across cloud and self-hosted instances.

What environment variables and authentication does GitLab REST API require?

GitLab REST API requires two environment variables: GITLAB_HOST (your instance URL) and GITLAB_TOKEN (your personal access token). Include the token in the PRIVATE-TOKEN header when making curl requests to authenticate against https://$GITLAB_HOST/api/v4 endpoints.

Can I create and manage issues and merge requests through the GitLab API with curl?

Yes, the GitLab REST API supports creating, listing, updating, and closing issues; creating, listing, and merging merge requests; and checking pipeline status—all via curl JSON payloads. Wrap commands in bash -c when piping variables to prevent environment leaks.

Does the GitLab REST API work with self-hosted GitLab instances?

Yes, the GitLab REST API works with both cloud and self-hosted instances. Set GITLAB_HOST to your self-hosted instance URL and use the same /api/v4 endpoints with PRIVATE-TOKEN authentication to manage projects, issues, merge requests, and pipelines identically.

How do I filter and format GitLab API responses when using curl?

Pipe curl output to jq to parse and filter JSON responses. For example, extract project IDs, paths, visibility, and default branches by using jq to select and transform fields from the API response objects.

What GitLab resources can I manage through the REST API?

The GitLab REST API lets you manage projects, issues, merge requests, pipelines, and users. You can list, create, get details, update, close, merge, and monitor these entities to automate workflows in integration scripts and CI/CD automation tasks.