gitlab-tags

Automate GitLab tag creation, retrieval, protection, and deletion via API calls.

11|1|Updated Oct 31, 2022
One-click install
npx skills add https://github.com/Knuckles-Team/gitlab-api --skill gitlab-tags
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gitlab-tags
Source: https://github.com/Knuckles-Team/gitlab-api/tree/main/gitlab_api/skills/gitlab-tags
Command: npx skills add https://github.com/Knuckles-Team/gitlab-api --skill gitlab-tags

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill enables programmatic management of GitLab tags across projects, including creation, retrieval, protection, and deletion, to streamline release workflows and ensure consistency.

Core Features & Use Cases

  • Retrieve tags for a project with get_tags, optionally filtering or sorting.
  • Create a new tag with create_tag by specifying project_id, name, ref, and optional message or release_description.
  • Protect or unprotect tags with protect_tag / unprotect_tag to enforce access controls.
  • Retrieve protected tag details with get_protected_tags / get_protected_tag.
  • Use Case: automate tagging as part of a CI/CD release pipeline and enforce tag protections across multiple repositories.

Quick Start

Use the create_tag command to add a new tag, e.g., create_tag(project_id="123", name="v1.0.0", ref="main"). To review existing tags, call get_tags(project_id="123"). To secure a tag, call protect_tag(project_id="123", name="v1.0.0", create_access_level="maintainer").

Frequently Asked Questions about gitlab-tags

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

FAQPage Schema
How do I automate GitLab tag creation across multiple projects in a CI/CD pipeline?

You can automate GitLab tag creation across multiple projects by using the create_tag operation with parameters like project_id, name, and ref. This ensures consistent tagging during CI/CD release workflows without manual intervention.

How does protecting tags in GitLab enforce access controls for releases?

Protecting tags in GitLab enforces access controls by restricting who can create or update them. The protect_tag operation lets you set create_access_level, such as maintainer, to secure release markers across your repositories.

Can I retrieve and filter existing GitLab tags programmatically via API?

Yes, you can retrieve and filter existing GitLab tags programmatically using the get_tags operation. By providing the project_id, you can retrieve, sort, and review tags to manage project release histories effectively.

Do I need a specific project_id to manage GitLab tags through API calls?

Yes, you need a specific project_id to manage GitLab tags through API calls. Operations like create_tag, delete_tag, and protect_tag all require the project_id parameter to target the correct repository in your GitLab environment.

What is the best way to remove protection rules from a GitLab tag?

The best way to remove protection rules from a GitLab tag is using the unprotect_tag operation. By supplying the project_id and tag name, you can lift access restrictions and allow standard update or deletion workflows.

When should I unprotect or delete a GitLab tag during a release workflow?

You should unprotect or delete a GitLab tag during a release workflow when retiring a release or fixing a misconfiguration. The unprotect_tag and delete_tag operations allow you to manage and clean up release markers dynamically.