Jak połączyć Cursor z prawdziwą przeglądarką przez CDP — ilustrowana okładka artykułu Clawbrowser

Jak połączyć Cursor z prawdziwą przeglądarką przez CDP

Clawbrowser Teamagenci-aicdpcursortutorial

Wbudowany browser w Cursorze jest wygodny do sprawdzania własnej aplikacji. Umie wejść na stronę, kliknąć, wpisać tekst i zrobić screenshot. Problem zaczyna się wtedy, gdy agent ma działać na prawdziwym webie: utrzymać login, przejść przez Cloudflare albo wykonać workflow na stronie, która sprawdza identity przeglądarki.

TL;DR: połącz Cursor z Clawbrowser przez CDP (Chrome DevTools Protocol). Agent dostaje realny Chromium z trwałymi profilami, zarządzanym fingerprintem i proxy routingiem. Instalujesz runtime, uruchamiasz profil i podajesz Cursorowi lokalny endpoint.


Dlaczego wbudowana przeglądarka Cursor nie wystarcza

Cursor ma browser tool oparty o sandboxed webview uruchomiony jako MCP server. Do localhostu wystarcza: navigate, click, type, scroll, screenshot, console output i network traffic.

Poza lokalnym developmentem wychodzą ograniczenia:

Ograniczenie Co się dzieje
Sandboxed webview To nie jest realna instancja Chromium. Strony widzą brakujące APIs i nietypowe window properties.
Brak trwałych sesji Cookies i localStorage są przypięte do workspace i nie zawsze przeżywają kolejne uruchomienia.
Brak zarządzania fingerprintem Ten sam canvas hash, WebGL renderer i navigator properties wracają w każdym runie.
Brak proxy support Cały ruch idzie przez domyślne IP maszyny. Datacenter IP szybko dostają flagę.
Problemy z niezawodnością Cursor 2.3.18+ miał regresje w clickach, scrollu i znajdowaniu elementów.

To nie są edge case'y. Jeśli agent dotyka Cloudflare, DataDome, PerimeterX albo innego anti-bota, webview startuje z bardzo słabą pozycją.


Co daje CDP

CDP (Chrome DevTools Protocol) to standardowy interfejs do sterowania Chromium z kodu. Playwright używa connectOverCDP, Puppeteer używa puppeteer.connect, a surowe klienty CDP otwierają WebSocket do portu debugowania.

Po podłączeniu Cursora do zewnętrznego browsera przez CDP dostajesz:

  • Realną przeglądarkę z pełnym silnikiem renderowania, rozszerzeniami i standardowymi API
  • Trwałe sesje z cookies i login state między kolejnymi runami agenta
  • Pełną kontrolę strony tym samym protokołem, którego używają Playwright i Puppeteer
  • Anti-detection, jeśli browser pilnuje spójności fingerprintu i proxy

Połączenie to zwykły WebSocket URL. Każde narzędzie mówiące CDP może podłączyć się do browsera z takim endpointem. Clawbrowser wystawia endpoint dla każdego profilu.


Łączenie Cursor z Clawbrowser: krok po kroku

Wymagania

  • macOS (Apple Silicon), Linux (x64 albo arm64) lub Windows
  • Zainstalowany Cursor
  • API key Clawbrowser z app.clawbrowser.ai

Krok 1: zainstaluj Clawbrowser

Pobierz i rozpakuj bootstrapper clawctl:

# macOS (Apple Silicon)
archive="clawctl-macos-arm64.tar.gz"
curl -fL --retry 3 -o "$archive" \
  "https://github.com/clawbrowser/clawctl/releases/latest/download/${archive}"
tar -xzf "$archive"

Dla Linuxa użyj clawctl-linux-amd64.tar.gz albo clawctl-linux-arm64.tar.gz. Docker i sudo nie są potrzebne.

Ustaw API key:

./clawctl config set api-key

Krok 2: uruchom profil przeglądarki

Uruchom Clawbrowser z nazwanym profilem. Każdy profil ma własny fingerprint, storage cookies i opcjonalny proxy:

# Start a profile and open the verification page
clawctl start --profile cursor-dev --url clawbrowser://verify/ --json

# Get the CDP endpoint for this profile
clawctl endpoint --profile cursor-dev --json

Komenda endpoint zwraca URL w stylu http://127.0.0.1:9222. To endpoint CDP dla agenta Cursor.

Krok 3: połącz z Cursor przez MCP

Najprostsza integracja to wbudowany MCP server Clawbrowser. Wystawia nawigację, screenshots, clicki, tab management i start profili jako MCP tools, które Cursor może wywoływać bezpośrednio. Server zarządza CDP wewnętrznie.

Uruchom installer konfiguracji MCP:

clawctl install --agent all --json

Cursor odczyta lokalny MCP server z konfiguracji.

Alternatywa: Microsoft Playwright MCP

Jeśli wolisz oficjalny Microsoft Playwright MCP server, ustaw endpoint CDP Clawbrowser w Cursor Settings > MCP > Add Server:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [

Obie opcje dają Cursorowi wysokopoziomowe narzędzia browsera. MCP server Clawbrowser dodaje jeszcze zarządzanie profilami i fingerprintami.

Krok 4: sprawdź połączenie

Poproś agenta Cursor o wejście na stronę testową:

Navigate to https://browserleaks.com/canvas and take a screenshot. Tell me what canvas fingerprint hash you see.

Jeśli połączenie działa, zobaczysz realny canvas fingerprint profilu Clawbrowser, a nie generyczny hash sandboxed webview.


Bezpośrednie połączenie CDP z kodu

Jeśli agent Cursor pisze i odpala skrypty zamiast używać MCP tools, połącz się bezpośrednio przez Playwright albo Puppeteer:

Playwright (Python)

from playwright.async_api import async_playwright

async def browse_with_clawbrowser():
    async with async_playwright() as p:
        # Connect to Clawbrowser's CDP endpoint

Playwright (Node.js)

const { chromium } = require('playwright');

const browser = await chromium.connectOverCDP('http://127.0.0.1:9222');
const page = browser.contexts()[0].pages()[0];

Puppeteer

const puppeteer = require('puppeteer');

const browser = await puppeteer.connect({
  browserURL: 'http://127.0.0.1:9222'
});

Wszystkie trzy frameworki łączą się z tym samym endpointem CDP. Clawbrowser pilnuje warstwy identity: Canvas, WebGL, AudioContext, fonty, rozdzielczość, timezone, navigator properties i proxy routing są spójne w profilu.


Dlaczego anti-detection ma znaczenie dla agentów Cursor

Kiedy agent Cursor używa standardowego browsera, systemy anti-bot sprawdzają identity na wielu powierzchniach:

Sygnał Co jest sprawdzane Standard Chrome Clawbrowser
Canvas hash GPU rendering fingerprint Static, matches known automation profiles Unique per profile, consistent with reported GPU
WebGL renderer Graphics card identifier Exposes real hardware Matches the profile's simulated hardware
Navigator properties Browser version, platform, language Generic Chromium values Consistent with profile's OS and locale
Timezone System timezone vs IP geo Mismatches with proxy location Auto-aligned with proxy geography
CDP detection Runtime.enable traces Detectable via leaked CDP artifacts Engine-level patches suppress CDP signals

Zwykły Chromium podłączony przez CDP zostawia ślady czytelne dla anti-botów w kilka sekund. Clawbrowser łata je na poziomie engine, a nie przez JavaScript overrides wykrywalne po descriptors albo prototype chains.

To różnica między podłączeniem Cursora do chrome --remote-debugging-port=9222, który szybko wpada w blokadę, a Clawbrowser, który trzyma spójny fingerprint.


Zarządzanie wieloma profilami

Każdy profil Clawbrowser jest izolowany. Możesz uruchomić kilka profili naraz dla różnych kont albo projektów:

# Create three profiles with different locations
clawctl create --profile account-a --location sweden --json
clawctl create --profile account-b --location germany --json
clawctl create --profile account-c --location japan --json

Każdy profil ma unikalny fingerprint, własne proxy IP i izolowany storage. Platforma widzi niezależnych użytkowników z różnych maszyn i krajów.

Agent Cursor może przełączać profile przez różne endpointy CDP albo obsługiwać kilka profili równolegle z jednego skryptu.


Browser Cursor vs CDP vs Clawbrowser

Cursor built-in Chrome via CDP Clawbrowser via CDP
Browser engine Sandboxed webview Real Chromium Real Chromium (patched)
Session persistence Workspace-scoped Manual profile dirs Named profiles with auto-persistence
Fingerprint management None None 20+ surfaces managed per profile
Proxy support None Manual flag Profile-bound, geo-aligned
Anti-bot survival Blocked instantly Blocked within minutes Passes Cloudflare, DataDome, PerimeterX
Multi-account Not possible Separate --user-data-dir Built-in profile isolation
Setup complexity Zero (built in) Moderate Three commands

Wbudowanego browsera używaj do localhostu. Clawbrowser przez CDP wybierz wszędzie tam, gdzie agent dotyka prawdziwego webu.


FAQ

Czy to działa z agent mode w Cursorze?

Tak. Agent mode w Cursorze może używać dowolnego MCP servera, także takiego, który łączy się z zewnętrznym browserem przez CDP. Akcje wykonują się wtedy w Clawbrowser.

Czy muszę instalować Playwright albo Puppeteer?

Tylko jeśli agent pisze i uruchamia skrypty automatyzacji. W typowym workflow MCP server obsługuje CDP wewnętrznie.

Czy mogę używać tej samej sesji logowania w kilku projektach Cursor?

Tak. Profile Clawbrowser zapisują cookies, localStorage i IndexedDB. Zaloguj się raz, a potem używaj tego profilu w kolejnych workspace'ach.

Co jeśli browser tool Cursora miesza się z zewnętrznym browserem?

Możesz wyłączyć wbudowany browser w Settings > Features > Browser. Mogą też działać równolegle, bo są niezależne.

Czy Clawbrowser jest darmowy?

Tak. Clawbrowser jest darmowy, open source i MIT-licensed. Bez opłat za seat, bez limitów użycia i bez subskrypcji runtime. Do walidacji instalacji potrzebujesz API key z app.clawbrowser.ai.


Zacznij

Trzy komendy łączą agenta Cursor z prawdziwą przeglądarką:

# Install Clawbrowser
clawctl install --json

# Set your API key
clawctl config set api-key

Skieruj MCP server albo skrypt Playwright na zwrócony endpoint. Agent Cursor będzie działał przez browser z zarządzanymi fingerprints, trwałymi sesjami i proxy routingiem.

Więcej o CDP: Przeglądarka CDP dla agentów AI. O fingerprintingu: Browser fingerprinting i 20 sygnałów anti-bot.

Czytaj dalej

Zobacz wszystkie →