Gitlab
@webframp/gitlabv2026.06.12.1
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=featureMethods
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
02Models
@webframp/gitlabv2026.06.12.1gitlab/projects.ts
Global Arguments
| Argument | Type | Description |
|---|---|---|
| host | string | GitLab hostname (e.g. git.bethelservice.org) |
| token | string | GitLab 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
| Argument | Type | Description |
|---|---|---|
| project | string | Project path (e.g. mygroup/myproject) |
fn list_merge_requests(project: string, state: enum)
List merge requests for a project with optional state filter
| Argument | Type | Description |
|---|---|---|
| project | string | |
| state | enum |
fn list_issues(project: string, state: enum)
List issues for a project with optional state filter
| Argument | Type | Description |
|---|---|---|
| project | string | |
| state | enum |
fn list_releases(project: string)
List releases for a project
| Argument | Type | Description |
|---|---|---|
| project | string |
fn list_pipelines(project: string)
List recent CI/CD pipelines for a project
| Argument | Type | Description |
|---|---|---|
| project | string |
fn create_issue(project: string, title: string, description: string, labels: array)
Create a new issue in a project
| Argument | Type | Description |
|---|---|---|
| project | string | |
| title | string | |
| description | string | |
| labels | array |
fn update_issue(project: string, iid: number, title?: string, description?: string, labels?: array, stateEvent?: enum)
Update an existing issue (title, description, labels, state)
| Argument | Type | Description |
|---|---|---|
| project | string | |
| iid | number | |
| title? | string | |
| description? | string | |
| labels? | array | |
| stateEvent? | enum |
fn add_issue_note(project: string, iid: number, body: string)
Add a comment to an issue
| Argument | Type | Description |
|---|---|---|
| project | string | |
| iid | number | |
| body | string |
fn list_issue_notes(project: string, iid: number)
List comments on an issue
| Argument | Type | Description |
|---|---|---|
| project | string | |
| iid | number |
fn create_merge_request(project: string, title: string, sourceBranch: string, targetBranch: string, description: string)
Create a new merge request
| Argument | Type | Description |
|---|---|---|
| project | string | |
| title | string | |
| sourceBranch | string | |
| targetBranch | string | |
| description | string |
fn merge(project: string, iid: number, squash: boolean)
Merge a merge request
| Argument | Type | Description |
|---|---|---|
| project | string | |
| iid | number | |
| squash | boolean |
fn add_mr_note(project: string, iid: number, body: string)
Add a comment to a merge request
| Argument | Type | Description |
|---|---|---|
| project | string | |
| iid | number | |
| body | string |
fn list_labels(project: string)
List labels for a project
| Argument | Type | Description |
|---|---|---|
| project | string |
fn create_label(project: string, name: string, color: string, description: string)
Create a label in a project
| Argument | Type | Description |
|---|---|---|
| project | string | |
| name | string | |
| color | string | |
| description | string |
fn list_members(project: string)
List members of a project
| Argument | Type | Description |
|---|---|---|
| project | string |
fn list_branches(project: string)
List branches for a project
| Argument | Type | Description |
|---|---|---|
| project | string |
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
03Reports
@webframp/review-dashboardmethod
review_dashboard.ts
Prioritized action items dashboard from cross-project MR data
gitlabreviewsdashboard
04Previous Versions
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