Przejdź do głównej zawartości

Efektywne wzorce wspolpracy czlowiek-AI

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.

  • Ramy decyzyjne do okreslania, kiedy nadzorować scisle, a kiedy pozwolic AI dzialac
  • Techniki efektywnego przegladania kodu generowanego przez AI
  • Prompty, ktore każa AI wyjasniac wlasne zmiany przed twoim przegladem
  • Strategie korekty kursu w trakcie sesji bez utraty postepu

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.

Nie kazdy moment wymaga rownej uwagi. Oto praktyczne ramy:

Interweniuj natychmiast, gdy:

  • AI zaczyna modyfikowac pliki poza ustalonym zakresem
  • AI usuwa kod bez wyjasnienia dlaczego
  • AI instaluje nowe zaleznosci, o ktorych nie rozmawialíscie
  • AI pomija testy lub tlumi bledy
  • Podejscie odbiega od planu

Monitoruj, ale nie przerywaj, gdy:

  • AI pracuje nad dobrze zdefiniowanym zadaniem z twojej listy zadan
  • Zmiany sa w plikach, ktore spodziewales sie modyfikowac
  • AI uruchamia testy i iteruje nad niepowodzeniami
  • AI podąza za wzorcami ustalonymi w twojej bazie kodu

Przegladaj po zakonczeniu, gdy:

  • Zadanie jest male i dobrze ograniczone (pojedynczy plik, jasne kryteria akceptacji)
  • Masz silne pokrycie testami dla dotkniętego obszaru
  • AI pracuje w srodowisku sandbox

Cursor daje ci wiele punktow interwencji:

  • 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.

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:

  1. Sprawdzenie zakresu. Czy AI zmodyfikowalo tylko pliki, ktore powinno? Uruchom git diff --stat, zeby zobaczyc pelny obraz przed zaglebienien sie w poszczegolne pliki.
  2. Usuniety kod. Kazdy kod, ktory AI usuneło, powinien byc uzasadniony. Usuniecia sa zmianami najwyzszego ryzyka, bo latwo je przeoczyc w diffie.
  3. 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.
  4. Obsluga bledow. Sprawdz, czy bledy sa obslugiwane, a nie cicho polykane. Szukaj pustych blokow catch, brakujacych sprawdzen null i zignorowanych wartosci zwracanych.
  5. 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.

Kazde narzedzie oferuje spektrum od pelnej kontroli ludzkiej do pelnej autonomii AI. Wybieraj na podstawie poziomu ryzyka zadania:

Poziom ryzykaTyp zadaniaZalecane podejscie
WysokiZmiany w auth, migracje danych, kod bezpieczenstwaZatwierdzaj kazdy zapis pliku. Przegladaj diffy linia po linii.
SredniNowe funkcjonalnosci, endpointy API, komponenty UIPozwol AI pracowac, przegladaj calosc zmiany przed commitem.
NiskiFormatowanie, zmiana nazw, dokumentacja, dodawanie testowAutomatyczne zatwierdzanie lub tryb bezobslugowy. Przejrzyj wiadomosc commita.

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.