A first pass on a merge request means reading the diff, the commits behind it, the pipeline on the head commit and the notes already on the thread, all before a line of the review exists. That is a multi step gather across several tools with a strict output shape at the end of it. Claude Code is built for long structured tasks like that and is comfortable moving between code and API data while it works.
Run a staged conversation — no account needed. The agent handles it for real while a simulated world answers its tool calls; nothing touches real accounts, and nothing is actually sent.
Add idempotency keys to the refunds endpoint
Open@fatima.zahra
Adds an Idempotency-Key header to POST /refunds and stores the key against the refund for 24 hours, so a retried request returns the original refund instead of issuing a second one. Migration adds one table and a unique index. Twelve files, 340 lines added, 46 removed. Unit and integration tests included, pipeline green on the head commit. Closes issue 2841.
Using this template drops you into a guided setup. It asks exactly this, nothing else:
Connect GitLab
One sign-in. The agent acts through your account, scoped to what this template uses.
Connect Slack
One sign-in. The agent acts through your account, scoped to what this template uses.
Review checklist
What a merge request has to satisfy on this project in your own words, which of those items block a merge, and what you want asked of the author when an item cannot be judged from the diff alone.
Runs on Claude Code
Preselected for this page — connect your Claude Code account during setup, or switch to NoClick's built-in models with one click.
Watch it handle a test run
A staged conversation against a simulated world — then it’s live.
All three are pulled before the note is composed, which is the only reason the say nothing twice rule can work at all. A note that ignores the thread repeats it.
What this changes, the checklist, the pipeline, then questions, in that order every time. Holding a long structured output together is where this harness is steadiest.
Roughly a hundred short runs, since it fires on open, reopen and update and ignores everything else sharing the event stream. Each run reads the diff and writes one note, so cost follows merge request activity rather than repository size. A quiet week costs nothing and a release week costs more, which is the shape most teams want.
Free to start. Guided setup, a test run against staged conversations, and it's live.