Catalogskills.sh · cyrusagents

cyrus-setup-gitlab

Configure GitLab authentication for Cyrus — glab CLI login and git config for creating merge requests.

Pending analysisVerified hub781 installs

Savant verdict: Pending analysis

Imported from the source hub; Savant's analysis is still running.

Live evaluation

Not evaluated yet. Workspaces can request a live evaluation.

Security assessment

Scan pending.

Structure

  • No license declaredConfirm you may reuse this skill before importing it into your repository.

SKILL.md

---
name: cyrus-setup-gitlab
description: Configure GitLab authentication for Cyrus — glab CLI login and git config for creating merge requests.
---

**CRITICAL: Never use `Read`, `Edit`, or `Write` tools on `~/.cyrus/.env` or any file inside `~/.cyrus/`. Use only `Bash` commands (`grep`, `printf >>`, etc.) to interact with env files — secrets must never be read into the conversation context.**

# Setup GitLab

Configures GitLab CLI and git so Cyrus can create branches, commits, and merge requests.

## Step 1: Check Existing Configuration

Check if `glab` is already authenticated:

```bash
glab auth status 2>&1
```

If authenticated, check git config:

```bash
git config --global user.name
git config --global user.email
```

If both `glab` auth and git config are set, inform the user:

> GitLab is already configured. Skipping this step.

Skip to completion.

## Step 2: Authenticate GitLab CLI

If `glab` is not authenticated:

```bash
glab auth login
```

This opens an interactive browser flow. Let the user complete it.

For self-hosted GitLab instances, the user can specify the hostname:

```bash
glab auth login --hostname gitlab.example.com
```

After completion, verify:

```bash
glab auth status
```

## Step 3: Configure Git Identity

If git user name or email are not set, ask the user for their preferred values:

> **What name should appear on commits made by Cyrus?**
> (e.g., your name, or "Cyrus Bot")

> **What email should appear on commits?**
> (e.g., your email, or a noreply address)

Then set them:

```bash
git config --global user.name "<name>"
git config --global user.email "<email>"
```

## Step 4: Verify

```bash
glab auth status
git config --global user.name
git config --global user.email
```

## Completion

> ✓ GitLab CLI authenticated
> ✓ Git identity configured: `<name>` <`email`>