Przejdź do głównej zawartości

Cursor vs Claude Code vs Codex: macierz porównania funkcji

Macierz funkcji Claude Code, Codex i Cursor porównuje trzech agentów kodujących możliwość po możliwości: powierzchnie, pracę równoległą, kontekst, zabezpieczenia, review, uruchomienia bez nadzoru i administrację. 26 września 2026 większość możliwości nazywa się w nich tak samo. Różnice leżą w tym, gdzie działa agent, które mechanizmy blokują akcję zamiast tylko ją sugerować, i co sprawdza wynik przed merge’em.

Standaryzujesz zespół na jednym agencie albo dokładasz drugiego do CI, a każda strona producenta wymienia „subagentów, MCP, hooki, agentów w chmurze”. W tabelach porównawczych wszystkie pola są zaznaczone. Ta strona jest dla developera, który będzie żył z tym wyborem, dla tech leada, który ma przełożyć go na powtarzalny proces zespołu, i dla CTO, który go zatwierdza. Pokazuje, które wiersze naprawdę się różnią, i jak w jedno popołudnie sprawdzić te, które przesądzają o decyzji.

  • Po jednej tabeli na obszar, z wersjami i dokładną nazwą polecenia, flagi lub funkcji dla każdego narzędzia.
  • Wiersze, które pozwalają udowodnić poprawność wyniku agenta, oddzielone od wierszy, które tylko go przyspieszają.
  • Czterokrokowe sprawdzenie na własnym repozytorium, z dwoma promptami do skopiowania i poleceniem headless dla każdego narzędzia.
  • Typowe błędy przy wyborze narzędzia z macierzy i sposób wyjścia z każdego z nich.

Komórki Claude Code sprawdzono na zainstalowanym CLI 2.1.283 i w jego dokumentacji, a komórki Codexa na CLI 0.157.1 i w jego kodzie źródłowym. Oba sprawdzenia odbyły się 26 września 2026. Komórki Cursora pochodzą z dokumentacji Cursora w stanie z 28 sierpnia 2026, bo 26 września cursor.com był nieosiągalny. Zanim zautomatyzujesz coś na podstawie komórki Cursora, sprawdź ją ponownie.

Jeśli jeszcze nie zawęziłeś wyboru, zacznij od przeglądu narzędzi.

Do każdej tabeli poniżej stosują się jeszcze dwie zasady:

  • Steruje czy egzekwuje. Rules, skille i pliki instrukcji sterują modelem. Hooki, sandboksy i polityki zatwierdzania mogą zablokować akcję. Tam, gdzie tabela miesza jedno z drugim, wiersz mówi, o co chodzi.
  • W Claude Code liczy się kanał. Claude Code ma kanał latest (2.1.283 26 września 2026) i kanał stable (2.1.274), który jest mniej więcej tydzień w tyle. Komórka wymagająca v2.1.277 lub nowszej jest prawdziwa tylko na latest.

Cen i okien kontekstu w tabelach nie ma. Zmieniają się co miesiąc, więc są w hubie modeli i w analizie cen.

MożliwośćClaude Code 2.1.283Codex 0.157.1Cursor (dokumentacja, 2026-08-28)
Agent w terminaluCLI (claude)CLI (codex)Cursor CLI
EdytorRozszerzenia VS Code i JetBrains (panel agenta, diffy, checkpointy)Rozszerzenie IDE (VS Code, Cursor, Windsurf według README OpenAI)Sam edytor Cursor, z uzupełnianiem Tab i edycją inline
Aplikacja desktopowamacOS, Windows, Linux (beta)codex app na macOS i WindowsEdytor Cursor
Uruchomienia w chmurzeSesje webowe (claude --cloud)Codex cloud (codex cloud, eksperymentalne)Cloud Agents w izolowanych maszynach wirtualnych
Przekazanie z czatu i trackeraSlack (Claude Tag dla Team i Enterprise); pozostałe przez MCPSlack i Linear (@Codex; sprawdzone 2026-08-28)Automations wyzwalane ze Slacka, Lineara, GitHuba, GitLaba, webhooków, Sentry i PagerDuty
MożliwośćClaude Code 2.1.283Codex 0.157.1Cursor (dokumentacja, 2026-08-28)
Plan przed kodemPlan mode (/plan, Shift+Tab, --permission-mode plan)/planPlan Mode
SubagenciWbudowani Explore, Plan i general-purpose; własni w .claude/agents//subagents; multi-agent domyślnie włączonySubagenci, także na własnych maszynach w chmurze
Izolacja w Git worktree--worktree [name] (-w)Flaga --worktree lub /worktreeWorktrees
Sesje w tle--bg, potem claude attach, logs, stopCentrum dowodzenia codex agentsCloud Agents
Praca aż do spełnienia warunku/goal, oceniany co turę przez osobny model ewaluatora/goal (funkcja goals, stable)/goal, oznaczony „Rolling out”
Powtarzanie promptu w rytmieWbudowany skill /loop (alias /proactive)Brak /loop w binarce 0.157.1; użyj /goal lub CIWbudowany skill /loop od wersji 3.5
Cofnięcie złego krokuCheckpointy i /rewind (Esc Esc)Esc Esc cofa rozmowę do wcześniejszej wiadomości, ale nie przywraca plików (0.157.1); stan plików odtwarzaj Gitem/rewind na liście slash-commands CLI

Wiersze o celu i pętli rozwijają przewodnik po /goal i przewodnik po /loop.

MożliwośćClaude Code 2.1.283Codex 0.157.1Cursor (dokumentacja, 2026-08-28)
Instrukcje projektu (sterują)CLAUDE.md; czyta AGENTS.md, gdy nie ma CLAUDE.md (v2.1.277+, latest)AGENTS.md (tworzy go /init)Rules
Odcięcie dostępu do pliku (egzekwuje)Reguły odmowy Read w .claude/settings.json, np. Read(./.env)Profil uprawnień z regułą deny dla systemu plików (beta); samo --sandbox ogranicza zapis, nie odczytHooki; resztę sprawdź na cursor.com
Dodatkowe katalogi--add-dir--add-dir (z prawem zapisu)Sprawdź na cursor.com
Wyszukiwanie w sieciNarzędzia WebSearch i WebFetch--search (wyszukiwanie na żywo)Sprawdź na cursor.com
Klient MCPclaude mcp add, .mcp.jsoncodex mcp add, config.tomlMCP
Działanie jako serwer MCPclaude mcp serveNie; usunięte w 0.154.0Nieudokumentowane
Skille.claude/skills/; wbudowane /code-review, /batch, /simplify/skills; .agents/skills/Agent Skills
Pluginyclaude plugincodex pluginPlugins

Skille instaluje się we wszystkich trzech tym samym CLI: npx skills add OWNER/REPO (pakiet skills 1.7.0 w npm, 26 września 2026). Zastąp OWNER/REPO repozytorium skilla na GitHubie. Instalowanie i zarządzanie skillami omawia zakres i przegląd, a hub MCP serwery.

MożliwośćClaude Code 2.1.283Codex 0.157.1Cursor (dokumentacja, 2026-08-28)
Model zatwierdzaniaTryby uprawnień: Manual (default), acceptEdits, plan, auto, dontAsk, bypassPermissionsPolityka zatwierdzania (-a on-request lub -a never) plus automatyczny przegląd (--approve-for-me)Run modes (strona istnieje; nazw trybów nie sprawdzono ponownie) i Auto-review dla lokalnych wywołań narzędzi
Tryb startowyAuto mode w interaktywnych sesjach terminala i VS Code (v2.1.283, latest); claude -p startuje w Manualon-requestSprawdź na cursor.com
Sandbox systemowySandboxed Bash: macOS Seatbelt, Linux i WSL2 bubblewrap--sandbox read-only, workspace-write, danger-full-access; profile uprawnień (beta)/sandbox na liście slash-commands CLI
Hooki33 zdarzenia; handlery command, http, mcp_tool, prompt i agent12 zdarzeń; działają dopiero po utrwaleniu zaufaniaJSON przez stdio, przed etapami pętli agenta lub po nich; mogą blokować
Polityka organizacjiManaged settings: availableModels, permissions.disableAutoMode, deniedModels (v2.1.283)requirements.toml: allow_managed_hooks_only, permission_profile, mcp_serversWarstwy ustawień team i MDM (SDK 1.0.32)

Uprawnienia i sandboksy w trzech narzędziach porównują stronę egzekwowania dokładniej.

MożliwośćClaude Code 2.1.283Codex 0.157.1Cursor (dokumentacja, 2026-08-28)
Review w sesji/code-review (--fix, --comment)/reviewSprawdź na cursor.com
Review z powłoki lub CIclaude ultrareview (w chmurze, wieloagentowe); zarządzane Code Review (research preview, Team i Enterprise)codex review, codex exec reviewBugbot na pull requeście
Review na pull requeścieanthropics/claude-code-action@v1@codex review na GitHubie i GitLabie; openai/codex-action@v1Bugbot
Przegląd bezpieczeństwa/security-review@codex security reviewSecurity Agents
Przydzielanie recenzentów i akceptacjaPrzez własne CI i CODEOWNERSPrzez własne CI i CODEOWNERSPR Routing & Approval (może zaakceptować PR niskiego ryzyka)

Uruchomienia bez nadzoru: headless, CI, harmonogramy i SDK

Dział zatytułowany „Uruchomienia bez nadzoru: headless, CI, harmonogramy i SDK”
MożliwośćClaude Code 2.1.283Codex 0.157.1Cursor (dokumentacja, 2026-08-28)
Uruchomienie headlessclaude -pcodex exec (alias e)Tryb print (-p, --print)
Wynik do parsowania--output-format json lub stream-json; --json-schema--json (zdarzenia JSONL); --output-schema FILE; -o FILE (--output-last-message, tylko końcowa wiadomość)Sprawdź na cursor.com
GitHub Actionsanthropics/claude-code-action@v1openai/codex-action@v1Cursor CLI w GitHub Actions (udokumentowane)
Uruchomienia zaplanowaneRoutines (/schedule, research preview)Automations i zadania zaplanowaneAutomations
SDKClaude Agent SDK: npm @anthropic-ai/claude-agent-sdk 0.3.283, PyPI claude-agent-sdkCodex SDK: npm @openai/codex-sdk 0.157.1, PyPI openai-codexnpm @cursor/sdk 1.0.32, PyPI cursor-sdk
Start zadania w chmurze z koduRoutines z wyzwalaczem API (research preview)codex cloud (eksperymentalne)Cloud Agents API i webhooki
MożliwośćClaude Code 2.1.283Codex 0.157.1Cursor (dokumentacja, 2026-08-28)
Rodziny modeliModele Anthropic; także przez Bedrock, Google Cloud, Microsoft Foundry i bramki LLMModele OpenAI; także Amazon Bedrock i modele lokalne przez --oss (LM Studio, Ollama)Kilku dostawców w jednym selektorze; domyślny model niezweryfikowany
Model domyślnyClaude Opus 5.5 od v2.1.280 (latest)GPT-6 AstraNiezweryfikowany
Zmiana w trakcie sesji/model/modelSelektor modeli
Plany i ceny stanowiskAnaliza cenAnaliza cenAnaliza cen

Zacznij od domyślnego modelu narzędzia i podnieś effort, zanim zmienisz model. Hub modeli zawiera okna kontekstu, ceny i uzasadnienie tej zasady.

Większość wierszy ma dziś „tak” we wszystkich trzech kolumnach. Te poniżej różnią się tak, że zmienia to sposób pracy:

  • Gdzie toczy się praca agenta. Cursor trzyma agenta w edytorze, obok Tab i edycji inline. Claude Code startuje w terminalu i prowadzi tę samą sesję w IDE, na desktopie i w przeglądarce. Codex rozkłada jednego agenta na CLI, rozszerzenie IDE, aplikację desktopową, zadania w chmurze oraz przekazania ze Slacka i Lineara.
  • Głębokość egzekwowania. Claude Code dokumentuje 33 zdarzenia hooków wobec 12 w Codexie, z pięcioma typami handlerów, i dokłada reguły odmowy Read. Codex łączy sandbox systemowy z polityką zatwierdzania i modelem recenzenta, który rozstrzyga zatwierdzenia na granicy sandboksa. Hooki Cursora mogą blokować, a jego run modes są udokumentowane, ale nie zostały ponownie sprawdzone.
  • Review na pull requeście. Codex robi review po wzmiance (@codex review) bez osobnego pliku workflow. Cursor dokłada Bugbota, Security Agents i przydzielanie recenzentów. Review pull requestów w Claude Code idzie przez jego GitHub Action lub zarządzane Code Review.
  • Powierzchnie bez nadzoru. Wszystkie trzy działają headless i według harmonogramu. Claude Code może też działać jako serwer MCP; Codex usunął tę możliwość w 0.154.0.

Które wiersze pozwalają udowodnić, że wynik agenta jest poprawny?

Dział zatytułowany „Które wiersze pozwalają udowodnić, że wynik agenta jest poprawny?”

Funkcja, która przyspiesza agenta, nic nie daje, dopóki bramka nie sprawdzi wyniku. Dowodu dostarczają cztery wiersze, a każde narzędzie wypełnia je inaczej:

BramkaCzego dowodziClaude CodeCodexCursorKto zatwierdza
Hook po edycji uruchamia testy i typyKażda edycja zostawia build zielonyHook PostToolUseHook (zaufany)HookDeveloper, na podstawie logu hooka
Uruchomienie headless ze schematemRaport agenta da się sprawdzić maszynowo--json-schema--output-schemaTryb print, potem parsowanieCI
Niezależny przeglądDiff czyta drugi model, a nie autor/code-review, Code Review@codex reviewBugbotRecenzent zatwierdza ustalenia, nie każdą linię
Sandbox podczas pracyAgent nie mógł dotknąć tego, czego nie powinienSandboxed Bash, reguły odmowy--sandbox workspace-write (zapis ograniczony do workspace)Run modes, /sandboxTech lead, raz, w konfiguracji

Decyzję o merge’u opieraj na własnych testach i CI, a nie na komentarzu bota. Ochrona wyroczni wyjaśnia, dlaczego agent nie może edytować testów, które go oceniają, a review pull requestów agenta opisuje, co człowiek nadal czyta.

Macierz mówi, że funkcja istnieje. Tylko uruchomienie na twoim kodzie pokaże, czy działa u ciebie. To sprawdzenie zajmuje popołudnie. Przed zakupem dla całego zespołu przeprowadź pełny protokół bake-offu, który przepuszcza przez każdego kandydata 10 do 20 twoich zamkniętych zgłoszeń.

  1. Wybierz rozstrzygające wiersze. Wskaż w tabelach trzy do pięciu wierszy, bez których zespół nie może pracować. W większości zespołów to tryb headless do CI, hook, który potrafi blokować, i review na pull requeście.

  2. Potwierdź wersję, której używasz. Funkcje zależą od wersji, a w Claude Code także od kanału wydań. W terminalu:

    Okno terminala
    claude --version && claude --help | grep -E -- '--worktree|--json-schema|--bg'
    codex --version && codex features list | grep -E '^(goals|hooks|multi_agent) '

    W Cursorze otwórz okno About w edytorze i porównaj wersję z changelogiem Cursora.

  3. Każ każdemu agentowi udowodnić swoje wiersze. Wklej pierwszy prompt poniżej do każdego narzędzia, w repozytorium, na którym zamierzasz go używać. Odpowiedź musi cytować wyjście polecenia lub plik, nigdy pamięć agenta.

  4. Uruchom jedno ograniczone zadanie headless i porównaj bramki. Użyj drugiego promptu jako pliku zadania, uruchom go w jednorazowym worktree dla każdego narzędzia i przyłóż do każdego wyniku tę samą bramkę. Zapisz drugi prompt jako trial-task.txt obok katalogu repozytorium (poziom wyżej niż katalog główny repozytorium), a w tym samym miejscu zapisz poniższy schemat raportu jako trial-report.schema.json. Oba polecenia headless go przekazują, więc raport jest walidowany względem schematu, a nie powierzony samemu promptowi.

trial-report.schema.json
{"type": "object", "additionalProperties": false,
"required": ["files_changed", "tests_command", "tests_passed", "handlers_skipped"],
"properties": {"files_changed": {"type": "array", "items": {"type": "string"}},
"tests_command": {"type": "string"}, "tests_passed": {"type": "boolean"},
"handlers_skipped": {"type": "array", "items": {"type": "object", "additionalProperties": false,
"required": ["file", "reason"], "properties": {"file": {"type": "string"}, "reason": {"type": "string"}}}}}}

Uruchom zadanie próbne tak samo w każdym narzędziu, każde w osobnym worktree, żeby trzy przebiegi nie mogły ze sobą kolidować. Polecenia się różnią, bramka nie.

Nowy worktree zawiera tylko pliki śledzone przez Git, więc nie ma w nim node_modules, a żaden z przebiegów headless nie zdoła ich zainstalować: lista dozwolonych narzędzi Claude Code dopuszcza wyłącznie npm test, a sandbox workspace-write w Codeksie domyślnie odcina sieć. Dlatego każdy blok poniżej uruchamia npm ci w Twojej powłoce, zanim wystartuje agent. npm ci instaluje dokładnie to, co przypina zacommitowany package-lock.json; przy innym menedżerze pakietów użyj jego instalacji z zamrożonym lockfile’em.

Okno terminala
git worktree add ../trial-claude && cd ../trial-claude && npm ci
claude -p --output-format json \
--json-schema "$(cat ../trial-report.schema.json)" \
--allowedTools "Read Edit Write Bash(npm test *)" < ../trial-task.txt > ../claude-run.json

claude -p startuje w trybie Manual, więc lista --allowedTools to wszystko, co przebieg może zrobić bez pytania.

Potem przyłóż jedną bramkę do wszystkich trzech worktree. Uruchom ją z katalogu głównego repozytorium, gdzie BASE to commit, od którego wystartowały worktree:

Okno terminala
BASE=$(git rev-parse HEAD)
for d in ../trial-claude ../trial-codex ../trial-cursor; do
echo "== $d"
(cd "$d" && npm test && npx tsc --noEmit && git add -A && git diff --cached --stat "$BASE" -- tests/ '*test*.config.*' package.json)
done

Przebieg przechodzi, gdy testy i sprawdzenie typów kończą się sukcesem, końcowy git diff niczego nie wypisuje (brak zmian w tests/, konfiguracji testów i package.json, śledzonych i nieśledzonych), a raport JSON agenta zgadza się z diffem. Porównujesz trzy wyniki z jedną bramką; nie czytasz trzech diffów linia po linii.

SytuacjaZacznij odDlaczego, według macierzy
Zespół pracuje w edytorze w stylu VS Code i chce sterować każdą zmianąCursorTab, edycja inline, Plan Mode i agent w jednym oknie
Praca ma iść z mniejszym nadzorem, pilnowana przez hooki i CIClaude Code33 zdarzenia hooków, reguły odmowy, claude -p ze schematem
Jeden agent na desktopie, w CLI, IDE, w chmurze, w Slacku i LinearzeCodexWiele powierzchni z założenia; review po @codex review
Najważniejsze są review pull requestów i przydzielanie recenzentówCursor lub CodexBugbot i PR Routing albo review po wzmiance
Agent w edytorze do pracy interaktywnej plus agent CLI w CIDwa narzędziaOba trzymają instrukcje w plikach; zobacz mapę narzędzi

Porównanie dwóch narzędzi łeb w łeb znajdziesz w Cursor czy Claude Code i Codex wobec Cursora i Claude Code. Agentów spoza tej trójki opisują rynek agentów kodujących i strona o GitHub Copilot.

Co idzie źle, gdy wybierasz narzędzie z macierzy funkcji?

Dział zatytułowany „Co idzie źle, gdy wybierasz narzędzie z macierzy funkcji?”
  • Macierz jest nieaktualna, zanim ją przeczytasz. Claude Code wydaje mniej więcej jedną wersję dziennie, a Codex przeszedł z 0.153.4 do 0.157.1 między 4 a 26 września 2026. Wyjście: wykonaj krok 2 powyżej i ufaj wyjściu --help bardziej niż jakiejkolwiek tabeli, także tej.
  • Funkcja istnieje, ale nie na twoim kanale lub planie. 26 września 2026 kanał stable Claude Code (2.1.274) nie miał domyślnego Opus 5.5 ani czytania AGENTS.md. Wyjście: sprawdź claude --version i ustawienie autoUpdatesChannel, zanim zgłosisz błąd.
  • Dwie funkcje mają wspólną nazwę, ale nie wspólną gwarancję. Worktree izoluje pliki, nie bazę danych, sekrety ani konto w chmurze. Rules sterują, hooki mogą blokować. Wyjście: dla każdego wiersza, na którym polegasz, zapytaj: „czy to może zatrzymać akcję, czy tylko prosi model, żeby jej nie robił?”.
  • Budujesz CI na funkcji w wersji zapoznawczej. Routines, codex cloud i /goal w Cursorze były oznaczone jako research preview, eksperymentalne lub „Rolling out”. Wyjście: trzymaj zadanie zaplanowane we własnym CI, dopóki funkcja nie będzie ogólnodostępna, i przypinaj wersję CLI w jobie.
  • Hook Codexa po cichu nie uruchamia się w CI. Hooki Codexa wymagają utrwalonego zaufania, a świeży runner go nie ma. Wyjście: sprawdź, czy wyjście hooka pojawia się w logu joba. --dangerously-bypass-hook-trust używaj tylko w automatyzacji, która już weryfikuje źródło hooka.
  • Review staje się bramką. Komentarz bota recenzującego to rada. Wyjście: przed merge’em wymagaj zielonych testów, typów i własnego CI, a ustalenia z review traktuj jako dane wejściowe do tej decyzji.

Najczęstsze pytania

Które z narzędzi Claude Code, Codex i Cursor ma najwięcej funkcji?

Żadne nie wygrywa w każdym wierszu. 26 września 2026 wszystkie trzy mają subagentów, worktree, skille, hooki, MCP, tryb headless, SDK i zaplanowane uruchomienia (Routines w chmurze w Claude Code, Automations w chmurze w Cursorze, lokalne automatyzacje w aplikacji desktopowej w Codexie). Różnią się tym, gdzie działa agent, jak egzekwowane są zabezpieczenia i jakie review przechodzi pull request, więc sprawdź rozstrzygające wiersze na własnym repozytorium.

Które narzędzie najlepiej działa w CI?

Wszystkie trzy mają tryb headless: claude -p z --output-format json, codex exec z --json lub --output-schema oraz tryb print CLI Cursora (-p). Claude Code i Codex mają też GitHub Actions (anthropics/claude-code-action@v1, openai/codex-action@v1). Wybieraj według bramki, którą CI uruchamia po agencie, a nie według flagi agenta.

Czy wszystkie trzy narzędzia obsługują hooki?

Tak. Claude Code dokumentuje 33 zdarzenia hooków, a Codex 12; hooki Cursora wymieniają JSON przez stdio przed etapami pętli agenta lub po nich. Hooki Codexa uruchamiają się dopiero po utrwaleniu zaufania, co ma znaczenie na świeżym runnerze CI.

Jaki plik instrukcji projektu czyta każde narzędzie?

Claude Code czyta CLAUDE.md, a od v2.1.277 na kanale latest także AGENTS.md, gdy projekt nie ma CLAUDE.md. Codex czyta AGENTS.md. Cursor używa Rules.

Gdzie są ceny i okna kontekstu?

Nie na tej stronie. Okna kontekstu i ceny są w hubie modeli, a ceny planów w analizie cen. Wiersz o domyślnym modelu jest tu oznaczony wersją; sprawdź go ponownie poleceniem /model.