GitLab Skills for Openclaw

Manage GitLab projects, issues, merge requests, and CI/CD pipelines from a single Python command-line tool.

weiguang1017
v0.1.1
Oct 8, 2026
0
2.6k
0

Install & Download

1. ClawHub CLI

The fastest way to install a skill directly from the registry.

npx clawhub@latest install gitlab-devops-skill

2. Manual Installation

Copy the skill folder to one of these locations

Global
~/.openclaw/skills/
Workspace
<project>/skills/

Priority: Workspace > Local > Bundled

3. Prompt Installation

Copy this prompt to OpenClaw to install it automatically.

Help me install gitlab-devops-skill using Clawhub. If Clawhub is not installed, install it first (npm i -g clawhub).

Prefer to download?

Get the raw skill files in a ZIP archive.

What is GitLab Skills?

GitLab Skills lets an AI coding agent work with GitLab through GitLab REST API v4 and the bundled scripts/gitlab_cli.py command-line interface. Use it to find and inspect projects, list or create issues and merge requests, merge eligible MRs, and inspect or trigger CI/CD pipelines on GitLab.com or compatible self-hosted instances.

As one of the Openclaw Skills for developer workflows, it returns command results as JSON for reliable automation and scripting. Credentials are read from environment variables or an optional local configuration file; write operations require user confirmation of the target project and branch before execution.

GitLab Skills Use Cases

  • Find projects by search term or inspect a project using its numeric ID or group/subgroup/project path.
  • Review open issues or create an issue to track a bug or task.
  • List merge requests, open an MR from a source branch to a target branch, or merge an MR that is ready.
  • Check pipeline activity for a branch or ref and determine whether a pipeline has completed successfully.
  • Trigger a pipeline on a ref when the project has a .gitlab-ci.yml file.
  • Automate GitLab.com or self-hosted GitLab tasks from an AI agent, terminal workflow, or script.

How GitLab Skills Works

  1. Read the GitLab instance URL and API token from GITLAB_URL and GITLAB_TOKEN, or from ~/.devops-skills/gitlab.json.
  2. Run scripts/gitlab_cli.py with a supported command and a project identifier. Use a numeric project ID or a path such as group/subgroup/project.
  3. Before issuing the command, check the GitLab version through /api/v4/version; instances below GitLab 9.0 are rejected unless the version check is explicitly skipped.
  4. Send the requested operation to the GitLab REST API v4. Read operations retrieve project, issue, MR, or pipeline information; write operations create issues or MRs, merge MRs, or trigger pipelines.
  5. Return the result as JSON on stdout. On failure, exit with a non-zero status. Merge and pipeline operations are subject to GitLab’s project, branch, MR, and CI configuration requirements.

GitLab Skills Setup

  1. Create a GitLab access token in User Settings → Access Tokens and grant it the api scope.
  2. Configure the GitLab URL and token as environment variables, or use the optional configuration file at ~/.devops-skills/gitlab.json. Do not put the token directly in command-line arguments.
  3. Use a Python environment with the requests dependency installed. The skill documentation recommends calling the CLI with the provided absolute Python path when available.
  4. Run a CLI command with a project ID or path. Confirm the target project and branch with the user before any write operation.
export GITLAB_URL="https://gitlab.com"  # For self-hosted GitLab, use its instance URL
export GITLAB_TOKEN="<access-token>"    # Requires the api scope

PY="$HOME/.workbuddy/binaries/python/envs/default/bin/python"

# If requests is missing, install it in the same Python environment:
"$PY" -m pip install requests

"$PY" scripts/gitlab_cli.py list-projects --search app
"$PY" scripts/gitlab_cli.py get-project group/app
"$PY" scripts/gitlab_cli.py list-issues group/app --state opened
"$PY" scripts/gitlab_cli.py create-issue group/app --title "Bug" --description "..."
"$PY" scripts/gitlab_cli.py list-mrs group/app --state opened
"$PY" scripts/gitlab_cli.py create-mr group/app --source feat --target main --title "Add feature"
"$PY" scripts/gitlab_cli.py merge-mr group/app 42
"$PY" scripts/gitlab_cli.py list-pipelines group/app --ref main
"$PY" scripts/gitlab_cli.py trigger-pipeline group/app --ref main

The CLI supports GitLab.com and self-hosted GitLab 9.0+ instances using REST API v4. For detailed configuration, fields, and troubleshooting, consult references/USAGE.md.

GitLab Skills Data Schema & Taxonomy

The skill uses GitLab API resources and does not document a local database or generated project files. CLI responses are JSON written to stdout; failures are indicated by a non-zero exit code.

Resource or file Purpose
scripts/gitlab_cli.py Bundled Python CLI for project, issue, MR, and pipeline operations.
~/.devops-skills/gitlab.json Optional local configuration file for GitLab connection settings.
references/USAGE.md Detailed configuration, field, and troubleshooting documentation.
GitLab project Target is identified by numeric ID or a URL-encoded group/subgroup/project path.
Issues Listed or created for a project; creation accepts a title and description.
Merge requests Listed, created from source and target branches, or merged by MR number when eligible.
Pipelines Listed by project and ref, or triggered for a ref when the project contains .gitlab-ci.yml.

Connection metadata includes the GitLab instance URL and access token. Keep the token in the environment or local configuration rather than passing it as a CLI argument.

GitLab Skills Advanced Features

  • Supports GitLab.com and self-hosted GitLab 9.0+ through REST API v4; project paths are encoded by the CLI.
  • Checks the GitLab version before executing commands. Set GITLAB_SKIP_VERSION_CHECK=1 or DEVOPS_SKILLS_SKIP_VERSION_CHECK=1 to bypass the check when necessary.
  • Emits JSON to stdout and uses non-zero exit codes for failures, making results suitable for downstream automation.
  • Covers both read and write workflows across projects, issues, merge requests, and CI/CD pipelines.
  • Write operations—creating issues or MRs, merging MRs, and triggering pipelines—require user confirmation of the target project and branch. An MR must be mergeable, and pipeline triggering requires a .gitlab-ci.yml file.

SKILL.md


Loading

Related Openclaw Skills

METADATA

Github Stars: 0
forks: 0

Featured*