Inżynieria promptów

Lepsze prompty. Lepszy kod.

Jakość kodu generowanego przez AI zależy niemal całkowicie od tego, o co prosisz i jak to formlujesz. Ten przewodnik opisuje wzorce, które konsekwentnie dają lepsze wyniki z Claude Code.

Od zakresu zadań po prompty systemowe, od iteracyjnego doskonalenia po instrukcje według ról. Praktyczne techniki, które możesz zastosować w następnej sesji kodowania.

Dlaczego inżynieria promptów ma znaczenie dla kodu

Kiedy prosisz ludzkiego programistę o 'zbudowanie strony logowania', zadaje on pytania: który dostawca uwierzytelniania? Jakie pola? Czy obsługiwać OAuth? Komunikaty błędów? Stany ładowania?

Agenty kodujące AI próbują odpowiedzieć na wszystkie te pytania samodzielnie. Czasem trafiają. Często proponują coś rozsądnego, ale nie to, czego chciałeś. Luka między 'rozsądnym' a 'dokładnie trafnym' to właśnie to, co zamyka inżynieria promptów.

Dobre prompty nie muszą być długie. Muszą być konkretne w kwestiach, które są ważne, i milczeć o tych, które nie są. Ta równowaga jest tematem tego przewodnika.

Pięć podstawowych zasad

Wzorce, które poprawiają wyniki niezależnie od zadania.

1

Określaj wyniki, nie kroki

Zamiast 'utwórz komponent React, potem dodaj stan, potem dodaj style', opisz wynik końcowy: 'Zbuduj zwijany panel boczny, który wyświetla nazwy projektów, obsługuje przeciąganie do zmiany kolejności i używa naszego istniejącego motywu Tailwind.' Pozwól agentowi zdecydować, jak to osiągnąć.

Avoid

Utwórz komponent. Dodaj useState. Dodaj przycisk przełączania. Ostyluj za pomocą Tailwind.

Better

Zbuduj zwijany komponent panelu bocznego, który wyświetla projekty według nazwy. Powinien obsługiwać przeciąganie do zmiany kolejności i pasować do naszego ciemnego motywu (bg-[#111318], border-[#262b38]). Stan zwinięcia powinien przetrwać przeładowanie strony.

2

Jasno określ zakres pracy

Agenty działają najlepiej, gdy znają granice. Określ, które pliki modyfikować (lub unikać), jakie wzorce stosować i jak wygląda 'gotowe'. Zadania bez granic prowadzą do rozległych zmian, które trudno przeglądać.

Avoid

Zrefaktoryzuj system uwierzytelniania.

Better

Zrefaktoryzuj handler logowania w src/api/auth/login.ts, aby używał bcrypt zamiast sha256 do hashowania haseł. Nie zmieniaj logiki JWT ani obsługi ciasteczek sesji. Zaktualizuj powiązane testy w tests/auth/.

3

Podaj istotny kontekst

Claude Code może czytać pliki twojego projektu, ale nie może czytać twoich myśli. Jeśli stosujesz jakąś konwencję, preferujesz jakąś bibliotekę lub masz już ustalony wzorzec, powiedz o tym. To oszczędza przeróbek.

Avoid

Dodaj walidacje formularza.

Better

Dodaj walidacje formularza rejestracji używając zod (już używamy go w formularzu ustawień w src/forms/settings.ts). Wyświetlaj komunikaty błędów inline pod każdym polem. Zastosuj ten sam styl błędów co w formularzu logowania.

4

Jedno zadanie na prompt

Złożone prompty ('zbuduj API, napisz testy, zaktualizuj dokumentacje i wdroży') zmuszają agenta do utrzymywania zbyt wielu celów naraz. Podziel zlezone prace na sekwencyjne, skoncentrowane zadania. Każde bazuje na wyniku poprzedniego.

Avoid

Zbuduj stronę profilu użytkownika, napisz endpointy API, dodaj testy, zaktualizuj README i przy okazji napraw pasek nawigacji.

Better

Zbuduj endpoint GET /api/user/profile. Zwróć pola id, name, email i plan. Użyj istniejącego middleware uwierzytelniania.

5

Iteruj, nie zaczynaj od nowa

Jeśli pierwszy wynik nie jest odpowiedni, dopracuj prompt zamiast zaczynać od zera. Claude zachowuje pełny kontekst rozmowy. Powiedz, co jest nie tak, co zmienić i co zachować. Iteracja jest szybsza niż tworzenie od nowa.

Avoid

To jest źle. Zacznij od nowa i zbuduj komponent inaczej.

Better

Układ jest dobry, ale breakpoint mobilny jest zły. Poniżej 768px układaj karty pionowo zamiast użyć grida. Reszta niech zostanie bez zmian.

Prompty systemowe: kontekst, który trwa

Prompty systemowe ustawiają bazowe zachowanie agenta, zanim cokolwiek powiesz. To najbardziej niedoceniane narzędzie w kodowaniu z AI.

Prompt systemowy mówi agentowi, kim jest, na czym powinien się skupić i czego unikać. Dotyczy każdej wiadomości w sesji. Można go traktować jako opis stanowiska agenta.

AgentsRoom zawiera 14 promptów systemowych według ról, po jednym dla każdego typu agenta. Prompt agenta Frontend mówi mu, żeby skupił się na komponentach, dostępności i responsywnym designie. Prompt agenta QA mówi mu, żeby myślał o przypadkach brzegowych i pisał kompleksowe testy. Możesz je dostosować lub napisać własne.

Przykład: prompt systemowy agenta Frontend

Jesteś starszym programista frontend. Skup się na komponentach React, stylach CSS/Tailwind, dostępności (WCAG AA) i responsywnym designie. Używaj istniejącej biblioteki komponentów projektu przed tworzeniem nowych. Preferuj kompozycje nad dziedziczenie. Pisz semantyczny HTML. Nigdy nie modyfikuj plików backendowych.

Pisanie skutecznych promptów systemowych

  • ✓Zdefiniuj role i jej granice. Na czym agent powinien się skupić? Co powinien ignorować?
  • ✓Wymień konkretne technologie i wersje. 'React 19 with Server Components' jest lepsze niż 'nowoczesny React'.
  • ✓Odwołuj się do konwencji projektu. 'Użyj Zustand do stanu' mówi agentowi, żeby nie sięgał po Redux ani Context.
  • ✓Ustal oczekiwania jakościowe. 'Pisz TypeScript w trybie strict, bez typów any' zapobiega skrótom.
  • ✓Dodaj negatywne ograniczenia. 'Nigdy nie modyfikuj plików w /api/' utrzymuje agenta w jego obszarze.

CLAUDE.md: kontekst na poziomie projektu

Najskuteczniejszy prompt nie jest wpisywany w czacie. Znajduje się w twoim repozytorium.

CLAUDE.md to plik markdown w katalogu głównym projektu, który Claude Code czyta automatycznie. Zawiera strukturę projektu, konwencje, szczegóły stosu technologicznego i wytyczne dotyczące każdej sesji agenta w projekcie.

Zamiast powtarzać 'używamy Tailwind CSS 4, Prisma ORM i Next.js 16' w każdej rozmowie, napisz to raz w CLAUDE.md. Każdy agent dziedziczy ten kontekst. AgentsRoom zawiera wbudowany edytor CLAUDE.md, więc możesz go aktualizować bez opuszczania aplikacji.

Dobrze napisany CLAUDE.md jest wart więcej niż dziesiątki starannie opracowanych pojedynczych promptów. Efekt się kumuluje: każda sesja z niego korzysta.

Zbuduj bibliotekę promptów

Przestant pisać te same instrukcje od nowa. Zapisuj to, co działa, i używaj ponownie.

Jeśli zauwazyasz, że wpisujesz ten sam rodzaj zapytania w różnych projektach ('napisz testy jednostkowe dla tego pliku', 'zrefaktoryzuj to do wzorca repozytorium', 'dodaj obsługę błędów do wszystkich tras API'), zapisz to jako prompt wielokrotnego użytku.

AgentsRoom zawiera funkcje biblioteki promptów z dwoma poziomami: prompty projektowe dla zadań specyficznych dla projektu oraz prompty globalne (synchronizowane w chmurze) dla wzorców, których używasz wszędzie.

Dobrzy kandydaci do biblioteki: listy kontrolne przeglądu kodu, szablony pisania testów, skrypty migracji, instrukcje tworzenia szkieletów komponentów, kroki audytu bezpieczeństwa. Wszystko, co umieszczlbys w wiki zespołu jako standardową procedurę.

Przykłady z biblioteki promptów

Pisanie testów jednostkowych

Napisz testy jednostkowe dla [pliku]. Użyj vitest. Pokryj ścieżkę główną, przypadki brzegowe (puste dane wejściowe, null, nieprawidłowe typy) i obsługę błędów. Mockuj zewnętrzne zależności. Cel: ponad 90% pokrycia gałęzi.

Przegląd kodu

Przejrzyj zmiany w bieżącym git diff. Sprawdź: nieużywane importy, brak obsługi błędów, problemy z bezpieczeństwem typów, potencjalne race conditions i niespójności w nazewnictwie. Zaproponuj poprawki dla każdego znalezionego problemu.

Endpoint API

Utwórz endpoint REST dla [zasobu]. Zawrzyj walidacje danych wejściowych za pomocą zod, odpowiednie odpowiedzi błędów (400, 401, 404, 500), typy TypeScript dla request/response i komentarz JSDoc opisujący endpoint. Stosuj istniejący wzorzec z src/api/.

Zaawansowane wzorce

Techniki do złożonych zadań wykraczających poza pojedyncze prompty.

Łańcuchowanie promptów

Podziel duże zadanie na uporządkowane kroki. Uruchom pierwszego agenta z krokiem pierwszym, poczekaj na zakończenie, następnie uruchom następnego agenta z krokiem drugim (odwołując się do wyniku kroku pierwszego). Każdy krok jest mniejszy i bardziej skoncentrowany. Przykład: Agent 1 projektuje schemat bazy danych, Agent 2 pisze API używając tego schematu, Agent 3 pisze testy dla API.

Przegląd między agentami

Po zakończeniu pracy jednego agenta, skieruj innego agenta na jego wynik. 'Przejrzyj zmiany, które agent frontend właśnie wprowadził w src/components/. Sprawdź problemy z dostępnością i brakujące stany błędów.' Nowy agent z inną rolą wychwytuje rzeczy, które oryginalny agent przeoczył.

Stopniowe ograniczenia

Zacznij od szerokiego prompta, aby zobaczyć, jak agent podchodzi do problemu. Następnie dodawaj ograniczenia w kolejnych wiadomościach: 'Dobra struktura, ale użyj server components zamiast client components.' 'Zachowaj hook, ale usuń useEffect i użyj React Query mutation.' Każda iteracja przybliży do rozwiązania, którego szukasz.

Implementacja referencyjna

Skieruj agenta na istniejący kod: 'Zbuduj stronę ustawień według tego samego wzorca co src/pages/profile.tsx. Taki sam układ, taka sama obsługa formularzy, takie samo wyświetlanie błędów.' Jest to często skuteczniejsze niż opisywanie wzorca słowami.

Częste błędy

Wzorce, które konsekwentnie dają gorsze wyniki.

Nadmierne precyzowanie implementacji

Mówienie agentowi dokładnie, jakie funkcje napisać, jakie nazwy zmiennych użyć i w jakiej kolejności implementować. Takie mikrozarządzanie odbiera agentowi możliwość znalezienia lepszego podejścia. Opisuj wynik, nie procedurę.

Brak granic zakresu

Proszenie agenta o 'poprawienie bazy kodu' bez ograniczeń. Bez granic agent może zrefaktoryzować pliki, których nie chciałeś ruszać, zmienić API, od których zależy inny kod, lub wydać tokeny na poprawki o niskim priorytecie.

Ignorowanie istniejącego kodu

Niewspomnienie, że wzorzec, narzędzie lub komponent już istnieje w projekcie. Agent utworzy nowy. Proste 'mamy już hook useAuth w src/hooks/' oszczędza znaczących przeróbek.

Złożone mega-prompty

Upychanie pięciu zadań w jednej wiadomości. Agent spróbuje wykonać wszystkie, ale jakość spada, gdy zarządza konkurującymi celami. Podziel je na sekwencyjne, skoncentrowane zapytania.

Często zadawane pytania

Jak długi powinien być prompt do kodowania?+
Większość skutecznych promptów kodujących ma od 2 do 5 zdań. Wystarczająco długie, aby określić wynik, zakres i kluczowe ograniczenia. Wystarczająco krótkie, aby agent nie zagubił się w szczegółach. Jeśli twój prompt to cały akapit, zastanów się, czy część tego kontekstu nie powinna trafić do CLAUDE.md lub prompta systemowego.
Czy powinienem pisać prompty inaczej dla Opus i Sonnet?+
Nieznacznie. Opus lepiej radzi sobie z niejednoznacznością i potrafi wywnioskować intencje z mniejszej ilości kontekstu. Sonnet korzysta z bardziej jawnych instrukcji i wyzrazniejszych granic zakresu. Dla obu modeli, precyzja dotycząca oczekiwanego wyniku poprawia rezultaty.
Jak AgentsRoom pomaga w inżynierii promptów?+
Na trzy sposoby: wbudowane prompty systemowe według ról dla każdego z 14 typów agentów, biblioteka promptów do zapisywania i ponownego używania skutecznych promptów oraz edytor CLAUDE.md do kontekstu na poziomie projektu. Te warstwy oznaczają, że spędzasz mniej czasu na tworzeniu pojedynczych wiadomości, ponieważ bazowy kontekst jest już dobry.
Czy mogę udostępniać prompty w zespole?+
Tak. AgentsRoom przechowuje prompty w dwóch lokalizacjach: prompty projektowe w .agentsroom/prompts.json (kontrola wersji, udostępnianie przez git) i prompty osobiste w prompts-personal.json (w gitignore). Prompty globalne synchronizują się przez chmurę na wszystkich twoich urządzeniach.
Jaka jest różnica między promptem systemowym a CLAUDE.md?+
CLAUDE.md to kontekst projektu, który każdy agent czyta automatycznie: stos technologiczny, struktura, konwencje. Prompty systemowe to instrukcje behawioralne specyficzne dla agenta: rola, obszary zainteresowania, ograniczenia. Uzupełniają się nawzajem. CLAUDE.md mówi 'ten projekt używa Next.js 16 z Prisma.' Prompt systemowy mówi 'jesteś programista backend skupionym na trasach API.'

Warto przeczytać

Pisz lepsze prompty, dostarczaj lepszy kod

AgentsRoom oferuje wbudowane prompty systemowe, bibliotekę promptów i edycje CLAUDE.md. Mniej czasu na tworzenie promptów, więcej czasu na budowanie.

Za darmoPobierz na macOS i Linux

Aplikacja towarzysząca: monitoruj agentów w podróży

Użyj Claude, Codex, Antigravity CLI lub innego dostawcy AI.

Zainstaluj rozszerzenie
Chrome Web Store

Wysyłaj bugi i prośby bezpośrednio do swojego publicznego backlogu.

Wiele projektów
Multi-provider
Wielu agentów
Status na żywo
Diff i commit
Aplikacja mobilna
Podgląd na żywo
Zespoły agentów
Testy w przeglądarce
Dev oparta na backlogu
Biblioteka promptów
Biblioteka umiejętności
Zobacz wszystkie funkcje