Manage GitLab runner controllers and authentication tokens. Create, update, delete controllers; generate, rotate, and revoke tokens. Admin-only experimental feature for managing runner controller lifecycle. Triggers on runner controller, controller token, experimental runner, admin runner.
Manage GitLab runner controllers and their authentication tokens.
Status: EXPERIMENTAL (Admin-only)
Runner controllers manage the orchestration of GitLab Runners in your infrastructure. This skill provides commands to:
# Create with default settings
glab runner-controller create
# Create with description
glab runner-controller create --description "Production runners"
# Create enabled controller
glab runner-controller create --description "Prod" --state enabled
States:
disabled - Controller exists but inactiveenabled - Controller is active (default)dry_run - Test mode (no actual runner execution)# List all controllers
glab runner-controller list
# List with pagination
glab runner-controller list --page 2 --per-page 50
# Output as JSON
glab runner-controller list --output json
# Get one controller with status details
glab runner-controller get 42
glab runner-controller get 42 --output json
# Update description
glab runner-controller update 42 --description "Updated name"
# Change state
glab runner-controller update 42 --state disabled
# Update both
glab runner-controller update 42 --description "Prod" --state enabled
# Delete with confirmation prompt
glab runner-controller delete 42
# Delete without confirmation
glab runner-controller delete 42 --force
Runner controller scopes determine what the controller is allowed to evaluate.
# List all scopes for controller 42
glab runner-controller scope list 42
# JSON output
glab runner-controller scope list 42 --output json
# Allow the controller to evaluate all instance runners
glab runner-controller scope create 42 --instance
# Allow the controller to evaluate a specific runner
glab runner-controller scope create 42 --runner 5
# Add multiple runner scopes
glab runner-controller scope create 42 --runner 5 --runner 10
glab runner-controller scope create 42 --runner 5,10
# Remove the instance-level scope
glab runner-controller scope delete 42 --instance
# Remove a specific runner-level scope
glab runner-controller scope delete 42 --runner 5 --force
Note: Older docs/examples may refer to
glab runner-controller runner ...subcommands. The current user-facing surface isglab runner-controller scope ...plusglab runner-controller get.
Create → Rotate → Revoke is the typical token lifecycle for security best practices.
# Create token for controller 42
glab runner-controller token create 42
# Create with description
glab runner-controller token create 42 --description "production"
# Output as JSON (for automation)
glab runner-controller token create 42 --output json
Important: Save the token value immediately - it's only shown once at creation.
# List all tokens for controller 42
glab runner-controller token list 42
# List as JSON
glab runner-controller token list 42 --output json
# Paginate
glab runner-controller token list 42 --page 1 --per-page 20
Rotation generates a new token and invalidates the old one.
# Rotate token 1 (with confirmation)
glab runner-controller token rotate 42 1
# Rotate without confirmation
glab runner-controller token rotate 42 1 --force
# Rotate and output as JSON
glab runner-controller token rotate 42 1 --force --output json
Use cases:
# Revoke token 1 (with confirmation)
glab runner-controller token revoke 42 1
# Revoke without confirmation
glab runner-controller token revoke 42 1 --force
When to revoke:
--output json for automation (parse token value securely)Do you need the controller active?
├─ Yes → --state enabled
├─ Testing configuration? → --state dry_run
└─ No (maintenance/setup) → --state disabled
"Permission denied" or "403 Forbidden":
glab auth status to confirm current user"Runner controller not found":
glab runner-controller listToken creation fails:
Token rotation shows old token still works:
Cannot delete controller:
--force to override (⚠️ destructive)Experimental feature not available:
glab version (requires a recent glab build)CI/CD & Runners:
glab-ci - View and manage CI/CD pipelines and jobsglab-job - Retry, cancel, view logs for individual jobsglab-runner - Manage individual runners (list, assign, jobs, managers, update, delete)Repository Management:
glab-repo - Manage repositories (runner controllers are instance-level)Authentication:
glab-auth - Login and authentication managementFor complete command syntax and all available flags, see:
npx skills add vince-winkintel/glab-runner-controller下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer