Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use this skill to evaluate the quality of a GitLab Merge Request and produce a feedback report ready to paste as an MR note. Trigger when the user asks for MR feedback, an MR quality review, or an MR report.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-15 | ✗→✓ | ▲ Improved | -19% | 0% |
| case-16 | ✗→✓ | ▲ Improved | 5% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 40% | 0% |
| case-12 | ✓→✗ | ▼ Worse | -9% | 0% |
| case-07 | ✓→✗ | ▼ Worse | -36% | 0% |
Fetch a GitLab Merge Request, evaluate how ready it is to be reviewed, and write a feedback report to a new markdown file that can be copied straight into an MR note.
Judge review-readiness. Check whether the MR has the context, scope clarity, testing instructions, and reviewer guidance that let a reviewer pick it up efficiently.
A well-prepared MR signals care and gets reviewed faster and better. The report should make a good MR feel recognized and give a weaker one concrete, encouraging steps to raise its readiness.
Do not review or critique the code itself and do not suggest code/logic changes
Before doing anything else, read reference/preferences.md (relative to this skill). It is the source of truth for all configurable behavior - output language, tone, fetch method, allowed tools, and output path. This SKILL.md does not restate those values; always read them from the preferences file.
Precedence, highest to lowest:
reference/preferences.md.The user provides one of:
https://gitlab.com/<group>/<subgroup>/<project>/-/merge_requests/<iid>group/subgroup/project + 42Parse from the URL:
project_id = the path between the host and /-/merge_requests/ (URL-encode asgroup%2Fsubgroup%2Fproject when calling tools)
mergeRequestIid = the number after /-/merge_requests/If either is missing or ambiguous, ask before fetching.
Use the method and tools declared in reference/preferences.md. The steps below say what information to gather and why, not which tool to call - pick the matching tool from the preferences for each.
flag, labels, milestone, approvals, merge status.
every diff.
files. Use this only to sanity-check scope and whether tests were touched - not to critique code. Skip lockfiles, generated files, and pure renames; sample if the MR is huge.
hygiene/atomicity signal (commit count / addition summary).
reference/rubric.md.reference/report-template.md.Read reference/rubric.md before scoring and reference/report-template.md before writing. Do not invent data - if a fetch returns nothing for a category (e.g. no pipeline), mark it "not available" rather than guessing.
Each rubric category carries a Reason explaining why it matters to the author. When you report a gap in "To raise readiness", always include why it matters for the author - so the feedback explains the purpose behind each request, not just the request itself.
Do not copy the category Reason verbatim. The Reason is background that covers the whole category; rewrite it to fit the exact problem you found. Reference only the specific thing that is wrong, and never mention aspects of the category that are fine. For example, if the branch is behind master but the pipeline is green, explain why being behind master matters - do not mention the pipeline at all, since it passed. The "why it matters" must be true for this MR's specific gap, not a generic statement about the category.
Write to the output path declared in reference/preferences.md, resolving its placeholders and creating any folders the path needs.
only writes a local markdown file. The user decides whether to paste it.
generate the report, but make sure to be explicit about it.
Other measured skills in the registry, with their headline benchmark lift.