| name | glab-mr |
| description | Manage GitLab Merge Requests using the glab CLI. Use this skill whenever the user mentions creating a merge request or PR, listing MRs, approving, merging, reviewing, checking out, or rebasing a merge request. Trigger on phrases like "create MR", "open a pull request", "approve MR |
GitLab Merge Request Management
Use glab CLI to manage GitLab merge requests. MRs are called "merge requests" in GitLab (not "pull requests").
Create a Merge Request
glab mr create -f
glab mr create -t "<title>" -d "<description>" -b <target-branch>
glab mr create -f -b main --push
glab mr create -f --draft
glab mr create -f -i <issue-id>
glab mr create -f -a <assignee> --reviewer <user>
glab mr create -f --remove-source-branch
glab mr create -f --squash-before-merge
Key flags:
-f auto-fill title/description from commits
-t title
-d description (- opens editor)
-b target branch (default: project default branch)
-s source branch (default: current branch)
--push push commits before creating MR
--draft / --wip mark as draft
-i related issue IID (adds "Closes #N")
--copy-issue-labels copy labels from the linked issue
--allow-collaboration allow maintainer commits
-y skip confirmation
List Merge Requests
glab mr list
glab mr list -A
glab mr list -a <username>
glab mr list --author <username>
glab mr list -l <label>
glab mr list --search "<keywords>"
glab mr list -c
glab mr list -O json
View a Merge Request
glab mr view <id>
glab mr view <id> --comments
glab mr view <id> -w
Diff / Changes
glab mr diff <id>
Approve / Revoke Approval
glab mr approve <id>
glab mr revoke <id>
Merge
glab mr merge <id>
glab mr merge <id> --squash
glab mr merge <id> --remove-source-branch
glab mr merge <id> --when-ready
Update a Merge Request
glab mr update <id> -t "<new title>"
glab mr update <id> --draft
glab mr update <id> -l <label>
glab mr update <id> -a <assignee>
glab mr update <id> --reviewer <username>
Checkout MR Branch Locally
glab mr checkout <id>
Rebase
glab mr rebase <id>
Close / Reopen
glab mr close <id>
glab mr reopen <id>
Add a Comment
glab mr note <id> -m "<comment>"
Behavior Guidelines
- Creating MRs: Default to
-f (fill from commits) to save the user time. If the branch hasn't been pushed yet, use --push.
- Linking issues: When the MR fixes an issue, use
-i <issue-id> — this auto-adds "Closes #N" which closes the issue on merge.
- Draft MRs: Suggest
--draft if the user indicates work is still in progress.
- Merging: Ask about
--squash and --remove-source-branch preferences if not specified.
- Present MR lists as: ID | Title | Source Branch | Author | Status.