Przejdź do głównej zawartości

Skuteczne techniki promptowania agentów AI to pięć wzorców, które zamieniają ogólnikową prośbę w sprawdzalną pracę: agent zadaje pytania, zanim zacznie pisać kod, prompt podaje ograniczenia i polecenie, które dowodzi poprawności wyniku, wskazuje istniejący plik jako wzorzec, planowanie poprzedza implementację, a przegląd obejmuje dowody zamiast każdej linijki.

Ta strona jest dla programistów, którzy codziennie pracują z Claude Code, Codeksem albo Cursorem, i dla tech leadów, którzy chcą, żeby cały zespół promptował w ten sam sposób. Prosisz o „uwierzytelnianie użytkowników z weryfikacją e-mail”. Agent wybiera strategię sesji, której nigdy byś nie wdrożył, podpina mailer, którego nie używasz, pisze testy mockujące wszystko i melduje sukces. Każda z tych decyzji to luka w prompcie, którą model wypełnił wartością domyślną.

Co dają te techniki promptowania przy prawdziwym zadaniu

Dział zatytułowany „Co dają te techniki promptowania przy prawdziwym zadaniu”
  • Prompt z pytaniami doprecyzowującymi, który wydobywa brakujące wymagania, zanim powstanie jakikolwiek kod
  • Szablon „ograniczenia plus sprawdzenie”, który mówi agentowi, co znaczy „gotowe”, w postaci polecenia do uruchomienia
  • Pętlę „najpierw plan, potem implementacja”, która zatrzymuje błędy architektoniczne, póki ich poprawka kosztuje jedno zdanie
  • Prompty ratunkowe na zapętlone debugowanie, samodzielny przegląd i czystszą drugą wersję
  • Raport z dowodami, który sprawdzisz w dwie minuty zamiast czytać diff na 600 linii
  • Dźwignie w każdym narzędziu (instrukcje projektu, odwołania do plików, poziom rozumowania, higiena kontekstu), które poprawiają jakość, zanim zaczniesz zmieniać model

Dlaczego ten sam model pisze raz dobry, a raz zły kod?

Dział zatytułowany „Dlaczego ten sam model pisze raz dobry, a raz zły kod?”

Agent traktuje wszystko, czego nie powiesz, jako decyzję, którą wolno mu podjąć. Każda technika poniżej zamyka jeden rodzaj luki:

Luka w prompcieCo robi agentTechnika, która ją zamyka
Wymagania, których nie podałeśZgaduje wiarygodną wartość domyślnąNajpierw pytania
Biblioteka, konfiguracja, obsługa błędówImprowizujePodaj ograniczenia
Nieokreślone „gotowe”Kończy, gdy kod wygląda na gotowyWskaż sprawdzenie do uruchomienia
Konwencje w twoim repozytoriumWymyśla własneWskaż istniejący plik
Samo podejścieTrzyma się pierwszego pomysłuPlan, potem jeden krok implementacji

Kolejność ma znaczenie. Pytania idą pierwsze, bo odpowiedzi zmieniają ograniczenia; sprawdzenie idzie przed planem, bo planu bez sprawdzenia nie da się ani przyjąć, ani odrzucić. Razem tych pięć wzorców to inżynieria promptów dla agentów kodujących: kształtują wejście, a o tym, czy wynik zostanie przyjęty, rozstrzyga sprawdzenie wskazane w prompcie.

Każdą prośbę większą niż jednolinijkowa poprawka zakończ pytaniem, czego agent potrzebuje się dowiedzieć. Agent ujawnia swoje założenia, póki ich zmiana jest tania, a ty odpowiadasz w jednej wiadomości, zamiast wyplątywać je z diffu.

Limit pytań jest ważny. Bez niego część sesji zwraca dwadzieścia banalnych pytań, a to istotne ląduje na czternastym miejscu. Dobre praktyki Claude Code od Anthropic opisują dłuższy wariant dla dużych funkcji: agent przeprowadza z tobą wywiad narzędziem AskUserQuestion, zapisuje wynik do pliku ze specyfikacją, a implementację robisz w nowej sesji (Claude Code best practices, sprawdzone 2026-09-26). Spisana specyfikacja to wejście, na którym opiera się reszta łańcucha artefaktów.

To samo zakończenie działa w całym cyklu życia: „zapytaj o to, czego potrzebujesz do najlepszej specyfikacji”, „zapytaj o to, czego potrzebujesz do planu”, „zapytaj o kontekst, który pomoże zdiagnozować ten błąd”.

Podaj ograniczenia i sprawdzenie, które agent musi uruchomić

Dział zatytułowany „Podaj ograniczenia i sprawdzenie, które agent musi uruchomić”

Ogólnikowe prośby dają generyczny kod. Nazwij bibliotekę, źródło konfiguracji, zachowanie przy błędzie i przede wszystkim polecenie, które rozstrzyga, czy praca jest skończona.

  • Zamiast: „Dodaj połączenie z bazą danych”.
  • Napisz: „Dodaj połączenie z PostgreSQL przez bibliotekę pg. Connection string czytaj z DATABASE_URL. Ponawiaj z wykładniczo rosnącym odstępem (exponential backoff), najwyżej pięć prób. Wyeksportuj typowaną funkcję healthCheck(). Gotowe, gdy npm test -- db przechodzi, a npm run typecheck nie zgłasza błędów”.

Kluczowe jest ostatnie zdanie. Dobre praktyki Anthropic mówią to wprost: bez sprawdzenia, które agent może uruchomić, jedynym sygnałem jest to, że kod „wygląda na gotowy”, a pętlą weryfikacji stajesz się ty (Claude Code best practices, sprawdzone 2026-09-26). Gdy sprawdzenie istnieje, agent je uruchamia, czyta błąd i sam poprawia.

„Do not edit or delete existing tests” to nie ozdobnik. Agent, który nie umie przejść sprawdzenia, czasem osłabia samo sprawdzenie; jak wymusić to mechanicznie, opisuje strona o ochronie wyroczni. Jak zamienić historyjkę użytkownika w takie sprawdzenia, pokazuje strona o wykonywalnych kryteriach akceptacji.

Żeby agent dopasował się do twojego kodu, pokaż mu plik, który już trzyma się konwencji. Konkretny przykład to ściślejsza specyfikacja niż akapit prozy i niesie szczegóły, o których zapomniałbyś wspomnieć: typy błędów, wywołania logowania, nazewnictwo, styl eksportów.

  • Zamiast: „Utwórz klasę serwisu z konstruktorem, prywatnym loggerem i JSDoc przy metodach publicznych”.
  • Napisz: „Utwórz PaymentService według struktury src/services/AuthService.ts: to samo wstrzykiwanie przez konstruktor, te same klasy błędów, to samo logowanie. Nie kopiuj komentarzy TODO ani przestarzałej metody legacyLogin”.

Wybierz plik, który niedawno przeszedł code review, i powiedz, czego nie kopiować. Agent wiernie odtwarza przykład, łącznie z jego błędami. Każde narzędzie ma też sposób na bezpośrednie dołączenie pliku; znajdziesz go w sekcji o różnicach między narzędziami poniżej.

Przy wszystkim większym niż drobna poprawka oddziel myślenie od działania. Agent proponuje plan bez kodu, ty poprawiasz plan, a potem agent implementuje jeden krok i się zatrzymuje.

  1. Poproś o plan i zabroń edycji. Przełącz narzędzie w tryb planowania tylko do odczytu (dokładny przełącznik w każdym narzędziu opisuje strona tryb agenta czy tryb pytań), a potem wyślij:

  2. Poprawiaj plan, nie kod. Plan wraca jako numerowana lista. Popraw go, póki jest tekstem: „Użyj osobnego komponentu AvatarUpload zamiast edytować ProfilePage. Typ MIME waliduj na serwerze, nie tylko w przeglądarce”.

  3. Zaimplementuj jeden krok i zatrzymaj się.

Ta pętla wyłapuje złe podejście, gdy jego poprawka kosztuje jedno zdanie, a nie diff w 30 plikach. Pełną dyscyplinę, od intencji przez specyfikację i plan po zadania, opisuje strona o łańcuchu artefaktów.

Nadawanie modelowi roli („jesteś starszym inżynierem bezpieczeństwa”) to popularna rada, ale dowody nie wspierają jej jako sposobu na trafność. Zheng, Pei, Logeswaran, Lee i Jurgens („When ‘A Helpful Assistant’ Is Not Really Helpful”, arXiv, listopad 2023) przetestowali 162 role na 4 rodzinach modeli i 2410 pytaniach faktograficznych. Dodanie persony do promptu systemowego nie poprawiło wyników względem braku persony, a efekt pojedynczej persony był „w dużej mierze losowy” (artykuł arXiv 2311.10054, streszczenie w wersji z repozytorium autorów, odczyt 2026-09-26).

Rola nadal wpływa na to, na co model patrzy i jak formatuje odpowiedź. Używaj jej do skupienia uwagi, a ciężar niech niosą jawne kryteria:

  • Słabo: „Jesteś ekspertem od bezpieczeństwa. Przejrzyj ten kod”.
  • Mocno: „Przejrzyj src/api/upload.ts pod kątem path traversal, braku walidacji MIME, nieograniczonego rozmiaru pliku i SSRF przez opcję importu z URL. Dla każdego znaleziska: plik, linia, szkic exploita, poprawka”.

Więcej niż jedna persona daje kilka perspektyw naraz, a rozbieżności między nimi odsłaniają kompromisy, które pojedyncza odpowiedź ukrywa.

Jakie prompty wyprowadzają agenta z impasu i domykają zadanie?

Dział zatytułowany „Jakie prompty wyprowadzają agenta z impasu i domykają zadanie?”

Trzy prompty zwracają się niemal przy każdym zadaniu.

Hipoteza przed poprawką. Gdy agent miota się przy błędzie (edycja, uruchomienie, cofnięcie, od nowa), zatrzymaj go i wymuś pomiar zamiast kolejnego zgadywania. Cały przepływ pracy zbudowany na tej zasadzie opisuje strona o error-driven development.

Samodzielny przegląd względem prośby. Drugie przejście agenta po własnym diffie, porównane z tym, o co prosiłeś, wyłapuje rozrost zakresu i zapomniane wymagania. To filtr, nie dowód; o dowodach mówi następna sekcja.

Druga wersja. Pierwsza działająca wersja to często eksploracja. Gdy testy przechodzą, agent wie dość, żeby napisać prostszą wersję za tymi samymi testami.

Dobre promptowanie przenosi pracę z czytania kodu na sprawdzanie dowodów. Wbuduj dowody w prompt, a czytanie zostaw maszynom i drugiemu recenzentowi.

  1. Sprawdzenie jest w prompcie. Każdy prompt implementacyjny kończy się poleceniami „gotowe, gdy” (testy, typy, lint), a agent wkleja ich wynik. Brak wyniku albo czerwony wynik oznacza, że zadanie nie jest skończone, cokolwiek mówi podsumowanie.

  2. Agent pisze raport z dowodami. Proś o niego na końcu każdego zadania:

  3. Diff czyta drugi recenzent, nie ty. Uruchom niezależny przegląd w świeżym kontekście: /code-review w Claude Code, /review albo codex review w Codeksie, Bugbot na pull requeście w Cursorze. Agent, który napisał kod, jest słabym sędzią własnej pracy.

  4. Ty zatwierdzasz dowody, o merge’u decyduje CI. Czytasz raport, wyrywkowo sprawdzasz testy dowodzące najbardziej ryzykownego wymagania i czytasz tylko pliki wskazane przez recenzenta. CI uruchamia te same sprawdzenia jeszcze raz i blokuje merge przy czerwonym wyniku.

Co musi zawierać kompletny raport dla pull requesta, opisuje strona o pakiecie dowodów, a sam przegląd — strona o code review PR-a agenta. O kodzie, który przechodzi testy, a mimo to jest błędny, przeczytasz na stronie o wyłapywaniu kodu wiarygodnego, ale błędnego.

Czym różni się promptowanie w Claude Code, Codeksie i Cursorze?

Dział zatytułowany „Czym różni się promptowanie w Claude Code, Codeksie i Cursorze?”

Gdy jakość wyników spada, najpierw sprawdź konfigurację, dopiero potem model: brak instrukcji projektu, brak odwołania do pliku, za niski poziom rozumowania albo okno kontekstu pełne nieudanych prób. Techniki opisane wyżej są takie same we wszystkich trzech narzędziach; różnią się dźwignie. Polecenia sprawdzono 2026-09-26 w claude --help 2.1.283, codex --help 0.157.1 i w dokumentacji poleceń Claude Code.

  • Instrukcje projektu: /init generuje CLAUDE.md; przycinaj go, gdy projekt się zmienia.

  • Wskazywanie plików: wpisz w prompcie @ i ścieżkę, na przykład @src/services/AuthService.ts, żeby dołączyć plik bezpośrednio.

  • Najpierw plan: /plan <opis> przełącza w plan mode dla tego zadania.

  • Poziom rozumowania: /effort high (albo xhigh) przed trudnym projektem lub refaktoryzacją; claude --effort high ustawia go dla sesji. Od v2.1.280 domyślnym modelem jest Claude Opus 5.5, który domyślnie pracuje na poziomie medium, więc podnieś effort, zanim zmienisz model.

  • Higiena kontekstu: /context pokazuje, co wypełnia okno; /compact <instrukcje> streszcza rozmowę w trakcie zadania; /clear zaczyna od nowa między niepowiązanymi zadaniami.

  • Aktualna dokumentacja bibliotek: zainstaluj wtyczkę Context7 z oficjalnego marketplace’u:

    Okno terminala
    claude plugin install context7@claude-plugins-official

    Potem dopisz „use context7” do promptu, który dotyka szybko zmieniającej się biblioteki.

Który model uruchomić i kiedy odejść od domyślnego, opisuje przegląd modeli. Zasada, której trzyma się ten serwis: zacznij od domyślnego modelu narzędzia, dostrój effort przed zmianą modelu, a model zmieniaj dopiero wtedy, gdy twoje własne ewaluacje to uzasadniają. Obszerniejsze katalogi promptów dla poszczególnych narzędzi znajdziesz na stronach prompt engineering w Claude Code, prompt engineering w Codeksie i szablony promptów w Cursorze.

Jeśli prowadzisz zespół: gdy prompt z tej strony sprawdzi się u was, przestań go wklejać. Zapisz go jako skill w repozytorium, żeby każdy programista i każde narzędzie uruchamiali tę samą wersję; zobacz stronę o agent skills.

  • Agent powtarza ten sam błąd mimo poprawek. Kontekst jest pełen nieudanych prób. Anthropic zaleca zacząć od nowa, gdy ten sam problem poprawiałeś więcej niż dwa razy (best practices, sprawdzone 2026-09-26). Wyjście: /clear w Claude Code albo /new w Codeksie, a potem jeden prompt zawierający to, czego się nauczyłeś.
  • Etap pytań zwraca banalne pytania. Wyjście: ogranicz ich liczbę, żądaj „pytań, których odpowiedzi zmienią projekt”, i każ najpierw przeczytać kod, żeby agent nie pytał o to, co repozytorium już mówi.
  • Agent skopiował błędy z pliku-wzorca. Wyjście: wybierz plik niedawno przejrzany i dopisz linijki „nie kopiuj” dla znanego długu.
  • Implementacja odpływa od zatwierdzonego planu. Wyjście: jeden krok na prompt i obowiązkowa lista „odstępstw od planu” na końcu każdego kroku.
  • Samodzielny przegląd twierdzi, że wszystko jest w porządku. Samodzielny przegląd filtruje, ale niczego nie dowodzi. Wyjście: opieraj się na poleceniach sprawdzających i niezależnym recenzencie w świeżym kontekście, jak w krokach weryfikacji wyżej.
  • Sprawdzenie przechodzi, bo agent je zmienił. Wyjście: zabroń edycji testów w prompcie, przed akceptacją zrób diff katalogu z testami i ustaw sprawdzenia jako tylko do odczytu dla agenta, jak opisuje strona o ochronie wyroczni.
  • Kod używa starego API biblioteki. Wyjście: dodaj Context7 albo wklej aktualną stronę dokumentacji; zobacz dokumentację jako kontekst.
  • Jakość spada pod koniec długiej sesji. Wyjście: sprawdź zużycie kontekstu (/context w Claude Code), a potem skompaktuj rozmowę albo zacznij od nowa; zobacz stronę o oknach kontekstu.