Claude Code Deep Dive – kompletny przewodnik po AI w terminalu #EN259
Adam Michalski
26 sierpnia 2025
TL;DR
- Claude Code przewyższa Cursor i Copilot dzięki zaawansowanemu zestawowi narzędzi
- Plan Mode to różnica między przypadkowym promptowaniem a świadomym planowaniem zadań
- Niestandardowe komendy automatyzują powtarzalne zadania projektowe
- Protokół MCP rozszerza możliwości poprzez integrację z zewnętrznymi narzędziami
- Integracja z GitHub Actions umożliwia automatyczny przegląd i naprawianie kodu
- Trzy plany subskrypcyjne (20$, 100$, 200$) z limitami w 5-godzinnych oknach
- System uprawnień chroni wrażliwe dane przez kontrolę dostępu do plików
Czym Claude Code wyróżnia się na tle konkurencji
Według prowadzących webinar, Claude Code stanowi obecnie najlepsze rozwiązanie dla deweloperów chcących podnosić produktywność z wykorzystaniem AI. Narzędzie przewyższa Cursor i Windsor, podczas gdy porównania z Copilot czy ChatGPT eksperci uznają za nieuzasadnione.
Kluczowa różnica polega na tym, że Claude Code to nie tylko dostęp do modelu, ale kompletny agent AI. Marcin wyjaśnia, że gdy mówimy o agentach, często skupiamy się wyłącznie na modelu językowym, jednak to tylko jeden element siły agenta.
Różnica między agentem a modelem językowym
Drugim istotnym elementem jest dostęp do narzędzi udostępnianych przez środowisko. W rezultacie ten sam model (na przykład Sonnet 4) działa zauważalnie gorzej w Copilocie niż w Claude Code – z powodu różnic w zestawie narzędzi, a nie w samym modelu.
Agent AI wykonuje zadania w trzech głównych krokach, w pętli zwrotnej:
- Zbieranie kontekstu – identyfikacja obszarów kodu i plików istotnych dla zadania
- Formułowanie planu – opracowanie strategii realizacji krok po kroku
- Podejmowanie działań – edycja plików, uruchamianie testów, sprawdzenie kierunku
Narzędzie działa w dowolnym terminalu – Visual Studio Code, JetBrains, Warp czy Item. Oferuje dwa modele płatności: subskrypcję na cloud.ai lub Pay As You Go przez klucz API z console.anthropic.com.
Metodyka efektywnej pracy z Claude Code
Plan Mode jako fundament sukcesu
Plan Mode stanowi kluczową funkcjonalność, którą aktywuje się dwukrotnym wciśnięciem Shift+Tab. Marcin zauważa, że większość osób pomija ten krok i później wyraża rozczarowanie rezultatami. Typowy błąd polega na wpisaniu polecenia typu „przemigruj mi reguły do bazy danych” i oczekiwaniu zadowalających efektów.
Prawidłowy przepływ pracy z Plan Mode:
- [ ] Aktywuj Plan Mode (dwukrotne Shift+Tab) przed złożonymi zadaniami
- [ ] Przekaż szczegółowe informacje o problemie i oczekiwanym rozwiązaniu
- [ ] Wybierz opcję „continue planning” zamiast natychmiastowej implementacji
- [ ] Zapisz plan do
plan.md
i poproś o przegląd: „znajdź luki, over-engineering” - [ ] Edytuj plan własnoręcznie, korzystając z własnej wiedzy
- [ ] Dopiero wtedy przejdź do implementacji z „use ultrathinking”
Ultrathinking dla wymagających zadań
W przypadku bardziej skomplikowanych problemów prowadzący rekomendują tryb „ultrathinking”. Metoda zwiększa możliwości intelektualne agenta, jednak wiąże się z większym zużyciem tokenów.
Marcin radzi korzystanie z tej opcji, gdy zależy nam na wysokiej jakości wykonania i problem nie jest banalny. Wystarczy dodać do polecenia frazę „use ultrathinking”.
Case study: migracja reguł do bazy danych
Podczas webinaru przedstawiono praktyczny przykład pracy z aplikacją 10x Rules – narzędziem zawierającym instrukcje dla AI dopasowane do różnych stosów technologicznych.
Problem do rozwiązania: Wszystkie instrukcje były przechowywane w plikach TypeScript, co tworzyło ograniczenia: wymagane pull requesty dla każdej zmiany, konieczność wdrożenia przy aktualizacji reguł oraz brak możliwości personalizacji dla różnych użytkowników i organizacji.
Rozwiązanie obejmowało migrację do bazy danych Supabase, co umożliwiłoby UI do zarządzania, zmiany bez wdrożenia oraz dedykowane reguły.
Proces rozpoczął się od komendy /init
, która skanuje projekt i tworzy podsumowanie technologiczne. Następnie aktywowano Plan Mode i przygotowano szczegółowy plan. Kluczowy okazał się etap przeglądu planu – Marcin przyznaje, że często pierwszy plan bywa zbyt ambitny. W tym przypadku agent zaproponował stworzenie pięciu tabel zamiast jednej, która wystarczyła na początek.
Po dopracowaniu planu przyszła implementacja z użyciem ultrathinking. Prowadzący podkreśla, że mając dobry plan i korzystając z ultrathinkingu, Claude Code rozwiązał problem za pierwszym razem.
Protokół MCP i rozszerzenia – analiza Adama Gospodarczyka
Adam Gospodarczyk, współtwórca AI Devs, szczegółowo omówił wykorzystanie protokołu MCP (Model Context Protocol). Protokół standaryzuje komunikację między klientem a serwerem, umożliwiając rozszerzanie możliwości Claude Code.
W swojej aplikacji backendowej Adam wykorzystuje serwer REF do przeszukiwania dokumentacji, integrację z Linear do zarządzania zadaniami oraz automatyczne tworzenie specyfikacji zadań. Istotne jest to, że REF nie przekazuje całej dokumentacji, ale precyzyjnie dostarcza odpowiedź na konkretne pytanie zamiast zaśmiecać kontekst.
Struktura kontekstu według Adama:
- Katalog
spec
z fragmentami dokumentacji (nie całej!) używanych technologii - Plik
cloud.md
z najważniejszymi zasadami – dołączany automatycznie - Opisy funkcjonalności i głównych modułów aplikacji
- Wyspecjalizowani agenci: eksperci od AI SDK, Langfuse, zarządzania repozytorium, Linear oraz agent do opisywania zadań w kontekście projektu
Adam podkreśla również kwestie bezpieczeństwa, szczególnie przy serwerach nieoficjalnych bez dostępu do kodu źródłowego. Zaleca sprawdzanie źródła serwerów MCP przed ich instalacją.
Integracja zespołowa i CI/CD
Przemek Smetek zaprezentował zaawansowane wykorzystanie Claude Code w kontekście zespołowym. Kluczowym elementem jest integracja z GitHub Actions dla automatycznego przeglądu i naprawy kodu.
System działa w dwóch trybach. Po dodaniu etykiety „Cloud Code Review” uruchamia się automatyczna analiza kodu z kategoryzacją błędów na blokery, majory i minory. Z kolei po dodaniu „Cloud Code Support” agent wprowadza poprawki bezpośrednio w kodzie i tworzy nowy commit.
Przewaga własnej implementacji: Przemek celowo nie używa gotowej GitHub Action, ale buduje własną integrację. Dzięki temu ma pełną kontrolę nad całym procesem i może dostosować prompty do swoich potrzeb. Prompty przechowuje w folderze .ai
, co umożliwia ich wykorzystanie przez różnych agentów – nie tylko Claude Code, ale też potencjalnie Codex czy Devin.
Prowadzący zauważa, że nie zawsze mamy dostęp do seniorskich deweloperów albo nie mają oni czasu na przegląd każdego fragmentu kodu.
Zarządzanie kosztami i planami subskrypcyjnymi
Claude Code oferuje trzy plany subskrypcyjne z limitami w 5-godzinnych oknach czasowych:
Plan Pro – 20$ (~75 zł)
- Dostęp: Claude Sonnet 4
- Limity: 10-40 promptów na 5h
- Rekomendacja: dobry start, jednak szybko może nie wystarczyć
Plan Max 5x – 100$ (~375 zł)
- Dostęp: Claude Sonnet 4 + Opus 4
- Limity: 50-200 promptów na 5h
- Rekomendacja: optymalny dla większości użytkowników
Plan Max – 200$ (~750 zł)
- Dostęp: pełny + komenda
/model
- Limity: 200-800 promptów na 5h
- Rekomendacja: dla intensywnego codziennego użycia
Optymalizacja kosztów
Prowadzący polecają strategię „Opus plan mode” – używanie najsilniejszego modelu do planowania, a Sonnet 4 do implementacji. Marcin wyjaśnia, że Opus około pięciokrotnie szybciej zużywa limity niż Sonnet 4, natomiast nawet Sonnet 4 w trybie UltraThink jest zauważalnie tańszy od Opusa.
Bezpieczeństwo i zarządzanie uprawnieniami
System uprawnień Claude Code oferuje trzy typy kontroli: Allow (automatyczne pozwolenie), Deny (blokada dostępu) oraz Ask (wymaganie potwierdzenia). Konfiguracja odbywa się poprzez plik .cloud/settings.json
w projekcie.
Zabezpieczenie projektu:
- [ ] Utwórz
.cloud/settings.json
w katalogu głównym - [ ] Zablokuj dostęp:
"env_files": "deny"
,"secrets": "deny"
- [ ] Pozwól na operacje:
"tests": "allow"
,"linting": "allow"
- [ ] Zatwierdź ustawienia w repozytorium (obowiązują cały zespół)
Kluczowa przewaga bezpieczeństwa polega na tym, że Claude Code nie opiera się na indeksowaniu kodu, tylko na wywołaniach narzędzi. Oznacza to, że jedynie niezbędne fragmenty kodu trafiają na serwery Anthropic.
Najważniejsze komendy na start
Podstawowe komendy:
/init
– skanuje projekt i tworzy podsumowanie technologii/architektury/clear
– czyści kontekst konwersacji (używaj po zakończeniu zadania)/permissions
– zarządza uprawnieniami dostępu@nazwa_pliku
– dodaje plik do kontekstu polecenia
Zaawansowane:
/mcp
– zarządza serwerami MCP,/model
– przełącza modele (plan Max)use ultrathinking
– aktywuje maksymalny tryb myślenia- Komenda
ide
– dodatkowa integracja z edytorem, lepsze wyświetlanie zmian na bieżąco
Niestandardowe komendy – możliwość definiowania własnych komend w folderze .cloud/commands/nazwa.md
.
Marcin stworzył komendę generate types from supabase
, która rozwiązuje konkretny problem. Supabase automatycznie generuje typy TypeScript, jednak są one mało czytelne. Komenda tworzy czytelne modele zgodne z domain-driven design, z których przyjemnie się korzysta.
Inne zastosowania obejmują generowanie opisów pull requestów zgodnych z formatem repozytorium czy przegląd kodu według standardów zespołu.
Konkurencja i alternatywy
Claude Code SDK vs surowe API: Przemek podkreśla kluczową różnicę: surowe API oznacza wykorzystanie modelu językowego, podczas gdy Claude Code SDK to agent AI w formie wtyczki. Gotowy agent ma konwencje konfiguracji, model uprawnień (bez „pełnej samowolki” w systemie plików), obsługę narzędzi oraz SDK dla różnych technologii.
Rozwiązania konkurencyjne:
- OpenAI Codec CLI – wcześniej oferował darmowy dostęp do GPT-5
- Gemini CLI – według ekspertów nie cieszy się dobrymi opiniami
- opencode.ai – najbardziej uniwersalny, niezależny od dostawcy
Przewaga Anthropic polega na tym, że tworzą zarówno model jak i agenta. W rezultacie mogą dostosować model pod potrzeby narzędzia i mają lepszy cykl sprzężenia zwrotnego.
Harness – wpływ środowiska na model: Eksperci wprowadzają pojęcie „harness” (uprząż) – klient nad modelem wpływa na obsługę pozytywnych i negatywnych stron współpracy z AI. Sprawia to, że niezależnie od narzędzia, wybór modelu nie gwarantuje identycznych efektów wszędzie – im bardziej natywne rozwiązanie względem dostawcy, tym lepsze rezultaty.
Context-Driven Development jako przyszłość
Prowadzący wprowadzają pojęcie Context Engineering lub Context-Driven Development – proces tworzenia i ulepszania instrukcji dla AI poprzez przekazywanie odpowiedniego kontekstu.
Marcin zauważa, że to umiejętność, którą trzeba sobie wyrobić. Podobnie jak uczenie się programowania trwało latami, tak też programowanie z AI wymaga nauki.
Od co-pilotów do agentów – ewolucja narzędzi: Wiele osób przyzwyczaiło się do „co-pilotów” – zadajemy pytanie, dostajemy odpowiedź, może agent wykona zmiany w jednym pliku. To już wydaje się proste, jednak kolejny krok to agenci, gdzie dużo więcej sprawczości przekazujemy AI.
Problem polega na tym, że bez odpowiedniej wiedzy będziemy bardziej niezadowoleni niż z systemów typu Copilot. Natomiast przy właściwym podejściu uzyskujemy znacznie lepsze efekty – wymaga to jednak więcej wiedzy i świadomości.
Kluczowe elementy obejmują wiedzę o modelach mentalnych i ograniczeniach modeli językowych, umiejętność pisania precyzyjnych poleceń, znajomość narzędzi oraz świadomość limitów zarządzania kontekstem. Najważniejsze jest świadome podejście zamiast przypadkowego promptowania oraz kontrola nad procesem.
Wnioski i rekomendacje
Eksperci podkreślają, że efektywne wykorzystanie Claude Code wymaga świadomego podejścia. To nie jest narzędzie typu „plug and play”, lecz potężny agent wymagający odpowiedniej konfiguracji i metodyki pracy.
Vibe-coding vs profesjonalne podejście: W branży panują skrajne opinie. Pesymiści twierdzą, że nic z tego nie będzie, podczas gdy „vibe coderzy” przekonują, że bez jakiejkolwiek wiedzy programistycznej już tworzą aplikacje gotowe na produkcję.
Eksperci z 10x Devs zajmują środkowe stanowisko: nieświadome korzystanie z AI przez wpisywanie prostych poleceń i liczenie na magię prowadzi jedynie do długu technicznego i braku możliwości rozwijania projektów.
GPT-5 vs Claude – różne filozofie: Społeczność określa GPT-5 jako „skalpel” – przytnie szybciej i dokładniej, ale wymaga precyzji w poleceniach, ponieważ bardzo dobrze słucha użytkownika ze wszystkimi konsekwencjami. Claude to „szwajcarski scyzoryk” – bardziej wyważony i wygładzający polecenia użytkownika.
Adam Gospodarczyk podsumowuje, że nasza rola polega na czytaniu zarówno wygenerowanej specyfikacji jak i kodu oraz kontrolowaniu i kierowaniu całym procesem.
Kluczowe prompty z webinaru
Na podstawie prezentowanych przykładów, oto najważniejsze polecenia do Claude Code z praktycznymi zastosowaniami:
Plan Mode i planowanie
Polecenie do przeglądu planu:
Zapisz ten plan, który przygotowałeś do pliku plan.md. Następnie przygotuj od razu review tego planu, znajdź luki, znajdź wszelkiego rodzaju overengineering i inne sposoby na to, jak możemy ten plan poprawić. I tutaj również zapisz to w plan_review.md.
Kiedy stosować: Po otrzymaniu pierwszego planu od Claude Code, ale przed implementacją. Pozwala wykryć nadmierną inżynierię i zbędną złożoność.
Polecenie do implementacji z ultra-thinking:
Zaimplementuj teraz ten plan i skorzystaj z use ultrathinking
Kiedy stosować: Do złożonych zadań wymagających wysokiej jakości kodu i dogłębnej analizy.
Strukturyzowane odpowiedzi JSON
Polecenie dla odpowiedzi JSON (według Adama Gospodarczyka):
Respond only with a valid JSON object in the following format: [struktura JSON]
Your entire response must be a single, valid JSON object. Do not include any text outside of the JSON structure, including backticks. DO NOT OUTPUT ANYTHING OTHER THAN VALID JSON.
Kiedy stosować: Gdy potrzebujesz strukturyzowanych danych do dalszego przetwarzania w aplikacji lub skryptach.
Kontekst systemowy
Polecenie z kontekstem systemowym (CLI):
claude -p "Wyjaśnij ten błąd" --append-system-prompt "Jesteś ekspertem debugowania. Zawsze podaj konkretne kroki naprawcze."
Kiedy stosować: Gdy chcesz nadać agentowi konkretną rolę przed wykonaniem zadania.
Meta-prompting (technika Adama z GPT-5)
Polecenie do tworzenia poleceń:
Napisz mi prompt do [opisz zadanie], który będzie precyzyjny i dostarczy najlepsze rezultaty
Kiedy stosować: Z modelami jak GPT-5, które wymagają bardzo precyzyjnych instrukcji. Agent sam przygotuje optymalne polecenie.
Niestandardowe komendy (przykład z webinaru)
Komenda „generate types from supabase”:
Wygeneruj TypeScript typy na podstawie schematu bazy danych Supabase.
Typy powinny być zgodne z domain-driven design i tworzyć czytelne
command modele. Zapisz w odpowiednich plikach w folderze types/.
Kiedy stosować: Do powtarzalnych zadań specyficznych dla projektu. Umieść w .cloud/commands/nazwa.md
.
Praca z dużymi projektami
Polecenie do analizy kontekstu:
# Przejście do konkretnego modułu
!cd src/module-name
# Dodanie kluczowych plików do kontekstu
@module-spec.md @main-component.tsx
Kiedy stosować: W dużych repozytoriach, gdzie trzeba ograniczyć kontekst do konkretnego modułu.
Kluczowy insight
Zestaw narzędzi przewyższa model
Standardowo myślimy: Najważniejszy jest wybór najlepszego modelu AI (GPT-5 vs Claude vs Gemini), więc porównujemy testy wydajnościowe i możliwości poszczególnych modeli językowych.
W praktyce okazuje się, że: Ten sam model (na przykład Sonnet 4) działa znacznie lepiej w Claude Code niż w GitHub Copilot przez różnice w zestawie narzędzi. Marcin wyjaśnia: to, jakie narzędzia są dostępniane i jak model radzi sobie z ich wykorzystywaniem, stanowi niewidoczną różnicę w porównaniach wydajnościowych.
Dlaczego to jest istotne: Zamiast gonić za najnowszymi modelami, warto skupić się na narzędziach które dają modelowi odpowiednią „uprząż”. Model to tylko jeden element – drugim jest dostęp do narzędzi i sposób ich wykorzystania.
Test na jutro: Następnym razem wybierając narzędzie AI, zamiast patrzeć tylko na dostępne modele, sprawdź jakie oferuje integracje, narzędzia i system uprawnień, potem przetestuj to samo polecenie w różnych środowiskach i porównaj efektywność.
Ten wpis stanowi część mojej kolekcji notatek z ciekawych podcastów, webinarów i innych treści, które uważam za wartościowe i do których sam chcę wracać. Oryginalne źródło znajdziesz w materiale webinaru „AI w terminalu – Claude Code Deep Dive” z serii 10x Devs.