Inżynieria promptów to sztuka i nauka efektywnej komunikacji z AI. Z Claude Code nie chodzi tylko o otrzymywanie odpowiedzi – to orkiestracja złożonych przepływów pracy rozwoju. Ten przewodnik ujawnia zaawansowane strategie promptowania, które przekształcają Claude z asystenta kodowania w wyrafinowanego partnera programistycznego.
Claude Code działa jako to, co inżynierowie Anthropic nazywają “szybkim stażystą z doskonałą pamięcią”. Ten model mentalny jest kluczowy dla efektywnego promptowania:
Charakterystyka Claude
Chętny do pomocy : Dobrze reaguje na jasne, konkretne instrukcje
Doskonała pamięć : Pamięta wszystko w kontekście rozmowy
Ograniczone doświadczenie : Może potrzebować wskazówek w decyzjach architektonicznych
Literalna interpretacja : Korzysta z jawnych ograniczeń i wymagań
Świadomy kontekstu : Używa wiedzy o bazie kodu do informowania odpowiedzi
Jedna z najpotężniejszych technik to stopniowe ujawnianie informacji:
# ❌ Przeciążenie informacyjne
> Zbuduj kompletną platformę e-commerce z uwierzytelnianiem użytkowników, katalogiem produktów,
koszykiem zakupów, przetwarzaniem płatności, zarządzaniem zamówieniami, śledzeniem inwentarza,
powiadomieniami email i panelem administratora używając Next.js i PostgreSQL
# ✅ Progresywne ujawnianie
> Najpierw przeanalizuj naszą aktualną strukturę bazy kodu
# Claude bada istniejące wzorce
> Utwórz plan dodawania funkcji e-commerce do naszej platformy
# Claude tworzy podejście fazowe
> Zacznijmy od katalogu produktów. Zaprojektuj schemat bazy danych
# Claude skupia się na jednym komponencie na raz
Strategicznie wykorzystuj możliwości rozszerzonego rozumowania Claude:
> think about how to implement rate limiting
# Przydziela ~1,000 tokenów na rozumowanie
# Dobre dla prostych problemów
> think hard about the microservices architecture
# Przydziela ~5,000 tokenów na rozumowanie
# Idealne dla złożonych decyzji architektonicznych
> ultrathink about optimizing our database for scale
# Przydziela ~128,000 tokenów na rozumowanie
# Zarezerwuj dla krytycznych, złożonych problemów
Podaj ograniczenia przed wymaganiami aby oframować przestrzeń rozwiązań:
# Efektywne promptowanie z ograniczeniami na pierwszym miejscu
- Musi zachować kompatybilność wsteczną
- Nie może modyfikować istniejącego schematu bazy danych
- Musi ukończyć w czasie poniżej 2 sekund
- Ograniczone do 50MB użycia pamięci
Zadanie: Optymalizuj funkcjonalność wyszukiwania
# Claude teraz rozumie granice przed rozwiązywaniem
Pokaż Claude czego chcesz poprzez przykłady:
> Oto jak aktualnie obsługujemy uwierzytelnianie:
[wklej istniejący kod auth]
Oto podobny system używający JWT:
Zmigruj nasze auth aby używało JWT podążając za tymi samymi wzorcami
# Claude uczy się z konkretnych przykładów
Eksploracja architektury
"Przeanalizuj graf zależności między
naszymi serwisami i zidentyfikuj potencjalne
zależności cykliczne lub silne sprzężenie"
Analiza wydajności
"Sprofiluj bazę kodu i zidentyfikuj
top 5 wąskich gardeł wydajności
z konkretnymi numerami linii"
Audyt bezpieczeństwa
"Przejrzyj przepływ uwierzytelniania pod kątem
zasugeruj środki zaradcze"
Dług techniczny
"Znajdź zapachy kodu i antywzorce
w naszej bazie kodu, uporządkowane według
wpływu i nakładu pracy na naprawę"
Kluczem do promptów implementacji jest konkretność bez mikrozarządzania:
> Dodaj cache ' owanie Redis używając klienta node-redis wersja 4.5.1 z...
> Dodaj cache ' owanie do naszych odpowiedzi API:
- Używaj naszej istniejącej konfiguracji Redis
- Cache ' uj endpointy GET na 5 minut
- Unieważniaj przy powiązanych POST/PUT/DELETE
- Podążaj za naszymi ustalonymi wzorcami obsługi błędów
# Kompleksowe generowanie testów
> Wygeneruj testy dla modułu płatności:
- Testy jednostkowe dla każdej funkcji
- Testy integracyjne dla endpointów API
- Przypadki graniczne włączając awarie sieci
- Mockuj zewnętrzny gateway płatności
# Inteligentne ulepszanie testów
> Przejrzyj nasze istniejące testy i:
- Zidentyfikuj brakujące przypadki graniczne
- Znajdź niestabilne testy i uczyń je deterministycznymi
- Dodaj testy oparte na właściwościach gdzie odpowiednie
- Upewnij się że testy podążają za wzorcem AAA
Dla operacji wieloetapowych, używaj strukturyzowanych list kontrolnych:
> Utwórz migration-checklist.md ze wszystkimi krokami potrzebnymi do:
1. Migracji z Express do Fastify
2. Zachowania całej istniejącej funkcjonalności
4. Aktualizacji dokumentacji
Następnie przepracuj listę kontrolną, odznaczając każdy element
# Claude tworzy i podąża za ustrukturyzowanym planem
Wbuduj weryfikację w swoje prompty:
> Dla każdego pliku który modyfikujesz:
2. Uruchom powiązane testy
3. Jeśli testy nie przechodzą, napraw i uruchom ponownie
4. Przejdź do następnego pliku tylko gdy testy przechodzą
Zacznij od user.service.ts
Wykorzystaj możliwości podagentów Claude:
> Użyj podagentów aby zbadać to równolegle:
- Aktualne wzorce użycia pamięci w aplikacji
- Dostępne strategie cache ' owania dla naszego stosu
- Benchmarki wydajności z podobnych systemów
Następnie zsyntetyzuj odkrycia w plan optymalizacji
"Czy mógłbyś proszę pomóc mi zrozumieć jak mógłbym
potencjalnie zrefaktoryzować ten moduł uwierzytelniania
aby prawdopodobnie używać tokenów JWT zamiast obecnego
podejścia opartego na sesjach, upewniając się aby
zachować całą istniejącą funkcjonalność?"
~50 tokenów
"Refaktoryzuj auth: sesje → JWT.
Zachowaj całą funkcjonalność."
~12 tokenów
ZACHOWAJ: Wszystkie endpointy, testy"
~15 tokenów, maksymalna jasność
Zarządzaj kontekstem Claude strategicznie:
# Wyczyść kontekst między głównymi zadaniami
# Selektywne ładowanie kontekstu
> Skup się tylko na module płatności - ignoruj inne części
> Przeanalizuj payment/src/ pod kątem zgodności z PCI
> Zanim będziemy kontynuować, podsumuj co osiągnęliśmy
Prowadź Claude do lepszych rozwiązań poprzez pytania:
> Jakie są potencjalne problemy z tym schematem bazy danych ?
# Claude identyfikuje problemy
> Jak rozwiązałbyś problem zapytania N+1 który zidentyfikowałeś ?
# Claude proponuje rozwiązania
> Jakie są kompromisy każdego podejścia ?
> Zaimplementuj rozwiązanie które najlepiej balansuje wydajność i maintainability
# Claude dokonuje świadomego wyboru
Używaj Claude jako inteligentnej gumowej kaczki:
> Próbuję debugować dlaczego nasze połączenia WebSocket
przerywają się po dokładnie 30 sekundach. Oto co wiem:
- Dzieje się tylko w produkcji
- Zaczęło się po ostatnim wdrożeniu
Pomóż mi przemyśleć możliwe przyczyny
# Claude zadaje pytania doprecyzujące i prowadzi śledztwo
Strukturyzuj żądania przeglądu kodu efektywnie:
> Przejrzyj ten PR skupiając się na:
1. Błędach logicznych i przypadkach granicznych
3. Implikacjach wydajnościowych
4. Spójności z naszymi wzorcami
Pomiń problemy stylu - linter je obsługuje
[wklej diff lub odwołaj się do PR]
Przechowuj złożone prompty jako polecenia wielokrotnego użytku:
Przeanalizuj dostarczone zapytanie SQL i:
1. Wyjaśnij aktualny plan wykonania
2. Zidentyfikuj wąskie gardła wydajności
3. Zasugeruj optymalizacje z wyjaśnieniami
4. Dostarcz zoptymalizowane zapytanie
5. Oszacuj poprawę wydajności
- Częstotliwość zapytania
Użycie:
> /project:optimize-query " SELECT * FROM users WHERE... "
Używaj skryptowania powłoki aby tworzyć prompty świadome kontekstu:
# Generuj prompt z aktualnym stanem systemu
- CPU: $( top -l 1 | grep " CPU usage " | awk ' {print $3} ' )
- Pamięć: $( vm_stat | grep " Pages free " | awk ' {print $3} ' )
- Dysk: $( df -h / | awk ' NR==2 {print $5} ' )
Zdiagnozuj dlaczego aplikacja działa wolno
Wbuduj obsługę błędów w prompty:
> Spróbuj zaimplementować integrację OAuth:
- Jeśli jakikolwiek krok nie powiedzie się, udokumentuj dlaczego w errors.log
- Zasugeruj alternatywne podejścia
- Utwórz minimalną działającą wersję jeśli pełna implementacja nie jest możliwa
- Oznacz niejasne wymagania komentarzami TODO
Nie oczekuj perfekcji za pierwszym razem:
> Utwórz formularz rejestracji użytkownika
# Dopracowanie na podstawie wyniku
> Dobry start. Teraz dodaj:
- Walidację po stronie klienta
> Dodaj właściwą obsługę błędów gdy API jest niedostępne
Przywołuj konkretną ekspertyzę:
> Jako ekspert wydajności bazy danych, przeanalizuj nasze wzorce zapytań
> Jako badacz bezpieczeństwa, spróbuj znaleźć luki
> Jako projektant UX, zasugeruj ulepszenia naszych komunikatów błędów
Używaj sprzecznych punktów widzenia dla lepszych rozwiązań:
> Przedstaw argumenty za i przeciw używaniu mikrousług
dla naszego przypadku użycia, następnie zaleć najlepsze podejście
> Porównaj REST vs GraphQL dla naszej aplikacji mobilnej,
rozważając nasze konkretne ograniczenia
Pozwól Claude pomóc ulepszyć Twoje prompty:
> Oto zadanie które często muszę wykonywać:
Utwórz zoptymalizowany szablon promptu którego mogę używać ponownie
# Claude tworzy dopracowany, wielokrotnego użytku prompt
Śledź to aby ulepszyć swoje promptowanie:
Efektywność tokenów : Jakość wyniku / zużyte tokeny
Liczba iteracji : Ile dopracowań było potrzebnych
Wskaźnik błędów : Jak często Claude źle rozumie
Czas do rozwiązania : Całkowity czas od promptu do działającego kodu
Przed wysłaniem złożonego promptu:
❌ Powieść
Pisanie ekstremalnie długich, wędrujących promptów które zakopują rzeczywiste żądanie w akapitach kontekstu.
❌ Czytelnik myśli
Założenie że Claude zna Twoje niewypowiedziane preferencje, decyzje architektoniczne lub logikę biznesową.
❌ Perfekcjonista
Oczekiwanie bezbłędnego kodu przy pierwszym generowaniu zamiast iterowania.
❌ Mikromenedżer
Specyfikowanie każdego szczegółu implementacji zamiast wykorzystywania możliwości Claude.
Opanuj te komplementarne umiejętności:
Pamiętaj: Inżynieria promptów to zarówno sztuka jak i nauka. Najlepsze prompty są jasne, kontekstowe i konwersacyjne. Z praktyką rozwiniesz intuicję co działa i stworzysz własne wzorce pasujące do Twojego stylu rozwoju.