Obserwujesz, jak AI przepisuje twoj modul uwierzytelniania. Wyglada pewnie. Kod plynie. Pietnascie zmodyfikowanych plikow, 800 zmienionych linii. Zaakceptowales wszystko, bo “wygladało dobrze”. Dwa tygodnie pozniej odkrywasz, ze AI cicho usuneło sprawdzanie ochrony CSRF, ktore było w oryginalnym kodzie. Nikt tego nie wychwycil, bo nikt naprawde nie przegladal.
Druga skrajnosc jest rownie marnotrawna: zatwierdzasz kazdy pojedynczy zapis pliku, przegladasz kazda linie w momencie generowania i spedzasz wiecej czasu na nadzorowaniu AI, niz zajęłoby ci samodzielne napisanie kodu.
Efektywna wspolpraca czlowiek-AI to ani slepe zaufanie, ani ciagly nadzor. To przemyslany zestaw wzorcow okreslajacych, kiedy angażowac sie glęboko, kiedy pozwolic AI pracowac autonomicznie i jak efektywnie przegladac.
Twoja rola zmienia sie w trakcie sesji programistycznej. Rozpoznanie, w ktorym trybie powinieneś byc, oszczedza czas i wczesnie wychwytuje problemy.
Tryb architekta
Definiujesz podejscie. To dzieje sie podczas planowania, gdy piszesz wymagania, przegladasz propozycje i podejmujesz decyzje architektoniczne. AI proponuje, ty decydujesz. Spedz tu najwiecej czasu — bledy w architekturze sa najdrozsze do naprawienia.
Tryb nadzorcy
AI implementuje, a ty monitorujesz. Obserwujesz strumien zmian, szukasz czerwonych flag i jestes gotowy nacisnac Escape, jesli cos poidzie nie tak. Nie musisz rozumiec kazdej linii w czasie rzeczywistym, ale powinienes zauwazyc, gdy AI modyfikuje pliki, ktorych nie powinno dotykac, lub obiera podejscie, na ktore sie nie umowiłes.
Tryb recenzenta
AI ukonczylo zadanie. Przegladasz calosc zmiany, uruchamiasz testy i decydujesz, czy commitowac. Tu wychwycisz subtelne problemy: luki bezpieczeństwa, problemy wydajnosciowe, brakujace przypadki brzegowe i naruszenia konwencji zespolu.
Escape zatrzymuje agenta w trakcie akcji, zachowujac kontekst
Checkpointy pozwalaja cofnac sie do dowolnego wczesniejszego stanu
Tryb przegladania pokazuje wszystkie oczekujace zmiany przed ich zastosowaniem
Background Agent uruchamia zadania asynchronicznie, a ty pracujesz nad czyms innym, z przegladem przed scaleniem
Before you start implementing, list all the files you plan to modify.
I want to verify the scope before you begin.
Uzyj widoku diff w Cursor do przegladania zmian plik po pliku po zakonczeniu pracy AI. Akceptuj lub odrzucaj zmiany poszczegolnych plikow zamiast akceptowac wszystko na raz.
Claude Code zapewnia szczegolowa kontrole:
Escape zatrzymuje Claude w trakcie akcji
Escape + Escape otwiera menu cofania do przywrocenia wczesniejszego stanu
Plan Mode (Shift+Tab) zapobiega wszelkim modyfikacjom plikow
System uprawnien wymaga zatwierdzenia zapisu plikow i komend
/compact podsumowuje kontekst, gdy sesja sie wydluza
Implement the rate limiter from the plan. After each file you modify,
stop and tell me what you changed and why. Wait for my approval
before moving to the next file.
Dla maksymalnej autonomii z zachowaniem bezpieczeństwa uzyj trybu sandbox Claude Code (/sandbox). Claude moze pracowac swobodnie w granicach systemu plikow i sieci, ktore zdefiniujesz.
Codex oferuje przeglad na wielu poziomach:
Przeglad w aplikacji pokazuje kompletne diffy przed scaleniem do twojego brancha
Przeglad inline w IDE pozwala akceptowac lub odrzucac poszczegolne zmiany
Tryby zatwierdzania kontroluja, ile autonomii ma Codex (on-request, on-failure, never)
Watki cloudowe dzialaja w izolowanych srodowiskach, wiec nic nie dotyka twojego lokalnego kodu, dopoki nie przejrzysz
Implement the rate limiter. Show me the full diff when done.
Do not push or merge until I review.
Podejscie Codex oparte na worktree oznacza, ze AI pracuje na oddzielnej kopii twojego kodu. Przegladasz i scalasz zmiany jawnie, podobnie jak przy przegladaniu PR.
Przeglad kodu generowanego przez AI rozni sie od przegladania kodu ludzkiego. AI nie meczy sie, nie chodzi na skroty i nie ma gorszych dni — ale ma systematyczne martwe punkty. Skup swoj przeglad na tych obszarach:
Sprawdzenie zakresu. Czy AI zmodyfikowalo tylko pliki, ktore powinno? Uruchom git diff --stat, zeby zobaczyc pelny obraz przed zaglebienien sie w poszczegolne pliki.
Usuniety kod. Kazdy kod, ktory AI usuneło, powinien byc uzasadniony. Usuniecia sa zmianami najwyzszego ryzyka, bo latwo je przeoczyc w diffie.
Bezpieczenstwo. Szukaj zakodowanych na stale sekretow, brakujacej walidacji danych wejsciowych, oslabionego uwierzytelniania i niezaescapowanych danych uzytkownika. Modele AI sa trenowane na kodzie, ktory czesto nie stosuje najlepszych praktyk bezpieczenstwa.
Obsluga bledow. Sprawdz, czy bledy sa obslugiwane, a nie cicho polykane. Szukaj pustych blokow catch, brakujacych sprawdzen null i zignorowanych wartosci zwracanych.
Pokrycie testami. Czy nowe testy sa sensowne, czy AI napisalo testy, ktore przechodza trywialnie? Sprawdz, czy asercje sa konkretne i czy przypadki brzegowe sa pokryte.
Najbardziej produktywni programisci koryguja kurs wczesnie. Delikatna korekta po pierwszym pliku jest tansza niz pelne przepisanie po pietnastu plikach.
Stop. The approach you're taking with the notification service
won't work because it doesn't account for our message queue.
Let me redirect: instead of direct database writes, use the
existing event bus in @src/services/eventBus.ts. Read that file
first, then revise your approach.
Jesli Cursor zaszedł za daleko w zla strone, uzyj checkpointow do cofniecia do ostatniego dobrego stanu, zamiast recznie cofac zmiany.
Undo that last change. The notification service should use the
event bus pattern, not direct database writes. Read
src/services/eventBus.ts for the pattern we use.
Jesli kontekst sesji jest zasmiecony nieudanymi podejsciami, uzyj /clear i zacznij od nowa z lepszym promptem. Czysty kontekst z dobrym promptem zawsze wygrywa z zanieczyszczonym kontekstem i poprawkami.
W aplikacji Codex mozesz dodawac dalsze prompty, zeby przekierowac:
Change approach: use the event bus pattern from
src/services/eventBus.ts instead of direct database writes.
Revert the notification service changes and start over with
the event bus approach.
Przy wątkach cloudowych mozesz porzucic wątek calkowicie i rozpoczac nowy ze zmienionym promptem. Praca oryginalnego watku jest czysto odrzucana.
Stajesz sie waskim gardlem. Jesli spedzasz wiecej czasu na zatwierdzaniu poszczegolnych zapisow plikow, niz AI spedza na ich generowaniu, to nadmierny nadzor. Grupuj przeglad — pozwol AI ukonczyc zadanie, a nastepnie przejrzyj caly diff.
Ufasz zbyt mocno. Jesli znajdujesz bledy na produkcji, ktore pochodza z kodu generowanego przez AI, uszczelij proces przegladow. Dodaj obowiazkowe progi pokrycia testami. Uzyj wzorca pisarz/recenzent z dwoma oddzielnymi sesjami.
AI ciągle odchodzi od planu. Jesli korekty kursu nie sa skuteczne, problem prawdopodobnie lezy w jakosci promptu lub przeciazeniu kontekstu. Odwoluj sie jawnie do pliku planu w kazdym prompcie. Utrzymuj sesje skupione na pojedynczych zadaniach.
Zmeczenie przegladem. Przegladanie 500 linii kodu generowanego przez AI jest wyczerpujace. Podziel duze zmiany na wiele commitow, kazdy przegladany niezaleznie. Uzyj promptu samoprzegladania AI, zeby wstepnie przefiltrowac problemy, zanim sam spojrzysz na kod.