| name | glab-ssh-key |
| description | Manage SSH keys for GitLab account including add, list, and delete operations. Use when setting up SSH authentication, managing SSH keys, or configuring Git over SSH. Triggers on SSH key, add SSH key, SSH authentication, Git SSH. |
glab ssh-key
Overview
Manage SSH keys registered with your GitLab account.
USAGE
glab ssh-key <command> [command] [--flags]
COMMANDS
add [key-file] [--flags] Add an SSH key to your GitLab account.
delete <key-id> [--flags] Deletes a single SSH key specified by the ID.
get <key-id> [--flags] Returns a single SSH key specified by the ID.
list [--flags] Get a list of SSH keys for the currently authenticated user.
FLAGS
-h --help Show help for this command.
-R --repo Select another repository. Can use either `OWNER/REPO` or `GROUP/NAMESPACE/REPO` format. Also accepts full URL or Git URL.
⚠️ Security Warning: Public Keys Only
Always verify you are uploading a PUBLIC key, not a private key.
- ✅ Public keys:
~/.ssh/id_rsa.pub, ~/.ssh/id_ed25519.pub (.pub extension)
- ❌ Private keys:
~/.ssh/id_rsa, ~/.ssh/id_ed25519 (no extension — NEVER upload these)
Uploading a private key to GitLab would expose your credentials. Double-check the filename before running glab ssh-key add.
glab ssh-key add ~/.ssh/id_ed25519.pub --title "My Laptop"
Before uploading, verify your key is public:
head -c 20 ~/.ssh/id_ed25519.pub
Quick start
glab ssh-key --help
Structured output
glab ssh-key list and glab ssh-key get support --output json / -F json for structured output, which is useful for agent automation.
glab ssh-key list --output json
glab ssh-key list -F json
glab ssh-key get <key-id> --output json
glab ssh-key get <key-id> -F json
Subcommands
See references/commands.md for full --help output.