From gitlab-mr
Use this skill when the user mentions "merge request", "MR", "pull request", "code review", "review comments", "list MRs", "show MRs", "my MRs", "resolve discussion", or wants to manage GitLab merge requests.
How this skill is triggered — by the user, by Claude, or both
Slash command
/gitlab-mr:gitlab-mrThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Manage GitLab Merge Requests using bash scripts. List MRs, read comments, post feedback, and resolve discussions.
Manage GitLab Merge Requests using bash scripts. List MRs, read comments, post feedback, and resolve discussions.
Call bash scripts directly via the Bash tool. No MCP server required.
Scripts location: ~/.claude/plugins/cache/awesome-agent-toolkit/gitlab-mr/1.2.1/core/scripts/
IMPORTANT: Environment variables must be set. Check with:
echo $GITLAB_HOST_URL $GITLAB_TOKEN $GITLAB_PROJECT_ID
If empty, add them to ~/.claude/settings.json under env:
{
"env": {
"GITLAB_HOST_URL": "https://gitlab.com",
"GITLAB_TOKEN": "glpat-xxxxxxxxxxxx",
"GITLAB_PROJECT_ID": "12345678"
}
}
Set PLUGIN_DIR=~/.claude/plugins/cache/awesome-agent-toolkit/gitlab-mr/1.2.1
# List open MRs (default)
bash $PLUGIN_DIR/core/scripts/list-mrs.sh
# List merged MRs
bash $PLUGIN_DIR/core/scripts/list-mrs.sh merged
# List closed MRs
bash $PLUGIN_DIR/core/scripts/list-mrs.sh closed
# List all MRs
bash $PLUGIN_DIR/core/scripts/list-mrs.sh all
bash $PLUGIN_DIR/core/scripts/get-mr-details.sh 123
Returns full MR details including description, source/target branches, author.
bash $PLUGIN_DIR/core/scripts/get-mr-comments.sh 123
bash $PLUGIN_DIR/core/scripts/get-mr-discussions.sh 123
Returns threaded discussions with code context. Includes discussion IDs for replies.
bash $PLUGIN_DIR/core/scripts/post-mr-comment.sh 123 "Your comment here"
bash $PLUGIN_DIR/core/scripts/reply-to-discussion.sh 123 "discussion_id_abc123" "Your reply"
bash $PLUGIN_DIR/core/scripts/resolve-discussion.sh 123 "discussion_id_abc123"
bash $PLUGIN_DIR/core/scripts/get-mr-diff-versions.sh 123
Returns diff version SHAs (base_commit_sha, head_commit_sha, start_commit_sha) needed for posting inline comments.
bash $PLUGIN_DIR/core/scripts/post-mr-diff-comment.sh 123 '{"body":"Consider using a constant here","position":{"position_type":"text","base_sha":"abc123","head_sha":"def456","start_sha":"ghi789","new_path":"src/app.js","old_path":"src/app.js","new_line":42}}'
Posts a comment on a specific line of a file in the MR diff. Requires SHAs from get-mr-diff-versions.sh.
When user asks about MR comments or code review:
bash $PLUGIN_DIR/core/scripts/get-mr-details.sh <iid> for contextbash $PLUGIN_DIR/core/scripts/get-mr-discussions.sh <iid> for threaded commentsWhen user has fixed something and wants to reply:
bash $PLUGIN_DIR/core/scripts/reply-to-discussion.sh <mr_iid> "<discussion_id>" "Fixed in commit abc123..."bash $PLUGIN_DIR/core/scripts/resolve-discussion.sh <mr_iid> "<discussion_id>"When posting a comment on a specific line in the MR diff:
bash $PLUGIN_DIR/core/scripts/get-mr-diff-versions.sh <mr_iid>base_commit_sha, head_commit_sha, start_commit_sha)bash $PLUGIN_DIR/core/scripts/post-mr-diff-comment.sh <mr_iid> '{"body":"Your comment","position":{"position_type":"text","base_sha":"<base_commit_sha>","head_sha":"<head_commit_sha>","start_sha":"<start_commit_sha>","new_path":"path/to/file.js","old_path":"path/to/file.js","new_line":42}}'
new_line for commenting on added or unchanged lines (new side of the diff)old_line for commenting on removed lines (old side of the diff)new_line and old_lineTemplate for fix comments:
Fixed in commit `abc1234`.
**Changes made:**
- Replaced MD5 with bcrypt for password hashing
- Added salt rounds configuration
**Files changed:**
- `src/auth.js` - Implemented bcrypt hashing
- `tests/auth.test.js` - Added security tests
Present MRs as a table:
| IID | Title | State | Author | Source → Target |
|---|---|---|---|---|
| !123 | Add login feature | opened | @developer | feature/login → main |
| !124 | Fix parser bug | merged | @coder | fix/parser → main |
src/auth.js:45:
Consider using bcrypt instead of md5
abc123defnpx claudepluginhub covayurt/awesome-agent-toolkit --plugin gitlab-mrManages GitLab merge requests via glab: create from commits, list/view/checkout, merge with auto-handling, block MRs, handle reviews/discussions/stacks.
Reference GitLab CLI (glab) commands for authentication, issues, merge requests, pipelines, releases, repo management, labels, variables from terminal.
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.