Skip to main content

gitlab

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

소스 정보

저장소
ThinkfleetAI/thinkfleet-engine
최근 소스 활동
2026년 2월 1일 16:21
감지된 SKILL.md 언어
영어
스타
0
포크
0

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
gitlab
description
Manage GitLab projects, merge requests, pipelines, and issues via the REST API.
metadata
{"thinkfleetbot":{"emoji":"🦊","requires":{"bins":"[Truncated]","env":"[Truncated]"}}}
# GitLab Manage GitLab projects, merge requests, pipelines, and issues via the REST API. ## Environment Variables - `GITLAB_URL` - GitLab instance URL (e.g. `https://gitlab.com` or self-hosted) - `GITLAB_TOKEN` - Personal access token or project token ## List projects ```bash curl -s -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects?membership=true&per_page=20&order_by=last_activity_at" | jq '.[] | {id, name: .path_with_namespace, default_branch}' ``` ## Get project details ```bash curl -s -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects/123" | jq '{id, name: .path_with_namespace, default_branch, web_url}' ``` ## List merge requests ```bash curl -s -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects/123/merge_requests?state=opened&per_page=10" | jq '.[] | {iid, title, author: .author.username, source_branch, target_branch}' ``` ## Create merge request ```bash curl -s -X POST -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ -H "Content-Type: application/json" \ "$GITLAB_URL/api/v4/projects/123/merge_requests" \ -d '{ "source_branch": "feature-branch", "target_branch": "main", "title": "Add new feature", "description": "Description here" }' | jq '{iid, web_url}' ``` ## List pipelines ```bash curl -s -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects/123/pipelines?per_page=10" | jq '.[] | {id, status, ref, created_at}' ``` ## Trigger pipeline ```bash curl -s -X POST -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects/123/pipeline" \ -d '{"ref": "main"}' | jq '{id, status, web_url}' ``` ## Get pipeline jobs ```bash curl -s -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects/123/pipelines/456/jobs" | jq '.[] | {id, name, stage, status, duration}' ``` ## List issues ```bash curl -s -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects/123/issues?state=opened&per_page=10" | jq '.[] | {iid, title, state, assignee: .assignee.username}' ``` ## Create issue ```bash curl -s -X POST -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ -H "Content-Type: application/json" \ "$GITLAB_URL/api/v4/projects/123/issues" \ -d '{"title": "Bug report", "description": "Details here", "labels": "bug"}' | jq '{iid, web_url}' ``` ## Get job log ```bash curl -s -H "PRIVATE-TOKEN: $GITLAB_TOKEN" \ "$GITLAB_URL/api/v4/projects/123/jobs/789/trace" | tail -50 ``` ## Notes - Project ID can be numeric or URL-encoded path (e.g. `mygroup%2Fmyproject`). - Use `per_page` and `page` query params for pagination. - Rate limits: 300 requests/min for authenticated requests on gitlab.com. - Always confirm before creating MRs, triggering pipelines, or modifying issues.
GitHub에서 보기