gitlablisted
Install: claude install-skill AceDataCloud/Skills
Use the `glab` CLI for everything. The user's OAuth access token is
exported as `$GITLAB_TOKEN`; `glab` reads it automatically (the token
is also accepted via `GITLAB_ACCESS_TOKEN` and `OAUTH_TOKEN` for tooling
compatibility). Default host is `gitlab.com` — for self-hosted set
`GITLAB_HOST` or pass `--hostname <host>` per command.
`glab --help` and `glab <subcommand> --help` are always current.
## Two ways to call glab — prefer subcommands
### Style A: First-class subcommands — START HERE
`glab issue`, `glab mr`, `glab repo`, `glab ci`, `glab job`, `glab pipeline`,
`glab release`, `glab snippet`, `glab variable`, `glab label`,
`glab milestone`, `glab schedule`. These print formatted text by default
and JSON via `--output json`.
### Style B: Raw REST / GraphQL via `glab api`
`glab api <path>` for REST, `glab api graphql -f query='…'` for GraphQL.
Notable flags:
- `-X POST|PATCH|PUT|DELETE` — override method (default `GET`, becomes
`POST` when `--field` / `--raw-field` is set).
- `-f key=value` — magic-typed (literals `true` / `false` / `null` /
integers become JSON types, leading `@filename` reads from a file).
- `-F key=value` — same as `-f` but always treats the value as a string.
- `--paginate` — auto-walk `Link: rel="next"`.
- `--hostname <host>` — target a different GitLab host than default.
- Path placeholders: when run inside a git checkout, `:fullpath` /
`:branch` / `:user` are auto-populated from the repo. From a generic
shell, encode the path manually