Automatyczne pierwsze przejście
AI wykonuje wstępny przegląd łapiąc częste problemy, naruszenia stylu i potencjalne błędy
Przeglądy kodu są kluczowe dla utrzymania jakości, dzielenia się wiedzą i wczesnego wykrywania błędów. Ta lekcja pokazuje, jak możliwości AI Cursor rewolucjonizują proces przeglądu kodu, czyniąc go szybszym, bardziej gruntownym i edukacyjnym zarówno dla recenzentów jak i autorów.
Tradycyjne przeglądy kodu często cierpią z powodu zmęczenia recenzentów, niespójnych standardów i ograniczeń czasowych. AI Cursor transformuje to, zapewniając inteligentną analizę, automatyczne sprawdzenia i kontekstowe sugestie, które podnoszą cały proces przeglądu.
Automatyczne pierwsze przejście
AI wykonuje wstępny przegląd łapiąc częste problemy, naruszenia stylu i potencjalne błędy
Zrozumienie kontekstu
AI rozumie szerszy kontekst bazy kodu i wzorce architektoniczne
Asystent nauki
AI wyjaśnia złożone sekcje kodu i sugeruje ulepszenia z uzasadnieniem
Egzekutor spójności
AI automatycznie zapewnia przestrzeganie standardów zespołu i najlepszych praktyk
Przed przesłaniem kodu do przeglądu, użyj AI Cursor do przeprowadzenia gruntownego samo-przeglądu:
Analizuj zmiany holistycznie
# Poproś AI o przegląd twoich zmian@git "Przejrzyj moje staged zmiany pod kątem potencjalnych problemów,sugerując ulepszenia dla czytelności, wydajnościi łatwości utrzymania"
Sprawdź częste problemy
# Żądaj określonych sprawdzeń"Sprawdź moje zmiany pod kątem:- Luk bezpieczeństwa- Wąskich gardeł wydajności- Brakującej obsługi błędów- Niepełnego pokrycia testami"
Wygeneruj notatki do przeglądu
# Utwórz dokumentację przyjazną dla recenzentów"Wygeneruj podsumowanie moich zmian zawierające:- Jaki problem to rozwiązuje- Kluczowe decyzje architektoniczne- Obszary wymagające szczególnej uwagi- Potencjalne wpływy na inne systemy"
Napraw błąd autoryzacji użytkownika
- Zaktualizowano logikę logowania- Dodano obsługę błędów- Naprawiono odświeżanie tokenów
## Napraw race condition odświeżania tokenów autoryzacji
### ProblemUżytkownicy doświadczają sporadycznych wylogowań z powodurównoczesnych żądań odświeżania tokenów tworzących race conditions.
### RozwiązanieZaimplementowano odświeżanie tokenów oparte na mutex z:- Singleton refresh manager zapobiegający równoczesnym żądaniom- Graceful fallback dla awarii sieciowych- Wzmocnione raportowanie błędów do debugowania
### Testowanie- Testy jednostkowe dla scenariuszy race condition- Testy integracji z symulowanymi opóźnieniami sieciowymi- Testy manualne ze 100 równoczesnych sesji
### Wpływ- Rozwiązuje problem #1234 zgłoszony przez 15+ użytkowników- Brak breaking changes do istniejącego API- Wpływ na wydajność: poniżej 5ms dodanego opóźnienia
### Fokus przegląduProszę o szczególną uwagę na:- Implementację mutex w `TokenManager.refreshToken()`- Obsługę przypadków brzegowych w awariach sieciowych- Wsteczną kompatybilność z istniejącymi sesjami
Wstępna analiza AI
// Poproś AI o kompleksową analizę"Przeanalizuj ten PR pod kątem:1. Błędów logicznych i przypadków brzegowych2. Implikacji wydajności3. Luk bezpieczeństwa4. Spójności stylu kodu5. Adekwatności pokrycia testamiPodaj konkretne przykłady i sugestie"
Głębokie spojrzenie na złożone sekcje
// Dla złożonych algorytmów lub logiki biznesowej"Wyjaśnij algorytm tej funkcji krok po kroku,zidentyfikuj potencjalne przypadki brzegowe i zasugerujulepszenia dla przejrzystości i wydajności"
Przegląd architektury i projektu
// Oceniaj decyzje architektoniczne"Przejrzyj wzorce architektoniczne tego kodu.Czy przestrzega zasad SOLID?Czy są naruszenia wzorców projektowych?Zasugeruj alternatywne podejścia jeśli dotyczy"
Wygeneruj konstruktywną opinię
// Stwórz pomocne komentarze do przeglądu"Pomóż mi napisać konstruktywny komentarz do przeglądudla tej sekcji kodu wyjaśniający dlaczego obecnepodejście może powodować problemy i sugerująclepszą alternatywę z przykładowym kodem"
// Poproś AI o identyfikację wzorców i antywzorców"Przejrzyj ten kod pod kątem częstych antywzorców takich jak:- God objects- Tight coupling- Przedwczesna optymalizacja- Wycieki pamięci- Race conditionsPodaj konkretne przykłady z kodu"
// Prompt analizy bezpieczeństwa"Przeprowadź przegląd bezpieczeństwa tego kodu sprawdzając:- Luki SQL injection- Wektory ataków XSS- Obejścia autoryzacji- Ekspozycję wrażliwych danych- Błędne konfiguracje CORSOcenij każde znalezisko według dotkliwości"
// Analiza wydajności"Przeanalizuj ten kod pod kątem problemów wydajności:- Złożoność czasowa algorytmów- Wzorce użycia pamięci- Efektywność zapytań bazodanowych- Możliwości cache'owania- Optymalizacja operacji asyncZasugeruj konkretne ulepszenia z benchmarkami"
Podczas sesji przeglądu na żywo, użyj AI do:
Wyjaśnij kod
Natychmiast wyjaśnij złożone sekcje recenzentom
Sugeruj alternatywy
Generuj alternatywne implementacje na bieżąco
Odpowiadaj na pytania
Zapewniaj kontekst o decyzjach i zależnościach
Twórz przykłady
Generuj przykłady użycia i przypadki testowe
{ "mcpServers": { "slack": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-slack"], "env": { "SLACK_BOT_TOKEN": "xoxb-your-bot-token", "SLACK_TEAM_ID": "T01234567" } }, "linear": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-linear"], "env": { "LINEAR_API_KEY": "your-api-key" } }, "jira": { "command": "npx", "args": ["-y", "@atlassian/mcp-server-jira"], "env": { "JIRA_URL": "https://your-domain.atlassian.net", "JIRA_EMAIL": "your-email@company.com", "JIRA_API_TOKEN": "your-api-token" } }, "github": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-github"], "env": { "GITHUB_TOKEN": "your-github-token" } } }}
"Używając Slack MCP, powiadom kanał #code-reviews:- PR #123 gotowy do przeglądu- Tytuł: 'Napraw race condition autoryzacji'- Autor: @jan- Priorytet: Wysoki- Link: [URL PR]"
// AI automatycznie formatuje i wysyła wiadomość"Opublikuj podsumowanie przeglądu na #dev-team:- Znaleziono 3 krytyczne problemy- 5 sugestii do ulepszenia- Szacowany czas naprawy: 2 godziny"
"Używając Slack MCP, rozpocznij wątek na #architecture:'PR #123 proponuje zmianę wzorca auth.Plusy: Lepsze bezpieczeństwo, czystszy kodMinusy: Breaking change dla klientów APIProszę o przegląd i opinie'"
// Zbierz opinię zespołu"Podsumuj dyskusję Slack o PR #123z kanału #architecture"
// Twórz zadania z komentarzy przeglądu"Używając Jira MCP, utwórz zadanie:- Tytuł: 'Refaktoryzacja modułu autoryzacji'- Opis: 'Na podstawie komentarzy przeglądu PR #123'- Priorytet: Średni- Sprint: Bieżący- Przypisany: jan@firma.com- Etykiety: ['tech-debt', 'security']"
// Linkuj PR do istniejących problemów"Używając Linear MCP:- Znajdź problem 'AUTH-123'- Dodaj komentarz: 'PR #456 adresuje ten problem'- Zaktualizuj status na 'W przeglądzie'- Dodaj notatki recenzenta z naszej dyskusji"
// Kompleksowe zarządzanie PR"Używając GitHub MCP:1. Pobierz wszystkie komentarze przeglądu PR #1232. Utwórz problemy dla nierozwiązanych wątków3. Sprawdź status CI/CD4. Listuj konfliktujące PR5. Zasugeruj recenzentów na podstawie własności kodu"
// Automatyczne workflow przeglądów"Używając GitHub MCP, gdy PR zostanie zatwierdzony:- Dodaj etykietę 'approved'- Powiadom autora przez Slack MCP- Utwórz zadanie Linear do wdrożenia- Zaktualizuj tablicę projektu"
// Ułatwiaj dyskusje techniczne"Mając tę debatę o użyciu wzorca Strategy vsFactory dla tego przypadku użycia, podaj:1. Plusy i minusy każdego podejścia2. Przykłady kodu obu implementacji3. Rekomendacja oparta na naszych wymaganiach4. Implikacje długoterminowej utrzymywalności"
Przypisywanie recenzentów
Użyj GitHub MCP do auto-przypisywania recenzentów opartego na ekspertyzie
Aktualizacje statusu
Aktualizuj tickety Linear/Jira w miarę postępu przeglądu
Powiadomienia zespołu
Wysyłaj ukierunkowane wiadomości Slack dla pilnych przeglądów
Metryki przeglądów
Śledź czasy obrotu przeglądów w narzędziach
// Orkiestracja kompletnego workflow przeglądu"Koordynuj przegląd tego PR w naszych narzędziach:
1. Używając GitHub MCP: - Przypisz recenzentów na podstawie CODEOWNERS - Dodaj etykiety na podstawie zmienionych plików - Sprawdź konflikty merge
2. Używając Linear MCP: - Znajdź powiązane zadania - Zaktualizuj status zadania na 'W przeglądzie' - Dodaj link PR do opisu zadania
3. Używając Slack MCP: - Powiadom przypisanych recenzentów - Opublikuj na kanale zespołu jeśli wysoki priorytet - Ustaw przypomnienie na 24 godziny
4. Po ukończeniu przeglądu: - Zaktualizuj wszystkie systemy śledzące - Powiadom autora o wymaganych zmianach - Zaplanuj follow-up jeśli potrzeba"
// Pojedyncze polecenie orkiestruje wszystko"Nowy PR #123 przesłany. Używając MCP:- Przeanalizuj zmiany kodu- Przypisz odpowiednich recenzentów- Utwórz tickety śledzące- Wyślij powiadomienia- Ustaw spotkanie przeglądu jeśli potrzeba"
// Czas: 30 sekund// Ręczne kroki: 0// Przełączenia kontekstu: 0
// Ręczny proces wymaga wielu narzędzi1. Otwórz GitHub, przypisz recenzentów2. Otwórz Jira, utwórz zadanie przeglądu3. Otwórz Slack, powiadom zespół4. Kopiuj szczegóły PR między narzędziami5. Ustaw ręczne przypomnienia6. Aktualizuj status w każdym narzędziu
// Czas: 15-20 minut// Ręczne kroki: 15+// Przełączenia kontekstu: 6+
Twórz zasady przeglądu napędzane przez AI specyficzne dla twojego zespołu:
## Standardy przeglądu kodu
### Wydajność- Wszystkie zapytania do bazy danych muszą używać indeksów- Kolekcje ponad 1000 elementów potrzebują paginacji- Operacje async wymagają odpowiedniego anulowania
### Bezpieczeństwo- Dane wejściowe użytkownika muszą być walidowane i sanityzowane- Endpointy API potrzebują sprawdzeń autoryzacji- Wrażliwe dane muszą być szyfrowane w spoczynku
### Testowanie- Nowe funkcje wymagają testów jednostkowych (>80% pokrycia)- Zmiany API potrzebują testów integracji- Poprawki błędów muszą zawierać testy regresji
### Dokumentacja- Metody publiczne potrzebują komentarzy JSDoc- Złożone algorytmy wymagają wyjaśnień- Zmiany API potrzebują aktualizacji README
// Przegląd specyficzny dla frontend"Przejrzyj ten komponent React pod kątem:□ Poprawne użycie hooks i zależności□ Możliwości memoizacji□ Zgodność z dostępnością (WCAG 2.1)□ Implementacja responsive design□ Efektywność zarządzania stanem□ Możliwość ponownego użycia komponentu□ Definicje PropTypes/TypeScript□ Pokrycie error boundary"
// Przegląd specyficzny dla backend"Przejrzyj ten endpoint API pod kątem:□ Kompletność walidacji danych wejściowych□ Obsługa błędów i kody statusu□ Bezpieczeństwo transakcji bazodanowych□ Implementacja rate limiting□ Autoryzacja i uwierzytelnianie□ Haki logowania i monitorowania□ Dokładność dokumentacji API□ Wydajność pod obciążeniem"
// Przegląd specyficzny dla bazy danych"Przejrzyj ten schemat/zapytanie bazy danych pod kątem:□ Optymalizacja indeksów□ Wydajność zapytań (plan explain)□ Ograniczenia integralności danych□ Bezpieczeństwo migracji (wstecz kompatybilne)□ Efektywność poolingu połączeń□ Poziomy izolacji transakcji□ Wpływ na backup i recovery□ Rozważania skalowania"
Po ukończeniu przeglądu, użyj AI do:
Podsumuj wymagane zmiany
"Na podstawie komentarzy przeglądu, utwórz priorytetowąlistę wymaganych zmian z:- Krytyczne poprawki (blokujące)- Ważne ulepszenia (powinny zostać naprawione)- Nice-to-have ulepszenia (mogą zostać naprawione)Uwzględnij szacowania czasu dla każdego"
Wygeneruj plan implementacji
"Utwórz krok-po-kroku plan adresowania wszystkichopinii przeglądu, uwzględniając:- Kolejność implementacji- Potencjalne konflikty między zmianami- Strategię testowania dla każdej poprawki- Ocenę ryzyka"
Twórz zadania follow-up
"Na podstawie tego przeglądu, jakie zadania follow-uppowinny zostać utworzone dla:- Zidentyfikowanego długu technicznego- Sugerowanych optymalizacji wydajności- Odnotowanych możliwości refaktoryzacji- Znalezionych luk w dokumentacji"
Bądź konkretny
Podawaj kontekst i konkretne wymagania w promptach AI
Weryfikuj sugestie
Zawsze waliduj sugestie AI względem twojego konkretnego przypadku użycia
Zachowaj ludzki dotyk
Używaj AI do wzmocnienia, nie zastąpienia ludzkiego osądu i empatii
Ucz się ciągle
Używaj wyjaśnień AI do poprawy wiedzy i umiejętności zespołu
Centralizuj komunikację
Użyj MCP do utrzymania wszystkich dyskusji przeglądu w jednym miejscu
Automatyzuj rutynowe zadania
Pozwól MCP obsługiwać powiadomienia i aktualizacje statusu
Śledź wszystko
Użyj MCP do utrzymania ścieżek audytu w narzędziach
Redukuj przełączanie kontekstu
Pozostań w Cursor zarządzając workflow zespołowych
Śledź wpływ przeglądów wzmocnionych przez AI:
// Wygeneruj metryki przeglądu"Przeanalizuj nasze ostatnie 50 PR i podaj metryki dotyczące:- Średni czas obrotu przeglądu- Liczba problemów wykrytych w przeglądzie- Wskaźnik błędów po wdrożeniu- Trendy jakości kodu- Najczęstsze tematy opinii przegląduZasugeruj ulepszenia procesów na podstawie wzorców"
Wypróbuj to ćwiczenie praktyczne do praktykowania przeglądu wzmocnionego przez AI:
Wybierz ostatni PR Wybierz zmergowany PR z historii twojego projektu
Przeprowadź przegląd AI Użyj technik z tej lekcji do gruntownego przeglądu
Porównaj z oryginałem Porównaj swoje odkrycia wsparte przez AI z oryginalnymi komentarzami przeglądu
Zidentyfikuj luki Zanotuj co AI wykryło czego przegapili ludzie i na odwrót
Doprecyzuj proces Utwórz niestandardowe prompty dla konkretnych potrzeb twojego zespołu
Programowanie w parach
Naucz się używać AI jako aktywnego partnera programistycznego
Rozwój mobilny
Zastosuj wsparcie AI do rozwoju aplikacji mobilnych
Projektowanie architektury
Użyj AI do architektury systemów i decyzji projektowych