GitLab Private for Openclaw

Securely access and manage private GitLab repositories using multi-user OAuth authorization and encrypted token storage.

mbpz
v0.9.1
Mar 2, 2026
0
0
0

Install & Download

1. ClawHub CLI

The fastest way to install a skill directly from the registry.

npx clawhub@latest install gitlab-private

2. Manual Installation

Copy the skill folder to one of these locations

Global
~/.openclaw/skills/
Workspace
<project>/skills/

Priority: Workspace > Local > Bundled

3. Prompt Installation

Copy this prompt to OpenClaw to install it automatically.

Help me install gitlab-private using Clawhub. If Clawhub is not installed, install it first (npm i -g clawhub).

Prefer to download?

Get the raw skill files in a ZIP archive.

What is GitLab Private?

The GitLab Private skill provides a high-security bridge between AI agents and internal GitLab instances. By leveraging OAuth for authentication and AES-256-CBC for local encryption of sensitive tokens, it ensures that private code and credentials remain protected while enabling agents to interact with repositories, files, and merge requests. This integration is a critical component of Openclaw Skills for developers working in enterprise or self-hosted environments where security and multi-user support are paramount.

GitLab Private Use Cases

  • Automating code reviews by reading source files from private GitLab instances.
  • Managing multiple user identities and permissions within a shared AI agent environment.
  • Retrieving real-time status updates and data from the latest merge requests.
  • Searching and listing projects across internal organizational namespaces for better project management.

How GitLab Private Works

  1. The administrator initializes the skill by configuring the GitLab OAuth Application ID and Secret.
  2. The skill generates a unique authorization URL for each user requiring access.
  3. Upon user authorization, the agent accepts the redirected callback URL and extracts the authorization code.
  4. The code is exchanged for an access token, which is then encrypted using a 32-character master key and stored locally.
  5. Subsequent commands use the stored token to perform API actions like listing projects or reading files on behalf of the authorized user.

GitLab Private Setup

To begin using this skill within the Openclaw Skills ecosystem, configure your environment and OAuth credentials:

# 1. Set required environment variables
export GITLAB_ENCRYPT_KEY=your_32_character_encryption_key
export GITLAB_URL=https://gitlab.yourcompany.com

# 2. Configure OAuth application details
node index.js config <Application ID> <Secret>

# 3. Generate authorization URL for users
node index.js auth-url

# 4. Handle the callback to link a User ID
node index.js handle <UserID> <CallbackURL_or_Code>

GitLab Private Data Schema & Taxonomy

The GitLab Private skill organizes its sensitive data locally through the following schema:

File Path Description
config/oauth.json Stores the GitLab Application ID, Secret, and the instance base URL.
config/users.enc Contains user tokens encrypted via AES-256-CBC, indexed by User ID.
Environment Relies on GITLAB_ENCRYPT_KEY for decryption and GITLAB_URL for API routing.

GitLab Private Advanced Features

  • Multi-user isolation ensuring that each user's token is stored and accessed independently.
  • Advanced AES-256-CBC encryption to protect sensitive credentials at rest on local storage.
  • Automatic URL parsing for authorization codes, simplifying the user onboarding workflow.
  • Comprehensive CLI support for project searching, file reading, and merge request inspection.

SKILL.md


Loading

Related Openclaw Skills

METADATA

Github Stars: 0
forks: 0

Featured*