Clab

Selvhostet GitLab MR-anmelder: deterministisk lint pluss inline-kommentarer

av mberneti · mberneti/clab

Krever oppsett ★ 8.0/10

Clab — Selvhostet GitLab MR-anmelder: deterministisk lint pluss inline-kommentarer

Hva den gjør

Et Claude Code-kommandopar støttet av Go-binærfiler som gjennomgår selvhostede GitLab merge requests: den henter MR-diffen, kjører regex lint-regler (hemmeligheter, død kode, TODOs, overdimensjonerte filer), legger til et semantisk pass, og legger ut inline-kommentarer. En annen kommando utvinner tidligere MR-er for å syntetisere prosjektspesifikke gjennomgangsregler. Utløses ved forespørsler om å gjennomgå en GitLab MR eller generere gjennomgangsregler fra MR-historikk.

Testrapport

Bygde Go lint-binærfilen fra kildekoden og kjørte den på en konstruert diff: den fanget korrekt opp en hardkodet sk_live_ API-nøkkel (kritisk), en 5-linjers utkommentert blokk (stor, død kode), og en TODO uten billett (mindre), alt som strukturert JSON. Det deterministiske forhåndspasset fungerer, men ende-til-ende-verdien kan ikke måles her: fetch-diff og post-comments trenger en live selvhostet GitLab-vert pluss et glpat-token, og det semantiske gjennomgangstrinnet er bare Claude som leser diffen uten spesiell sele. Binærfiler krever også en curl-pipe-bash-installasjon (release v1.1.0 eksisterer); kommandodokumentene samsvarer nøyaktig med binærfilens oppførsel og advarer ærlig om aldri å committe token env-filen.

Testet på: 2026-07-24 · Claude Code 2.x (agent harness)

Installer

git clone https://github.com/mberneti/clab
mkdir -p ~/.claude/skills/clab
cd clab && cp SKILL.md ~/.claude/skills/clab/ && cp -r commands ~/.claude/skills/clab/

Kommandoer og eksempelprompter

  • /clabSelvhostet GitLab MR-anmelder: deterministisk lint pluss inline-kommentarer

Skills utløses av vanlige forespørsler — ingen kommandoer å huske. Etter installasjonen aktiverer prompter som disse skillen (på engelsk):

  • Review this GitLab merge request and post inline comments
  • Run the lint pass on our self-hosted GitLab MR for secrets
  • Mine past MRs to generate project-specific review rules