Opanuj sztukę inicjalizacji projektów z Claude Code. Ten przewodnik obejmuje tworzenie skutecznych plików CLAUDE.md, zarządzanie pamięcią projektu, konfigurację serwerów MCP oraz ustanawianie przejrzystego kontekstu dla rozwoju wspomaganego przez AI.
Co wyróżnia Claude Code
W przeciwieństwie do tradycyjnych narzędzi do kodowania, Claude Code utrzymuje trwałą pamięć między sesjami poprzez pliki CLAUDE.md. Traktuj je jako DNA swojego projektu - mówią Claude wszystko, co musi wiedzieć o twojej bazie kodu, standardach i przepływach pracy.
Kluczowe korzyści:
Zero powtórzeń - dokumentuj raz, używaj zawsze
Spójność zespołu - dziel się wiedzą między programistami
Świadomość kontekstu - Claude rozumie twój projekt dogłębnie
Ewoluująca pamięć - aktualizuj w miarę rozwoju projektu
Claude Code używa zaawansowanej hierarchii pamięci, która ładuje kontekst na podstawie twojego katalogu roboczego:
Lokalizacja : ./CLAUDE.md
Wspólna baza wiedzy twojego zespołu. Dodaj to do Git, aby wszyscy pracowali z tym samym kontekstem.
# Projekt: Platforma e-commerce
- Next.js 15 z App Router
- Baza danych Turso z Drizzle ORM
- Clerk do uwierzytelniania
- `pnpm dev` - Uruchom serwer deweloperski
- `pnpm test` - Uruchom zestaw testów
- `pnpm db:push` - Wypchnij zmiany schematu
- Używaj trybu strict TypeScript
- Preferuj eksporty nazwane
- Podążaj za wzorcami React Server Components
- WAŻNE: Nigdy nie importuj kodu klienta w komponentach serwera
Lokalizacja : ~/.claude/CLAUDE.md
Twoje osobiste preferencje, które stosują się do wszystkich projektów.
# Osobiste preferencje deweloperskie
- Preferuj wczesne returny zamiast zagnieżdżonych if
- Używaj opisowych nazw zmiennych (bez pojedynczych liter)
- Komentuj skomplikowaną logikę inline
- Zawsze pisz testy dla nowych funkcji
- Commituj często z konwencjonalnymi commitami
- Przeglądaj wygenerowany kod linijka po linijce
Lokalizacja : ./frontend/CLAUDE.md
, ./backend/CLAUDE.md
Wytyczne specyficzne dla kontekstu dla różnych części twojego monorepo.
- Używaj komponentów shadcn/ui jako bazy
- Podążaj za zasadami Atomic Design
- Komponenty muszą być dostępne (WCAG 2.1 AA)
- Stan serwera: TanStack Query
- Stan formularzy: React Hook Form + Zod
Claude rozpoczyna w twoim bieżącym katalogu roboczym
Przeszukuje rekursywnie w górę do (ale nie włączając) root /
Ładuje wszystkie znalezione pliki CLAUDE.md
i CLAUDE.local.md
Odkrywa zagnieżdżone pliki CLAUDE.md w podkatalogach na żądanie
Scala wszystkie pamięci z właściwą precedencją (lokalny → projekt → użytkownik)
Wskazówka
Claude automatycznie odkrywa pliki CLAUDE.md w podkatalogach, gdy pracujesz z plikami w tych katalogach. Oznacza to, że nie musisz ładować wszystkiego z góry - Claude pobiera kontekst w miarę potrzeb.
Najszybszy sposób na bootstrap kontekstu twojego projektu:
To polecenie analizuje twój projekt i generuje kompleksowy plik CLAUDE.md. Oto co zazwyczaj zawiera:
Automatycznie wykryty typ i struktura projektu
- Framework: Next.js 15.0.3
- Baza danych: PostgreSQL z Prisma
- Testowanie: Jest + React Testing Library
- `/src` - Kod źródłowy aplikacji
- `/src/components` - Komponenty React
- `/src/app` - Strony Next.js app router
- `/src/lib` - Funkcje pomocnicze i współdzielony kod
- `/tests` - Pliki testów
- `npm run dev` - Uruchom serwer deweloperski na porcie 3000
- `npm run build` - Zbuduj dla produkcji
- `npm run test` - Uruchom zestaw testów
- `npm run lint` - Uruchom ESLint
Wymagane zmienne wykryte w .env.example:
- DATABASE_URL - String połączenia PostgreSQL
- NEXT_PUBLIC_API_URL - Endpoint API
- Gałęzie funkcji: feature/*
- Styl commitów: Conventional Commits
- Używanie trybu strict TypeScript
- Tailwind CSS do stylowania
- Server Components domyślnie
Po uruchomieniu /init
, udoskonal wygenerowany plik:
Dodaj konwencje zespołu niewykryte automatycznie
Udokumentuj decyzje architektoniczne i ich uzasadnienie
Uwzględnij typowe pułapki specyficzne dla twojego projektu
Dodaj często używane polecenia z wyjaśnieniami
Określ wzorce kodowania , których chcesz, aby Claude przestrzegał
Najszybszy sposób na dodawanie pamięci podczas rozwoju:
# Zawsze używaj Radix UI do dropdownów, nie natywnych elementów select
Claude zapyta cię o wybór miejsca zapisania tej pamięci:
Gdzie powinna zostać zapisana ta pamięć?
> 1. Pamięć projektu ( ./CLAUDE.md )
2. Moduł frontend (./frontend/CLAUDE.md)
3. Pamięć użytkownika (~/.claude/CLAUDE.md)
4. Lokalna pamięć projektu (./CLAUDE.local.md)
Dla skomplikowanych projektów używaj importów, aby utrzymać pamięć modularną:
# Główna konfiguracja projektu
Zobacz @README.md dla przeglądu projektu
Przejrzyj @docs/ARCHITECTURE.md dla projektu systemu
## Wytyczne specyficzne dla modułów
- Frontend: @frontend/STYLE_GUIDE.md
- Backend: @backend/API_CONVENTIONS.md
- Baza danych: @docs/database/SCHEMA_DESIGN.md
- @~/.claude/my-project-preferences.md
Importy obsługują:
Ścieżki względne: @./docs/guide.md
Ścieżki bezwzględne: @/home/user/standards.md
Katalog domowy: @~/documents/notes.md
Importy rekursywne (maks. głębokość: 5)
Skonfiguruj zachowanie Claude dla twojego projektu:
"model" : " claude-opus-4 " ,
"command" : " pnpm prettier --write \" $CLAUDE_FILE_PATHS \" "
Skonfiguruj serwery Model Context Protocol dla rozszerzonych możliwości:
Utwórz .mcp.json
w katalogu głównym projektu (dzielony przez Git):
"args" : [ " -y " , " @modelcontextprotocol/server-filesystem " , " ./ " ]
"args" : [ " -y " , " @modelcontextprotocol/server-github " ],
"GITHUB_TOKEN" : " ${GITHUB_TOKEN} "
"args" : [ " -y " , " @modelcontextprotocol/server-postgres " ],
"CONNECTION_STRING" : " ${DATABASE_URL} "
Dodaj serwery MCP interaktywnie:
# Dodaj integrację GitHub
claude mcp add github --transport stdio \
npx -y @modelcontextprotocol/server-github \
-e GITHUB_TOKEN= $GITHUB_TOKEN
# Dodaj dostęp do bazy danych
claude mcp add postgres --transport stdio \
npx -y @modelcontextprotocol/server-postgres \
-e CONNECTION_STRING= $DATABASE_URL
# Dodaj automatyzację przeglądarki
claude mcp add puppeteer --transport stdio \
npx -y @modelcontextprotocol/server-puppeteer
Dla narzędzi osobistych dostępnych we wszystkich projektach:
# Dodaj do konfiguracji użytkownika
claude mcp add -s user context7 \
Dla monorepo lub architektur wielu usług:
Uruchom Claude w katalogu głównym
cd ~/projects/my-monorepo
Dodaj dodatkowe katalogi
> /add-dir ../design-system
Lub użyj flag CLI
claude --add-dir ../backend ../frontend ../shared
Ustaw na stałe
claude config add addDirs " ../backend,../frontend "
Organizacja monorepo
├── CLAUDE.md # Ogólny kontekst projektu
├── .mcp.json # Wspólne serwery MCP
│ ├── CLAUDE.md # Zasady specyficzne dla frontend
│ ├── CLAUDE.md # Wzorce backend
├── CLAUDE.md # Kontekst wspólnej biblioteki
Uruchamiaj Claude z project-root/
ze wszystkimi podkatalogami dostępnymi.
Przechowuj przepływy pracy wielokrotnego użytku jako polecenia slash:
# Utwórz nową funkcję zgodnie z naszą architekturą
Proszę utwórz nową funkcję o nazwie: $ARGUMENTS
1. Utwórz folder funkcji w src/features/$ARGUMENTS
2. Skonfiguruj standardową strukturę:
- index.ts (publiczne eksporty)
- types.ts (interfejsy TypeScript)
- $ARGUMENTS.tsx (główny komponent)
- $ARGUMENTS.test.tsx (testy)
- $ARGUMENTS.stories.tsx (Storybook)
3. Dodaj funkcję do głównych eksportów
4. Utwórz początkowe testy ze 100% pokryciem
5. Dodaj do konfiguracji flag funkcji
Używaj naszych standardowych wzorców:
- Wzorzec Container/Presenter
- Niestandardowe hooki dla logiki
- Styled components do stylowania
- React Query do pobierania danych
Użycie: /project:new-feature user-profile
├── new-feature.md # /project:new-feature
│ └── endpoint.md # /project:api:endpoint
│ ├── migration.md # /project:db:migration
│ └── seed.md # /project:db:seed
└── e2e.md # /project:test:e2e
Oto jak senior developer konfiguruje nowy projekt Next.js:
Zainicjalizuj projekt
Udoskonal wygenerowany CLAUDE.md
> Edytuj CLAUDE.md i dodaj specyficzne konwencje naszego zespołu
Skonfiguruj serwery MCP
> /mcp add github --transport sse https://github.com/api/mcp
> /mcp add postgres --transport stdio npx @modelcontextprotocol/server-postgres
Skonfiguruj konfigurację projektu
> Utwórz .claude/settings.json z naszymi preferowanymi narzędziami i hookami
Dodaj polecenia niestandardowe
> Utwórz .claude/commands/new-component.md dla naszego generatora komponentów
> Utwórz .claude/commands/deploy.md dla przepływu pracy wdrożenia
Skonfiguruj dostęp do wielu katalogów
> /add-dir ../design-system
> /add-dir ../shared-types
Przetestuj konfigurację
> Utwórz nową funkcję uwierzytelniania użytkownika zgodnie z naszymi wzorcami
Złote zasady dla plików CLAUDE.md
Bądź konkretny a nie ogólny - “Używaj Zod do walidacji” a nie “waliduj dane wejściowe”
Uwzględnij przykłady - Pokaż Claude dokładnie, czego chcesz
Udokumentuj dlaczego - Wyjaśnij uzasadnienie za konwencjami
Aktualizuj regularnie - Używaj #
do dodawania nauk podczas kodowania
Przeglądaj okresowo - Czyść przestarzałe informacje co miesiąc
Testuj skuteczność - Poproś Claude o wyjaśnienie twoich konwencji z powrotem
❌ Zbyt ogólne : “Pisz dobry kod”
✅ Konkretne : “Używaj wczesnych returnów, maks. 3 poziomy zagnieżdżeń, wyodrębniaj skomplikowane warunki”
❌ Brak kontekstu : “Używaj naszego stylu API”
✅ Z kontekstem : “Podążaj za konwencjami REST: GET /api/users, POST /api/users, używaj kebab-case”
❌ Przestarzałe info : “Używamy komponentów klas React 16”
✅ Obecnie : “React 19 z Server Components, używaj tylko komponentów funkcji”
Objaw : Claude nie wydaje się świadomy zawartości twojego CLAUDE.md
Rozwiązania :
Sprawdź lokalizację pliku - musi być w katalogu głównym projektu lub katalogach nadrzędnych
Zweryfikuj nazwę pliku - dokładnie CLAUDE.md
(rozróżnia wielkość liter na Linux/Mac)
Uruchom /memory
aby zobaczyć, co jest załadowane
Zrestartuj Claude Code po dodaniu nowych plików pamięci
Objaw : Serwery MCP pokazują się jako rozłączone
Rozwiązania :
Uruchom z flagą debug: claude --mcp-debug
Sprawdź, czy URL/ścieżka serwera jest poprawna
Zweryfikuj, czy tokeny uwierzytelniania są ustawione
Przetestuj serwer ręcznie: npx @modelcontextprotocol/server-name
Sprawdź ustawienia firewall/proxy
Objaw : Claude podąża za starymi wzorcami pomimo aktualizacji
Rozwiązania :
Użyj /clear
do zresetowania kontekstu rozmowy
Dodaj “WAŻNE:” lub “MUSISZ” dla krytycznych zasad
Sprawdź precedencję - lokalny nadpisuje projekt nadpisuje użytkownika
Usuń sprzeczne instrukcje z katalogów nadrzędnych
Teraz, gdy twój projekt jest zainicjalizowany z bogatym kontekstem:
Przepływ PRD Naucz się tworzyć kompleksowe wymagania z Claude
Konfiguracja MCP Skonfiguruj zaawansowane serwery MCP dla twojego przepływu pracy
Pamiętaj: Świetny kontekst prowadzi do świetnego kodu. Zainwestuj czas w swoje pliki CLAUDE.md i obserwuj, jak twoja produktywność wzleci!