캐모플록스와 CLI 래퍼로 OpenClaw 브라우저 CAPTCHA 수정하기

문제: OpenClaw가 차단되는 이유
OpenClaw의 내장 브라우저는 Playwright와 함께 Chromium을 사용합니다. 인간처럼 보이더라도(홈 네트워크의 여분의 MacBook Pro, 로그인된 계정), 봇 탐지 기능이 있는 사이트에서 차단됩니다. Google과 Bing은 CAPTCHA를 띄우고, X는 로그인 벽을 보여주며, Medium은 Cloudflare 뒤에서 로드되지 않습니다.
봇 탐지 작동 방식
Puppeteer와 Playwright 같은 도구는 Chrome DevTools Protocol(CDP)을 사용하여 브라우저를 제어합니다. 연결되면 Runtime.Enable 명령이 실행됩니다. 안티봇 스크립트는 JavaScript로 이를 탐지합니다. Cloudflare와 DataDome 모두 이를 확인합니다.
자동화 라이브러리는 작동하기 위해 페이지에 JavaScript를 주입하기도 합니다(window.__playwright__binding__ 및 유사한 것들). 안티봇 스크립트는 속성 설명자와 함수 시그니처를 확인하여 이를 잡아냅니다. 브라우저 함수의 toString()이 더 이상 "[native code]"를 반환하지 않으면 무언가 조작된 것입니다.
하드웨어 지문 인식은 수백 개의 데이터 포인트를 노출합니다: WebGL을 통한 GPU 모델, 그래픽 하드웨어마다 다른 픽셀 수준의 Canvas 출력, 화면 해상도, 폰트 메트릭, 오디오 처리. 자동화된 브라우저는 이를 잘못 처리합니다 - Canvas 출력이 수천 세션에 걸쳐 동일하거나, 사용자 에이전트는 Windows라고 말하지만 GPU는 Apple이라고 말합니다.
해결책: Camoufox
대부분의 안티탐지 도구는 JavaScript 수준에서 이를 수정하려고 시도하며, navigator.webdriver를 재정의하거나 Canvas 출력을 위조합니다. 안티봇 스크립트는 이를 간파합니다. 수정은 브라우저 엔진 수준에서 이루어져야 합니다.
Camoufox(Firefox 포크)는 C++ 구현에서 지문 값을 수정하여, 위조된 속성이 어떤 검사에도 네이티브로 보이게 합니다. CDP를 전혀 사용하지 않으며, 페이지 스크립트는 자동화 코드를 볼 수 없습니다.
실용적으로 만들기: CLI 래퍼
Camoufox에는 Python SDK만 있어, 에이전트가 모든 브라우저 작업에 대해 일회용 Python 스크립트를 작성하고, 메서드 시그니처를 파악하고, 비동기 컨텍스트를 처리하고, 결과를 구문 분석해야 합니다. 각 페이지 방문은 상용구 코드에 토큰을 소모했습니다.
해결책은 이를 CLI로 감싸는 것입니다. 에이전트는 셸 명령을 호출하여 페이지를 열고, 요소를 클릭하고, 양식을 채웁니다. Python 스크립트 없음, 비동기 상용구 없음. 데몬이 명령 간에 브라우저를 살려두어 작업당 시작 비용을 제거합니다.
토큰 사용량을 줄이기 위해 CLI는 원시 HTML 대신 접근성 트리 스냅샷을 반환합니다. 각 요소는 상호작용을 위한 짧은 @ref 태그를 얻습니다. 상호작용 전용 모드는 버튼, 링크, 입력 필드를 제외한 모든 것을 제거합니다. HTML로 15,000 토큰이 드는 페이지가 상호작용 스냅샷으로는 800 토큰이 들 수 있습니다.
CLI, 스킬 및 소스 코드는 camoufox-cli에서 이용 가능합니다.
📖 전체 Source 읽기: r/openclaw
👀 See Also

로컬 35B MoE 모델, 에이전트 OS 코드 실패율 0% 달성
한 개발자가 멀티 에이전트 시스템의 런타임을 Qwen 3.6 35B A3B (MoE, 3B 활성 파라미터)로 전환한 후 코드 오류가 사라졌으며, 5계층 검증 게이트를 통해 100% 성공률을 달성했다고 보고했습니다.

클로드 코드 핸드오프를 위한 자동화된 세션 상태 관리
GitHub 프로젝트는 Claude 대화 전반에 걸쳐 실시간 세션 상태 파일(.claude/session-state.md)을 유지하는 자동화된 훅을 제공하여 자동 압축 컨텍스트 손실과 대화 중간 컨텍스트 저하 문제를 해결합니다. 이 시스템은 jq와 함께 4개의 bash 스크립트를 사용하여 중요한 이벤트와 파일 편집을 추적합니다.

AI가 번역 계층을 먹어버렸다: 에이전트 이후의 조직도
Ajey Gore는 AI가 직무를 대체한 것이 아니라 번역(task)을 먹어치웠다고 주장합니다. 조직도 중간(엔지니어링 매니저, 스크럼 마스터, 테크 리드)은 에이전트가 요구사항을 직접 코드로 변환하면서 줄어들고 있습니다.

에이전트 브라우저 프로토콜: AI 에이전트용 오픈소스 Chrome 포크, Mind2Web 벤치마크에서 90% 달성
에이전트 브라우저 프로토콜(ABP)은 각 작업 후 JavaScript와 시간을 정지시켜 웹 브라우징을 AI 에이전트용 멀티모달 채팅으로 변환하는 오픈소스 Chrome 포크입니다. Online Mind2Web 벤치마크에서 90.53%를 달성했으며, 단일 명령어로 Claude Code에 추가할 수 있습니다.