Przejdź do głównej zawartości

Zarządzanie kontekstem i rozwój

Zarządzanie kontekstem to sekret uzyskiwania świetnych rezultatów z Cursor. Ten 15-minutowy przewodnik nauczy cię władać symbolami @ jak profesjonalista, sprawnie zarządzać dużymi bazami kodu i rozwijać funkcje z chirurgiczną precyzją.

Limity tokenów

Standardowy: 128k tokenów (~10,000 linii) Tryb Max: do 1M tokenów (~80,000 linii)

Inteligentny wybór

Więcej kontekstu nie zawsze znaczy lepiej - skupiony, istotny kontekst daje lepsze rezultaty

Wpływ kosztów

Każdy token kosztuje - efektywne zarządzanie kontekstem oszczędza znaczny budżet

Wydajność

Mniejszy, skupiony kontekst = szybsze odpowiedzi i lepsza precyzja

SymbolCelNajlepiej używać do
@FilesOdwołanie do konkretnych plikówSzczegóły implementacji, naprawy błędów
@FoldersDołączenie całych katalogówRozwój funkcji, refaktoryzacja
@CodeSemantyczne wyszukiwanie koduZnajdowanie implementacji, zrozumienie przepływu
@DocsDostęp do dokumentacjiNauka bibliotek, sprawdzanie API
@WebWyszukiwanie zasobów onlineNajnowsze aktualizacje, rozwiązania
@DefinitionsZnajdowanie definicji symboliZrozumienie struktury kodu
@GitKontekst kontroli wersjiHistoria, zmiany, blame
@Recent-changesNajnowsze modyfikacjeKontynuacja pracy, debugowanie
@Linter-errorsObecne błędyNaprawianie problemów, poprawa jakości
# Pojedynczy plik
@auth.service.ts
# Wiele plików
@auth.service.ts @auth.controller.ts @auth.module.ts
# Ze ścieżką
@src/services/auth.service.ts

Kiedy używać @Folders

Używaj do zmian w całej funkcji, zrozumienia struktury modułów lub refaktoryzacji całych komponentów.

  1. Rozwój funkcji:

    "Implementuj uwierzytelnianie użytkownika używając @src/auth/"
  2. Zrozumienie modułu:

    "Wyjaśnij jak działa system płatności @src/payments/"
  3. Refaktoryzacja:

    "Refaktoryzuj aby używać dependency injection @src/services/"

Najpotężniejszy symbol @ do zrozumienia baz kodu:

# Znajdź gdzie funkcja jest implementowana
@Code "implementacja validateUser"
# Lokalizuj wzorce użycia
@Code "gdzie używany jest cache Redis"
# Zrozum przepływ danych
@Code "jak dane użytkownika przepływają przez system"

Indeksowana dokumentacja

Uzyskaj natychmiastowy dostęp do dokumentacji swojego projektu

Zewnętrzna dokumentacja

W połączeniu z serwerami MCP jak Context7 dla dokumentacji bibliotek

Wzorce użycia:

# Dokumentacja projektu
@Docs "uwierzytelnianie API"
# Z Context7 MCP
"Jak używać webhooków Stripe? @Docs z context7"
# Decyzje architektoniczne
@Docs "projekt schematu bazy danych"
# Ostatnie zmiany
@Git "zmiany w ostatnim tygodniu"
# Historia funkcji
@Git "commity związane z uwierzytelnianiem"
# Wprowadzenie błędu
@Git "kiedy ten błąd został wprowadzony"
  1. Zacznij szeroko:

    "Wyjaśnij obecny system użytkowników @src/users/"
  2. Zbliż się:

    "Skup się na tworzeniu użytkowników @user.service.ts @user.dto.ts"
  3. Powiązany kontekst:

    "Pokaż podobne wzorce @Code 'tworzenie encji'"
  4. Implementacja:

    "Implementuj preferencje użytkownika z @user.model.ts @preferences.dto.ts"

Stos kontekstu debugowania

Warstwy kontekstu od konkretnego do ogólnego dla skutecznego debugowania.

# Warstwa 1: Lokalizacja błędu
@src/api/users/users.controller.ts
@Linter-errors
# Warstwa 2: Powiązane pliki
@src/api/users/users.service.ts
@src/api/users/dto/
# Warstwa 3: Ostatnie zmiany
@Recent-changes
@Git "ostatnie zmiany w module users"
# Warstwa 4: Zrozumienie systemu
@Code "przepływ danych użytkownika"

Użyj trybu Ask z szerokim kontekstem:

"Przeanalizuj wpływ zmiany naszego ORM
@src/models/ @src/repositories/ @Code 'zapytania bazy danych'"

Buduj kontekst stopniowo dla złożonych zadań:

# Warstwa bazowa
@auth.service.ts
# Dodaj testy
@auth.service.ts @auth.service.spec.ts
# Dodaj zależności
@auth.service.ts @auth.service.spec.ts @jwt.service.ts
# Dodaj konfigurację
@auth.service.ts @auth.service.spec.ts @jwt.service.ts @config/auth.config.ts

Twórz wzorce kontekstu do ponownego użycia:

# Szablon kontekstu funkcji
@src/features/[feature]/
@src/features/[feature]/dto/
@src/features/[feature]/tests/
@Code "implementacja [feature]"
@Docs "wymagania [feature]"

Przełączanie kontekstu

Użyj skrótów klawiszowych do szybkiego dostosowania kontekstu bez przerywania przepływu.

AkcjaSkrótKiedy używać
Dodaj plik@ następnie nazwa plikuPotrzebujesz konkretnego pliku
Usuń z kontekstuKliknij ✕ na pigułceZa dużo kontekstu
Wyczyść cały kontekst/Reset ContextZaczynasz od nowa
Dodaj otwarte pliki/Add Open FilesPracujesz z wieloma plikami
  1. Włącz inteligentne indeksowanie:

    • Ustawienia → Indeksowanie i dokumentacja
    • Włącz “Dołącz strukturę projektu”
    • Ustaw odpowiednie wzorce ignorowania
  2. Optymalizuj .gitignore:

    # Ignorowania specyficzne dla Cursor
    node_modules/
    dist/
    build/
    *.log
    .env*
    coverage/
  3. Użyj .cursorignore:

    # Dodatkowe ignorowania tylko dla Cursor
    test-data/
    migrations/data/
    docs/legacy/

Dziel duże zadania

Rozbijaj na mniejsze, skupione operacje

Progresywny kontekst

Zacznij minimalne, dodawaj kontekst według potrzeb

Regularnie czyść

Resetuj kontekst między głównymi zadaniami

Używaj konkretnych ścieżek

Pełne ścieżki są szybsze niż wyszukiwanie rozmyte

❌ ŹLE: @src/ "Napraw błąd uwierzytelniania"
✅ DOBRZE: @src/auth/auth.service.ts @logs/auth-error.log
"Napraw błąd wygaśnięcia JWT w linii 47"
Krok 1: Zrozum istniejące wzorce
@Code "implementacje endpointów POST" @src/api/
Krok 2: Skup się na konkretnym module
@src/api/products/ @src/api/products/dto/
Krok 3: Implementacja z przykładami
"Utwórz endpoint POST /api/products/review"
@src/api/products/products.controller.ts
@src/api/products/products.service.ts
@src/api/products/dto/create-review.dto.ts
Krok 4: Testowanie
@src/api/products/products.controller.spec.ts
"Dodaj testy dla endpointu review"
Krok 1: Zidentifikuj wolne obszary
@Code "zapytania bazy danych" @logs/performance.log
Krok 2: Skup się na wąskim gardle
@src/services/report.service.ts
@Code "funkcje wywołujące generateReport"
Krok 3: Optymalizacja
@src/services/report.service.ts @src/db/queries/
"Optymalizuj generowanie raportów używając zapytań batch"
  1. Tokeny na zadanie - dąż do < 50k tokenów
  2. Przełączenia kontekstu - mniej znaczy lepiej
  3. Precyzja AI - powinna się poprawić z lepszym kontekstem
  4. Czas do rozwiązania - szybszy z optymalnym kontekstem

Kontynuuj do pierwszej funkcji

Teraz połóżmy wszystkie twoje umiejętności razem i zbudujmy twoją pierwszą funkcję wspomaganą przez AI.

Pierwsza funkcja →

Czas: 15 minut