Tryby agenta w Cursorze: kiedy planować, pytać, budować i debugować
ENTryby agenta w Cursorze określają, co agent może zmienić w rozmowie. Plan Mode bada kod i przygotowuje plan do przeglądu przed zmianą plików; Agent mode edytuje pliki i uruchamia polecenia. Cursor ma też tryb Ask tylko do odczytu i tryb Debug do błędów wymagających dowodów z działania programu (sprawdzone 2026-10-12). Właściwy tryb zależy od tego, jak dobrze opisano zadanie.
Ta strona jest dla programistów, którzy codziennie pracują z agentem Cursora, oraz dla tech leadów, którzy chcą, żeby cały zespół korzystał z trybów tak samo. Sytuacja, którą rozwiązuje: zgłoszenie wymaga zmian w endpoincie API, trzech komponentach React, migracji i testach. Wpisujesz je w Agent mode i po 90 sekundach dostajesz diff w 14 plikach, z których kilka idzie w złą stronę. Model nie zawiódł. Kazano mu budować, zanim ktokolwiek, łącznie z tobą, znał kształt zmiany.
Co zyskujesz dzięki trybom Cursora
Dział zatytułowany „Co zyskujesz dzięki trybom Cursora”- Tabelę decyzyjną, która przypisuje zadanie do trybu, mówi, co ten tryb może zmienić, i jaki dowód go kończy
- Cztery prompty do skopiowania: plan z kryteriami akceptacji i listą plików, analiza wpływu tylko do odczytu, zawężony krok budowy oraz debugowanie zaczynające się od dowodów
- Kontrolę zakresu planu: jedno polecenie
git, które pokazuje każdy plik zmieniony przez agenta poza zatwierdzonym planem - Trzy wzorce przełączania trybów i sygnał, że czas przełączyć
- Sposoby wyjścia z pięciu typowych błędów w doborze trybu
Który tryb Cursora pasuje do zadania?
Dział zatytułowany „Który tryb Cursora pasuje do zadania?”Tryb to uprawnienie do zapisu, a nie osobowość agenta. Pytanie nie brzmi „który tryb jest najmądrzejszy?”, tylko „czy agent może już zmieniać pliki?”.
| Twoja sytuacja | Tryb | Co agent może zmienić | Kiedy wyjść z trybu |
|---|---|---|---|
| Zmiana obejmuje kilka plików albo nie potrafisz teraz spisać jej kryteriów akceptacji | Plan Mode | Nic w kodzie; powstaje plan | Zatwierdziłeś plan, który wymienia każdy plik i test dla każdego kryterium |
| Musisz zrozumieć kod, prześledzić przepływ albo oszacować zmianę | Tryb Ask | Nic; tryb Ask jest tylko do odczytu | Potrafisz opisać zmianę jednym zdaniem i wymienić pliki |
| Wiesz dokładnie, co zbudować i jak to sprawdzić | Agent mode | Pliki i polecenia terminala w granicach twojego trybu uruchamiania | Polecenie weryfikujące przechodzi, a diff mieści się w planie |
| Błąd się odtwarza, ale lektura kodu go nie wyjaśnia | Debug Mode albo Agent mode ograniczony do testów i logowania | Tylko instrumentacja i testy, dopóki przyczyna nie jest udowodniona | Linia logu albo padający test potwierdza jedną hipotezę |
Z tabeli wynikają dwie rzeczy. Po pierwsze, Agent mode jest właściwym domyślnym wyborem tylko dla zadań, które już są wyspecyfikowane. Po drugie, tryby planowania i badania dają artefakt, który da się sprawdzić (plan, listę dotkniętych plików), a jego przegląd kosztuje dużo mniej niż przegląd diffu w 14 plikach.
Zaplanuj zmianę w Plan Mode
Dział zatytułowany „Zaplanuj zmianę w Plan Mode”Plan Mode, jak pisze Cursor, „creates detailed implementation plans before writing any code” („tworzy szczegółowe plany implementacji, zanim powstanie jakikolwiek kod”; strona Cursora o Plan Mode, zweryfikowana 28 sierpnia 2026). Agent czyta kod i zwraca plan, zanim cokolwiek powstanie; poniższy prompt dodatkowo każe mu najpierw zadać ci otwarte pytania.
- Zacommituj albo odłóż (
git stash) swoją pracę, żebygit diffpokazywał później tylko zmiany agenta. - Otwórz nowy czat i przełącz selektor trybów na Plan Mode. Wklej poniższy prompt z treścią zgłoszenia.
- Odpowiedz na pytania agenta. Pytanie, na które nie znasz odpowiedzi, to luka w zgłoszeniu, więc zanieś je do właściciela zgłoszenia, zamiast pozwolić agentowi zgadywać.
- Proś o poprawki, aż każde kryterium akceptacji będzie miało test, a każdy plik, którego dotknie zmiana, będzie na liście. Każ agentowi usunąć kroki, których nie chcesz.
- Przed pierwszą edycją poproś agenta o zapisanie zatwierdzonego planu i listy plików w repozytorium, żeby kroki budowy i kontrola zakresu miały na co wskazywać. Zacommituj zapisany plan, a potem zapamiętaj bazę do porównań poleceniem
PLAN_BASE=$(git rev-parse HEAD). Uruchom teżecho "$PLAN_BASE" > docs/plans/rate-limit.base, żeby wartość przetrwała otwarcie nowego terminala.
Przeglądaj plan, a nie kod, który jeszcze nie istnieje. Plan jest gotowy, gdy przechodzi cztery kontrole: każde kryterium ma nazwany test; lista plików nie zawiera niczego, czego się nie spodziewasz; lista „poza zakresem” mówi, co inaczej musiałbyś odrzucić w code review; żaden krok nie zależy od biblioteki ani funkcji pomocniczej, której agent nie pokazał ci w kodzie. Poprawka planu, który nie przechodzi którejś z kontroli, kosztuje teraz jedną wiadomość, a później revert.
Ten sam pomysł istnieje w pokrewnych narzędziach: Claude Code startuje w trybie planowania z --permission-mode plan (sprawdzone w claude --help, v2.1.283), a Codex ma /plan. Zobacz planowanie funkcji w Claude Code i planowanie w Codeksie. Wersję kontraktu planu niezależną od narzędzia opisuje etap budowy w cyklu życia.
Zbadaj kod bez edycji, zanim zaczniesz budować
Dział zatytułowany „Zbadaj kod bez edycji, zanim zaczniesz budować”Niektóre zadania nie są gotowe na plan, bo nie znasz jeszcze zasięgu zmiany. Zrób przebieg tylko do odczytu: w trybie Ask albo w Plan Mode z wyraźnym zakazem edycji. Chcesz dostać listę, którą da się sprawdzić, a nie esej.
To klasyfikacja z punktu 2 czyni odpowiedź użyteczną. Błędy kompilacji same się zweryfikują po zmianie typu; trafienia tylko w czasie działania i na kontraktach zewnętrznych to miejsca, gdzie wiarygodnie wyglądający diff psuje produkcję. Trafienia bez testu to testy, które piszesz jako pierwsze. Jeśli agent pomija kod, o którym wiesz, wskaż mu katalog wzmianką @ i sprawdź indeks bazy kodu; diagnozę opisuje zarządzanie kontekstem w Cursorze.
Buduj w Agent mode, jeden krok planu naraz
Dział zatytułowany „Buduj w Agent mode, jeden krok planu naraz”Agent mode czyta i edytuje pliki, uruchamia polecenia w terminalu i iteruje. Ta swoboda jest bezpieczna tylko wtedy, gdy agent może sam sprawdzić swoją pracę, więc zanim przekażesz mu plan, muszą być gotowe dwie rzeczy:
- Polecenie weryfikujące, które jednym wywołaniem uruchamia typy, lint i testy, na przykład
npm run verify. - Tryb uruchamiania, który pozwala agentowi uruchamiać to polecenie bez pytania, a polecenia destrukcyjne nadal zatrzymuje do twojej decyzji. Cursor grupuje to w run modes; niezbędna konfiguracja ustawia listę dozwolonych poleceń, Auto-review i hook, który ponownie uruchamia bramkę po zakończeniu pracy agenta.
Potem wykonuj plan po jednym kroku na prompt. Gdy krok kończy się zielonym poleceniem weryfikującym, zacommituj go sam. Commit to punkt powrotu niezależny od edytora.
Agent mode sprawdza się najlepiej przy zadaniu, które dotyka kilku plików i ma już kryteria akceptacji. Najgorzej, gdy zadanie wymaga reguł biznesowych, których nikt nie spisał, bo agent wypełnia lukę domysłem, który się kompiluje. Jeśli krok okaże się większy niż w planie, wróć do Plan Mode i go podziel, zamiast pozwalać Agent mode improwizować.
Debuguj na dowodach z działania, nie na domysłach
Dział zatytułowany „Debuguj na dowodach z działania, nie na domysłach”Przy błędzie, który się odtwarza, ale którego lektura kodu nie wyjaśnia (wyścig, problem z czasem, sporadyczny błąd 500), najszybsza droga to najpierw dowody, potem edycje. Cursor opisywał Debug Mode jako automatyzację tej pętli: tryb proponuje hipotezy, dodaje logi, prosi o odtworzenie błędu i naprawia na podstawie tego, co pokazały logi (opisu jego pętli nie sprawdzaliśmy ponownie; sam tryb jest wymieniony w dokumentacji Cursora, sprawdzone 2026-10-12). Poniższy prompt robi to samo w Agent mode w każdej wersji i sprawia, że instrumentację łatwo znaleźć i usunąć.
Gdy wkleisz zebrane logi, poproś o jedną poprawkę wymierzoną w potwierdzoną przyczynę, z testem odtwarzającym jako dowodem. Pełny workflow, łącznie z git bisect run dla regresji i wyjściem z pętli „napraw–zepsuj–napraw”, opisuje debugowanie z AI w Cursorze.
Kiedy przełączać tryb w trakcie zadania?
Dział zatytułowany „Kiedy przełączać tryb w trakcie zadania?”Przełączaj, gdy zmienia się niepewność zadania, a nie gdy tracisz cierpliwość. Większość sesji obejmują trzy wzorce.
| Wzorzec | Zastosowanie | Sygnał do przełączenia |
|---|---|---|
| Plan → Agent → (Plan) | Funkcja obejmująca kilka plików | Zatwierdziłeś plan, więc przejdź do Agent mode. Wróć do Plan Mode, gdy krok wymaga pliku spoza listy |
| Agent → Debug albo Agent z instrumentacją → Agent | Błąd, który przetrwał pierwszą próbę naprawy | Pierwsza poprawka nie zazieleniła testu odtwarzającego. Przestań edytować i zbieraj dowody |
| Tylko odczyt → Agent, powtarzane w małych pętlach | Małe zmiany w nieznanym kodzie | Potrafisz wskazać plik i jednozdaniowy zamiar. Wróć do odczytu, gdy nie potrafisz |
Jedna zasada obowiązuje we wszystkich trzech: po przełączeniu powtórz cel i wskaż zapisany plan wzmianką @. Nie licz na to, że rozmowa pamięta plan sprzed 40 wiadomości: według pomocy Cursora każdy tryb zaczyna nowe okno kontekstu (sprawdzone 2026-10-12). Zapisany plik docs/plans/*.md jest taki sam w każdym trybie i w każdym czacie.
Gdy chcesz porównać dwa podejścia naraz, na przykład dwa plany albo plan i szybki prototyp, uruchom je jako osobnych agentów, zamiast przełączać się tam i z powrotem w jednym czacie. Okno Agents i Projects opisuje uruchamianie agentów obok siebie, a worktree trzymają ich edycje osobno. Jeśli sterujesz agentem Cursora z kodu, @cursor/sdk przyjmuje mode: "plan" albo mode: "agent" przy tworzeniu agenta; zobacz Cursor SDK.
Jak zweryfikować wynik bez czytania każdego diffu?
Dział zatytułowany „Jak zweryfikować wynik bez czytania każdego diffu?”Każdy tryb kończy się dowodem i to dowód sprawdzasz ty oraz recenzent. Czytanie całego diffu staje się wyjątkiem zarezerwowanym dla plików, które dowody wskażą.
| Tryb | Dowód, który go kończy | Kto zatwierdza |
|---|---|---|
| Plan Mode | Zapisany plan, w którym każde kryterium akceptacji ma test, plus lista plików | Programista, a przy zmianach wspólnych kontraktów także tech lead |
| Przebieg tylko do odczytu | Sklasyfikowana lista trafień ze ścieżkami, z oznaczonymi trafieniami bez testów | Programista |
| Agent mode | Testy napisane najpierw i pokazane jako padające, zielone npm run verify, diff w granicach listy plików | CI na pull requeście, potem recenzent |
| Debug | Linia logu albo test potwierdzający jedną hipotezę i ten sam test zielony po poprawce | Programista; recenzent sprawdza test, nie poprawkę |
Kontrola zakresu jest z nich najtańsza i najczęściej pomijana. Uruchom ją w terminalu przed otwarciem pull requesta:
# Pliki zmienione od zacommitowania planu, których plan nie wymienia,# łącznie z niezacommitowanymi edycjami i nowymi, nieśledzonymi plikami.PLAN_BASE=${PLAN_BASE:-$(cat docs/plans/rate-limit.base)}{ git diff --name-only "$PLAN_BASE"; git ls-files --others --exclude-standard; } \ | sort -u | grep -v '^docs/plans/' | grep -vxF -f docs/plans/rate-limit.filesPuste wyjście oznacza, że agent został w granicach zatwierdzonego planu. Każda wypisana ścieżka to albo uzasadniona luka w planie, którą dopisujesz do listy plików i wyjaśniasz w pull requeście, albo dryf, który cofasz. W obu przypadkach czytasz uważnie ten plik i tylko ten. Sam pull request przegląda Bugbot, szukając błędów i problemów bezpieczeństwa, a CI ponownie uruchamia to samo polecenie weryfikujące, więc wynik nie zależy od raportu agenta. Szerszy argument za przeglądaniem dowodów zamiast diffów znajdziesz w tekście dowody zamiast kodu.
Co się psuje, gdy wybierzesz zły tryb w Cursorze?
Dział zatytułowany „Co się psuje, gdy wybierzesz zły tryb w Cursorze?”Agent mode edytuje znacznie więcej plików, niż się spodziewałeś. Zadanie nie było wyspecyfikowane, więc agent wyspecyfikował je edycjami. Wyjście: odrzuć zmiany przez git restore ., potem przejrzyj nowe, nieśledzone pliki przez git clean -nd i usuń je przez git clean -fd (albo git reset --hard "$PLAN_BASE", jeśli zacommitowałeś już kroki, które teraz odrzucasz) lub cofnij się do checkpointu; potem zacznij nowy czat w Plan Mode i nie wracaj do Agent mode, dopóki plan nie ma listy plików. Nie naprawiaj złego diffu w 14 plikach kolejnymi promptami; dopracowany plan i świeże uruchomienie są prawie zawsze szybsze.
Plan jest mglisty. Plan odzwierciedla wejście: „dodaj uwierzytelnianie” daje kroki w rodzaju „zaimplementuj logikę uwierzytelniania”. Wyjście: wklej kryteria akceptacji ze zgłoszenia, wskaż pliki lub katalogi przez @ i wymagaj numerowanych sekcji z promptu planu powyżej. Jeśli agent nadal nie potrafi nazwać testów, kryteria akceptacji nie są jeszcze testowalne, a to problem zgłoszenia, nie trybu.
Przebieg tylko do odczytu edytuje plik. Czat był w Agent mode albo prompt zachęcał do poprawki. Wyjście: sprawdź git status, przywróć zmienione pliki, przed wysłaniem potwierdź tryb w selektorze i zaczynaj każdy prompt badawczy od „Do not edit any file”.
Instrumentacja z debugowania zostaje w kodzie. Logi dodane podczas polowania na błąd trafiają do pull requesta. Wyjście: wyszukaj prefiks, o który prosiłeś (DEBUG-CHECKOUT wyżej), usuń każde trafienie i dodaj regułę lintera albo grep w CI, który kończy build błędem, gdy znajdzie ten prefiks, żeby następne polowanie też nic nie przemyciło.
Agent zapomina plan po przełączeniu. Przełączenie trybu zaczyna nowe okno kontekstu (pomoc Cursora, sprawdzone 2026-10-12), a poza tym długie czaty gubią wczesny kontekst, więc agent odtwarza plan z pamięci z drobnymi różnicami. Wyjście: wskazuj @docs/plans/*.md w każdym prompcie budowy, zaczynaj nowy czat dla każdego kroku planu, gdy rozmowa jest długa, i pozwól kontroli zakresu złapać to, co się prześlizgnie.