Skip to main content

CI PyPI

qodev-gitlab-cli

Agent-friendly CLI for the GitLab API. Designed for both human and AI-agent workflows, with structured JSON output, consistent flags, and predictable error codes.

Why this CLI?

  • Agent-friendly--json on every command, consistent flags, predictable exit codes
  • Built for AI agent workflows — works seamlessly with Claude Code, scripts, and automation pipelines
  • How it compares: glab is GitLab's official interactive CLI for humans; qodev-gitlab is optimized for programmatic and agent use

Installation

pip install qodev-gitlab-cli

Or run directly without installing:

uvx qodev-gitlab-cli

Quick Start

# Set your GitLab token
export GITLAB_TOKEN="glpat-xxxxxxxxxxxxxxxxxxxx"
# Install AI agent skill files (for Claude Code, etc.)
$ qodev-gitlab-cli install --skills

# List open merge requests
$ qodev-gitlab-cli mrs list
!42  Add authentication  opened  feature/auth  main

# Get MR details as JSON (for scripts/agents)
$ qodev-gitlab-cli mrs get 42 --json
{"iid": 42, "title": "Add authentication", "state": "opened", ...}

# List pipelines
$ qodev-gitlab-cli pipelines list
12345  running  main  2m ago

# Get details of a specific issue
$ qodev-gitlab-cli issues get 42

# Create a merge request from the current branch
$ qodev-gitlab-cli mrs create --title "Add new feature"

Commands

Group Subcommand Description
projects list List projects (--owned for owned only)
get Get project details
mrs list List merge requests (--state)
get Get merge request details
create Create a merge request (--title, --source, --target, --description, --labels, --squash)
update Update a merge request (--title, --description, --labels, --target)
merge Merge a merge request (--squash, --when-pipeline-succeeds)
close Close a merge request
discussions List discussions on a merge request
changes Show diff for a merge request
commits List commits in a merge request
approvals Show approval status
comment Comment on a merge request (--body)
pipelines List pipelines for a merge request
pipelines list List pipelines (--ref, --limit)
get Get pipeline details
jobs List jobs for a pipeline
wait Wait for a pipeline to complete (--timeout, --interval)
jobs get Get job details
log Get job log output
retry Retry a failed job
issues list List issues (--state, --labels, --milestone)
get Get issue details
create Create an issue (--title, --description, --labels)
update Update an issue (--title, --description, --labels)
close Close an issue
comment Comment on an issue (--body)
notes List comments/notes on an issue
releases list List releases
get Get release details by tag
create Create a release (--tag, --name, --description, --ref)
variables list List CI/CD variables (values hidden)
get Get a CI/CD variable
set Set (create or update) a CI/CD variable (--protected, --masked)
install --skills Install AI agent skill files to .claude/skills/qodev-gitlab/

Configuration

Authentication

Set the GITLAB_TOKEN environment variable, or pass --token on each invocation:

export GITLAB_TOKEN="glpat-xxxxxxxxxxxxxxxxxxxx"

GitLab Instance

By default the CLI targets https://gitlab.com. Override with the GITLAB_URL environment variable or the --url flag:

export GITLAB_URL="https://gitlab.example.com"

Global Options

Flag Description Default
--json Output as JSON (for scripting / agents) false
--project, -p Project ID or path auto-detected from git remote
--limit Results per page 25
--page Page number 1
--token GitLab token (overrides GITLAB_TOKEN)
--url GitLab URL (overrides GITLAB_URL)

Exit Codes

Code Meaning
0 Success
80 Authentication error
81 Not found
82 API error
83 Validation error
84 Configuration error

License

MIT -- see LICENSE for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qodev_gitlab_cli-0.3.0.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qodev_gitlab_cli-0.3.0-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

Details for the file qodev_gitlab_cli-0.3.0.tar.gz.

File metadata

  • Download URL: qodev_gitlab_cli-0.3.0.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for qodev_gitlab_cli-0.3.0.tar.gz
Algorithm Hash digest
SHA256 e00fb573f46b1435a7d61f30d5a61bc5026d44a162ab4237c9f7e59ddc8957af
MD5 dcf4259260004ddf6d4b124ab9a3a96f
BLAKE2b-256 1372e4c40548d6d305be49c82a81312ee767893fb3b40b068eb3ff5e36870af1

See more details on using hashes here.

Provenance

The following attestation bundles were made for qodev_gitlab_cli-0.3.0.tar.gz:

Publisher: publish.yml on qodevai/gitlab-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file qodev_gitlab_cli-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for qodev_gitlab_cli-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e16ce4cf387fc426956d13c685f7214c2fe79529d13dbfbdc93fa67b0673f01
MD5 43b42933949bebaa984202496e120e16
BLAKE2b-256 bf02ac59c7fac5aef505d2e4abe617a35ba995126c91da839a480ec86c7041cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for qodev_gitlab_cli-0.3.0-py3-none-any.whl:

Publisher: publish.yml on qodevai/gitlab-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 files

0.2.2

2 files

0.2.0

2 files

0.1.3

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page