피드로 돌아가기
I built a browser daemon for AI coding agents because Playwright wasn't enough
Dev.toDev.to
Infrastructure

HTTP-RPC 기반 브라우저 데몬으로 AI 에이전트 세션 유지 및 봇 탐지 우회

I built a browser daemon for AI coding agents because Playwright wasn't enough

lipski2026년 4월 23일6advanced

Context

Claude Code와 같은 CLI 기반 에이전트의 Bash 도구는 프로세스 실행 후 stdin 입력이 불가한 제약이 있음. 이로 인해 Playwright 같은 REPL 기반 도구 사용 시 턴마다 브라우저 세션이 종료되어 반복적인 로그인이 필요한 비효율 발생.

Technical Solution

  • 브라우저 제어 로직을 HTTP-RPC 기반 데몬으로 분리하여 127.0.0.1에서 상주시키는 아키텍처 설계
  • Ephemeral Port 바인딩 및 Lockfile 기반 포트 관리로 CLI 클라이언트와 데몬 간의 Stateless 통신 구현
  • navigator.webdriver 및 CDP 이벤트 유출을 차단하는 Patchright 포크 채택으로 봇 탐지 메커니즘 우회
  • Cubic Bézier 경로 생성 및 Gaussian Jitter 적용을 통한 인간 유사 마우스 움직임 시뮬레이션
  • Fitts's Law 기반의 거리/대상 크기별 이동 시간 계산 및 문자별 Log-normal 기반 타이핑 케이던스 구현
  • QWERTY 인접 키 오타 및 수정 동작을 0.8% 확률로 삽입하는 인간 행동 레이어 구축

Key Takeaway

단순한 브라우저 자동화를 넘어 인풋 스트림의 통계적 특성(타이핑 간격, 마우스 가속도)까지 모사해야 고도화된 Anti-bot 시스템을 우회할 수 있으며, 상태 유지가 필요한 외부 도구 제어 시 RPC 기반 데몬 구조가 효과적임.


- AI 에이전트의 세션 유지 필요 시 Stateless CLI와 Stateful Daemon 구조 검토 - 봇 탐지 우회 필요 시 WebDriver 플래그 제거 외에 입력 이벤트의 정량적 분포(Log-normal) 적용 - 마우스 이동 구현 시 단순 직선 이동이 아닌 Bézier Curve와 가속도 모델 적용 - 환경별 샌드박스 제약(root Linux vs macOS/Windows)에 따른 런타임 플래그 최적화

원문 읽기