Skip to main content

Gitlab

@webframp/gitlabv2026.06.12.1· 1d agoMODELS·REPORTS
01README

Read and write GitLab data via REST API (v4) and GraphQL. Projects, merge requests, issues, releases, pipelines, labels, members, branches, and a cross-project review dashboard with todos. No CLI dependencies — uses native fetch with a personal access token stored in a swamp vault.

Authentication

Requires a GitLab personal access token with api scope, stored in a swamp vault.

Usage

# Create with vault-stored token
swamp model create @webframp/gitlab gitlab \
  --global-arg host=git.bethelservice.org \
  --global-arg 'token=${{ vault.get("gitlab", "TOKEN") }}'

# Read operations
swamp model method run gitlab list_projects
swamp model method run gitlab list_issues --input project=group/repo
swamp model method run gitlab list_merge_requests --input project=group/repo

# Dashboard (GraphQL)
swamp model method run gitlab list_my_merge_requests
swamp model method run gitlab list_my_merge_requests --input role=reviewer

# Write operations
swamp model method run gitlab create_issue --input project=group/repo --input title="New issue"
swamp model method run gitlab add_issue_note --input project=group/repo --input iid=1 --input body="Comment"
swamp model method run gitlab create_merge_request --input project=group/repo --input title="MR" --input sourceBranch=feature

Methods

Read:

  • list_projects, get_project_info, list_merge_requests, list_issues
  • list_releases, list_pipelines, list_issue_notes
  • list_labels, list_members, list_branches
  • list_my_merge_requests (GraphQL — cross-project dashboard + todos)

Write:

  • create_issue, update_issue, add_issue_note
  • create_merge_request, merge, add_mr_note
  • create_label
02Models1
@webframp/gitlabv2026.06.12.1gitlab/projects.ts

Global Arguments

ArgumentTypeDescription
hoststringGitLab hostname (e.g. git.bethelservice.org)
tokenstringGitLab personal access token with api scope (use vault reference)
fn list_projects()
List projects for the authenticated user with basic metadata
fn get_project_info(project: string)
Get detailed information about a specific project
ArgumentTypeDescription
projectstringProject path (e.g. mygroup/myproject)
fn list_merge_requests(project: string, state: enum)
List merge requests for a project with optional state filter
ArgumentTypeDescription
projectstring
stateenum
fn list_issues(project: string, state: enum)
List issues for a project with optional state filter
ArgumentTypeDescription
projectstring
stateenum
fn list_releases(project: string)
List releases for a project
ArgumentTypeDescription
projectstring
fn list_pipelines(project: string)
List recent CI/CD pipelines for a project
ArgumentTypeDescription
projectstring
fn create_issue(project: string, title: string, description: string, labels: array)
Create a new issue in a project
ArgumentTypeDescription
projectstring
titlestring
descriptionstring
labelsarray
fn update_issue(project: string, iid: number, title?: string, description?: string, labels?: array, stateEvent?: enum)
Update an existing issue (title, description, labels, state)
ArgumentTypeDescription
projectstring
iidnumber
title?string
description?string
labels?array
stateEvent?enum
fn add_issue_note(project: string, iid: number, body: string)
Add a comment to an issue
ArgumentTypeDescription
projectstring
iidnumber
bodystring
fn list_issue_notes(project: string, iid: number)
List comments on an issue
ArgumentTypeDescription
projectstring
iidnumber
fn create_merge_request(project: string, title: string, sourceBranch: string, targetBranch: string, description: string)
Create a new merge request
ArgumentTypeDescription
projectstring
titlestring
sourceBranchstring
targetBranchstring
descriptionstring
fn merge(project: string, iid: number, squash: boolean)
Merge a merge request
ArgumentTypeDescription
projectstring
iidnumber
squashboolean
fn add_mr_note(project: string, iid: number, body: string)
Add a comment to a merge request
ArgumentTypeDescription
projectstring
iidnumber
bodystring
fn list_labels(project: string)
List labels for a project
ArgumentTypeDescription
projectstring
fn create_label(project: string, name: string, color: string, description: string)
Create a label in a project
ArgumentTypeDescription
projectstring
namestring
colorstring
descriptionstring
fn list_members(project: string)
List members of a project
ArgumentTypeDescription
projectstring
fn list_branches(project: string)
List branches for a project
ArgumentTypeDescription
projectstring
fn list_my_merge_requests()
List MRs and todos for the authenticated user via GraphQL (reviewer, assignee, author roles + pending todos)

Resources

projects(30m)— List of projects for the authenticated user
projectInfo(30m)— Detailed information about a specific project
mergeRequests(15m)— List of merge requests for a project
issues(15m)— List of issues for a project
issueDetail(15m)— Single issue detail (from create/update)
notes(15m)— Notes/comments on an issue or MR
releases(1h)— List of releases for a project
pipelines(10m)— List of recent CI/CD pipelines
labels(1h)— Labels for a project
members(1h)— Members of a project
branches(15m)— Branches for a project
dashboard(30m)— Cross-project MR dashboard and todos for the authenticated user
03Reports1
@webframp/review-dashboardmethod
review_dashboard.ts

Prioritized action items dashboard from cross-project MR data

gitlabreviewsdashboard
04Previous Versions3
2026.06.10.1Jun 10, 2026

Modified 1 models. updated labels

2026.04.22.3Apr 23, 2026

updated platforms

2026.04.13.1Apr 13, 2026
05Stats
A
100 / 100
Downloads
19
Archive size
25.5 KB
  • Has README or module doc2/2earned
  • README has a code example1/1earned
  • README is substantive1/1earned
  • Most symbols documented1/1earned
  • No slow types (deprecated)1/1earned
  • Dependencies pass trust audit2/2earned
  • Has description1/1earned
  • Platform support declared (or universal)2/2earned
  • License declared1/1earned
  • Verified public repository2/2earned
06Platforms
07Labels