CDP 브라우저 AI Agents: 개발자 가이드 — Clawbrowser article cover

CDP Browser for AI Agents: 개발자 가이드

Clawbrowser Teamai 시약cdp의의 의

AI 에이전트는 브라우저가 필요합니다. 에이전트가 데이터를 스크랩하고, 양식을 작성하고 여러 계정을 관리하거나 멀티 스텝 워크플로우를 탐색하면 프로토콜을 통해 브라우저를 제어합니다. 모든 주요 에이전트 프레임워크를 위해, 이 프로토콜은 CDP (Chrome DevTools Protocol)입니다. 문제 : 표준 Chromium 인스턴스에 에이전트를 연결하면 몇 분 안에 감지하고 차단됩니다. AI 에이전트의 CDP 브라우저는 WebSocket 엔드포인트보다 더 많은 것을 필요로 합니다. 그것은 지문 관리, 프록시 세션을 통해 CDP를 호출하고, 이미 접근 가능한 모든 CDP 브라우저를 사용합니다.

TL;DR: CDP는 브라우저를 제어하는 표준 프로토콜 AI 에이전트 사용입니다. 표준 Chromium은 안티-봇 시스템이 즉시 감지하는 자동화 신호를 노출합니다. Clawbrowser는 20 + 표면, 내장 프록시 라우팅 및 MCP server에서 매니지드 CDP와 Chromium 포크입니다. 귀하의 에이전트는 차단되지 않는 실제 브라우저에 연결됩니다.


Chrome DevTools Protocol은 무엇입니까?

CDP는 Chromium 브라우저를 통해 외부 프로그램을 전체 제어하는 WebSocket 기반 프로토콜입니다. 그것은 Chromium DevTools (F12)로 열 수 있는 검사관에 내장되었지만 브라우저 자동화(browser automation)를 위한 de facto 표준이 되었습니다.

CDP를 통해 클라이언트는 할 수 있습니다:

  • URL로 이동하고 탭을 관리
  • arbitrary JavaScript를 페이지 컨텍스트에서 실행
  • 캡처 스크린 샷 및 PDF
  • 네트워크 요청을 삭제하고 수정
  • 쿠키, 저장 및 캐시 관리
  • 사용자 입력을 시뮬레이션: 클릭, keypresses, 스크롤

연결 모델은 곧 시작됩니다. 디버깅 포트가있는 Chrome을 시작하고 WebSocket 클라이언트는 연결할 수 있습니다.

# Start Chrome with CDP enabled
chrome --remote-debugging-port=9222
// Connect from Node.js with Puppeteer
const browser = await puppeteer.connect({
  browserWSEndpoint: 'ws://localhost:9222/devtools/browser/...'
});
const page = await browser.newPage();

하나의 프로토콜, 하나의 엔드포인트, 전체 브라우저 제어. 즉 단순성은 왜 CDP가 원합니다.


왜 모든 AI Agent Framework는 CDP를 사용합니다.

CDP는 AI 대리인과 브라우저 사이 보편적인 연결관입니다. 모든 중요한 대리인 기구는 CDP endpoint를 예상합니다:

에이전트 프레임 CDP 연결
Claude Code MCP server 또는 CDP endpoint
OpenAI Codex connect_over_cdp()
Cursor CDP WebSocket
Browser Use CDP endpoint
Hermes Agent CDP endpoint
OpenClaw CDP endpoint
Kilo Code CDP endpoint
Puppeteer CDP 클라이언트
Playwright (Chromium) connect_over_cdp()

당신의 대리인이 브라우저를 필요로 할 때, 그것은 예상합니다 ws://localhost:9222. Juggler (Firefox의 프로토콜)가 아닌 WebDriver BiDi는 독점적 인 REST API가 아닙니다. CDP.

Firefox 기반 Anti-Detect Browser가 어댑터 레이어가 아닌 대부분의 에이전트 워크플로에 연결할 수 없으므로 다른 프로토콜을 완전히 사용합니다. 스택이 있다면 Agent → CDP → Browser브라우저는 Chromium 기반이어야 합니다.


문제: 표준 Chrome는 검출했습니다

표준 Chromium --remote-debugging-port 대상 사이트가 자동화를 검사할 때까지 잘 작동합니다. Cloudflare, DataDome 및 PerimeterX와 같은 Anti-bot 시스템은 여러 신호를 통해 CDP 구동 Chromium을 감지합니다.

1. navigator.webdriver flag. Chrome은 이것을 true CDP를 통해 제어 할 때. 그것은 첫 번째 것은 안티 봇 스크립트 체크입니다.

2. CDP 런타임 아트ifacts.Runtime.evaluate 실제 사용자 상호 작용과 다른 JavaScript 실행 상황에 추적을 호출합니다.

3. 기본 지문. 신선한 Chromium 인스턴스는 공장과 기본 캔버스, WebGL 및 AudioContext 값을 반환합니다. 실제 브라우저에는 GPU, 드라이버 및 OS 구성에 의해 고유 한 지문이 있습니다.

4. 브라우저 프로파일을 미스. 브라우징 기록 없음, 쿠키 없음, 캐시 글꼴 없음, 확장 없음. 깨끗한 설치는 봇 신호입니다.

5. 헤드리스 모드 누출. 심지어 --headless=new 렌더링 행동, 플러그인 배열 및 화면 치수의 탐지 차이를 생성합니다.

결과: 귀하의 에이전트는 Chromium에 연결, 대상을 탐색 하 고 CAPTCHA 벽 또는 침묵 블록을 보. CDP 연결 완벽하게 작동 합니다. 브라우저는 당신이 실패 하는 것입니다.


Clawbrowser에 에이전트 연결

Clawbrowser는 이 사용 사례를 정확히 위해 구축 된 Chromium 포크입니다. 브라우저 수준에서 anti-detect를 처리하는 AI 에이전트를위한 CDP 브라우저. 귀하의 에이전트는 표준 CDP 엔드 포인트에 연결됩니다. 브라우저는 다른 모든 것을 처리합니다.

관리 지문을 가진 세션을 시작

# Start Clawbrowser with a managed fingerprint profile
clawctl session start --profile residential-us-1

# CDP endpoint is immediately available
# ws://localhost:9222/devtools/browser/...

Playwright 또는 Puppeteer에서 연결

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    # Connect to Clawbrowser's CDP endpoint, same as any Chrome
    browser = p.chromium.connect_over_cdp("ws://localhost:9222")
// Puppeteer: zero changes to existing code
const browser = await puppeteer.connect({
  browserWSEndpoint: 'ws://localhost:9222/devtools/browser/...'
});
const page = await browser.newPage();

proxy routing과 여러 분리된 세션을 실행

# Session 1: US residential proxy, unique fingerprint
clawctl session start --profile us-east --proxy socks5://us-proxy:1080

# Session 2: EU residential proxy, different fingerprint
clawctl session start --profile eu-west --proxy socks5://eu-proxy:1080

모든 세션은 완전하고 내부적으로 일관된 지문 프로파일을 가져옵니다. 캔버스는보고 된 GPU와 일치합니다. WebGL 매개 변수는 그래픽 카드와 일치합니다. Navigator 속성은 OS 및 브라우저 버전과 일치합니다. Timezone은 프록시 위치를 일치시킵니다. Anti-bot 시스템은 모든 표면이 동일한 이야기를 알려지기 때문에 실제 브라우저를 참조하십시오.


CDP + MCP: 2개의 의정서, 1개의 클로버

CDP는 저수준 브라우저 통제를 줍니다. MCP (Model Context Protocol)는 AI 대리인 고도 공구 접근을 줍니다. Clawbrowser는 동일한 인스턴스에 둘 다 지원합니다.

CDP로 에이전트는 과립 명령을 보냅니다: URL로 이동, 좌표에서 요소를 클릭, 이 JavaScript를 실행. 전체 제어, 전체 유연성, 더 많은 코드.

MCP로, 당신의 대리인은 공구 기능을 부르습니다: navigate, screenshot, extract_text. MCP server는 내부적으로 CDP 가동으로 이것을 번역합니다. 더 적은 부호, 더 빠른 통합, 그러나 과립상 통제.

실제 분할:

  • CDP 사용 에이전트가 사용자 정의 자동화 스크립트를 실행할 때, 네트워크 상호 작용을 필요로하거나 직접 Puppeteer/Playwright를 사용합니다.
  • MCP 에이전트가 툴 레벨 브라우저 액세스 (Claude Code, Codex 또는 MCP 호환 에이전트)를 필요로하는 LLM입니다.
  • CDP와 MCP 모두 사용 CEOTOR가 CDP를 통해 세션을 관리할 때, 개별 LLM 에이전트가 MCP를 통해 상호 작용합니다.

다른 Anti-Detect Browser는 같은 인스턴스에서 두 프로토콜을 제공합니다.


CDP Browser 옵션 비교

제품 Clawbrowser Chrome Browserbase Steel Camoufox
Native CDP 예 예 예 예 아니요 (Juggler)
anti-detect 20+ surfaces 없음 예 예 예
Managed fingerprints 예 아니요 예 예 예 (BrowserForge)
Proxy routing built-in 아니요 예 예 manual
MCP server built-in 아니요 아니요 아니요 아니요
Deployment local / self-hosted local cloud only cloud only local
Price 무료 무료 월 $150부터 월 $99부터 무료

Clawbrowser는 Native CDP, 관리 지문, 내장 프록시 라우팅 및 MCP server를 결합하는 유일한 옵션이며 무료입니다. Cloud Alternatives (Browserbase, Steel) 책임 per-session and add network latency between your Agent and browser. Camoufox는 무료이지만 에이전트 프레임 워크와 CDP 호환성을 의미하는 Firefox 및 Juggler를 사용합니다.


시작하기

# Install Clawbrowser
clawctl install

# Start a session with default fingerprint
clawctl session start --profile default

기존 CDP 코드는 변경되지 않습니다. 엔드포인트에 에이전트를 포인트하십시오. 브라우저는 지문, 프록시 라우팅 및 anti-detect를 자동으로 처리합니다.


제품 정보

Clawbrowser는 Puppeteer 및 Playwright와 함께 작동합니까?

예. Clawbrowser는 표준 CDP endpoint를 노출시킵니다. 사용 puppeteer.connect() 또는 playwright.chromium.connect_over_cdp() WebSocket URL과 함께 일반 Chromium으로 설정할 수 있습니다. 코드 변경이 필요하지 않습니다.

여러 세션을 동시에 실행할 수 있나요?

예. 각 세션은 자체 CDP endpoint, 지문 프로파일, 쿠키 및 옵션 프록시를 가져옵니다. 하드웨어 지원으로 많은 세션으로 실행하십시오. 세션은 공유되지 않고 완전히 분리됩니다.

Clawbrowser는 상업적인 사용을 위해 해방합니까?

예. Clawbrowser는 무료이며 오픈 소스입니다. 사용 제한 없음, 제한 가격 없음, API 키가 필요하지 않습니다. CI/CD 또는 로컬 기계에서 생산에 사용하십시오.

Clawbrowser의 CDP와 MCP의 차이점은 무엇입니까?

CDP (Chrome DevTools Protocol)은 저수준의 브라우저 제어를 제공합니다. 탐색, 클릭, 실행 JavaScript, 네트워크 요청을 차단합니다. MCP (Model Context Protocol)은 고도의 도구 액세스를 제공합니다. 탐색, 스크린 샷, 추출 텍스트. Clawbrowser는 같은 브라우저 인스턴스에서 동시에 지원합니다.

도커와 헤드리스 모드에서 작동합니까?

예. Clawbrowser는 같은 CDP endpoint 노출을 가진 Docker에서 실행됩니다. 사용 --headless 서버 환경을 위해. 모든 지문 관리는 headless 형태에서 동일하게 작동합니다.

계속 읽기

모든 글 보기 →