[ AI ]

AI PR Guardian — bramka jakości AI dla Pull Requestów (eksperyment)

Eksperyment, nie produkt: czterostopniowa bramka jakości dla Pull Requestów. Model sprawdza tylko błędy, których nie łapią skrypty; większość kodu pisał agent.

Archiwalny · 2026 · Node.js · Claude Code · GitHub Actions

Potok

  1. 1

    zakres.mjs

  2. 2

    straznik-regresji

  3. 3

    krytyk

  4. 4

    brama.mjs

4 etapy · 2026

O projekcie

Eksperyment, nie produkt — i to zastrzeżenie jest częścią tej pozycji. Strażnik AI dla Pull Requestów: dodatkowa bramka jakości obok strażników skryptowych, testów i smoke’ów, nie ich zamiennik. Powstał jako sprawdzenie jednego pomysłu: czy model potrafi pilnować klas błędów, których nie da się złapać skryptem. Nigdy nie został uruchomiony na prawdziwym Pull Requeście ani na self-hosted runnerze i nie jest utrzymywany.

Drugie zastrzeżenie: 11 z 15 commitów napisał Claude Code. Autorska jest architektura i nadzór nad agentem, nie klepanie kodu. Dlatego projekt stoi w portfolio nie jako wdrożone narzędzie, lecz jako dowód, jak prowadzi się agenta: zakres, granice uprawnień, obowiązkowa weryfikacja i pomiar wyniku.

Repozytorium sprawdzane ma 39 strażników skryptowych, 84 testy, 18 smoke’ów i 10 goldenów — gęstą, darmową siatkę, której model nie ma dublować. Nisza jest wąska: rejestr znanych błędów ma cztery wpisy bez żadnej ochrony automatycznej — test niszczący wspólną bazę deweloperską, wartość zero traktowana jak brak wartości, build wynoszący zmiany z katalogu roboczego i niewidzialny element jako kandydat na największy element strony. Tylko po to jest model.

Dwa z czterech stopni kosztują zero tokenów. Filtr zakresu odrzuca większość uruchomień, zanim model zobaczy diff — PR treściowy zatrzymuje się tu. Potem subagent-strażnik z własnym kontekstem i wyłącznie prawem odczytu, a po nim obowiązkowo drugi agent-krytyk, którego jedynym zadaniem jest obalić znalezisko pierwszego. Decyzję „przepuścić czy zablokować” podejmuje plik konfiguracyjny, nie model.

Do tego osiem plików kontrolnych — cztery z prawdziwymi błędami i cztery mylące, ale poprawne — żeby o skuteczności dało się mówić liczbą, a nie opinią. Egzekucja w dwóch warstwach: hak pre-push zatrzymuje wypchnięcie przed GitHubem, a check w CI dodaje komentarze inline na Pull Requeście.

Problem

Gęsta siatka strażników skryptowych nie łapie błędów, które wymagają rozumienia intencji — a wpięcie modelu w każdy commit pali tokeny na rzeczach, które skrypty robią za darmo.

Rozwiązanie

Czterostopniowa bramka, w której model wchodzi tylko do czterech klas błędów bez ochrony automatycznej, filtr zakresu i brama decyzji działają bez tokenów, a każde znalezisko przechodzi przez obowiązkowego krytyka.

Funkcje

  • eksperyment, nie produkt: nigdy nie uruchomiony na prawdziwym Pull Requeście, nieutrzymywany
  • 11 z 15 commitów napisał Claude Code — autorska jest architektura i nadzór
  • filtr zakresu zero tokenów: PR treściowy nie dociera do modelu
  • subagent-strażnik z własnym kontekstem i wyłącznie prawem odczytu
  • obowiązkowy agent-krytyk nastawiony na obalenie znaleziska
  • brama decyzji z pliku polityki, nie z modelu
  • osiem plików kontrolnych: cztery z błędami, cztery mylące, ale poprawne
  • hak pre-push i check w CI z komentarzami inline

Architektura

Forma
plugin Claude Code z marketplace’em w tym samym repozytorium; zero zależności; wersja 0.4.1
Repozytorium sprawdzane
prywatne repo platformy szkoleń — silnik jest domenowo ślepy, wiedza domenowa mieszka tam
Egzekucja
`.githooks/pre-push` przed wysłaniem oraz check „Straznik AI (Claude)” po pushu
Stan
eksperyment zakończony; repozytorium publiczne, bo pomiar może się komuś przydać; licencja MIT

Technologie

  • Node.js
  • Claude Code
  • GitHub Actions

Autor

  • Zdjęcie: Krzysztof LeszczyńskiKrzysztof LeszczyńskiAutomation & Plugins

[ Kontakt ]

Chcesz podobne rozwiązanie w swojej firmie?

Opowiedz nam o swoim pomyśle — wrócimy z konkretną propozycją i wyceną.

Automatic AI

hello@automaticai.pl · automaticai.pl