Un navegador antidetect en un solo docker run
Descarga la imagen oficial y tendrás un navegador Clearcote escuchando en un puerto CDP. Apunta Playwright, Puppeteer, browser-use, Crawl4AI o Stagehand hacia él y tu código queda tal cual. La imagen lanza el binario directamente, sin el flag de automatización, y navigator.webdriver sigue en false.
La imagen ejecuta el build abierto sin clave. Agrega una clave gratuita de GitHub para usar el build más reciente.
Ejecútalo y conéctate
# CDP on http://localhost:9222, published to this host only
docker run -d --rm -p 127.0.0.1:9222:9222 --shm-size=1g teamflatearth/clearcoteLo más destacado
Un binario verificado, ya incluido
La imagen trae el build abierto para Linux verificado con SHA-256 y clones con métricas compatibles de las fuentes comunes de Windows, así que el texto latino mide lo mismo que con las fuentes de la persona. El paquete de fuentes del build abierto no incluye tipografías CJK; el del build con licencia sí.
Configurado con variables de entorno
Seed, plataforma, marca, idioma, zona horaria y perfil TLS son variables de entorno CC_*. No hay código que mantener dentro del contenedor.
El build más reciente cuando lo pidas
Configura CLEARCOTE_LICENSE_KEY y el contenedor obtiene el build con licencia más reciente o, en Pro, uno fijado con CC_VERSION.
serve() y una CLI
¿No usas Docker? serve() en Python, Node o .NET, o clearcote serve desde una terminal, hace el mismo lanzamiento directo y te da una URL de CDP.
Cualquier cliente CDP
connectOverCDP de Playwright, puppeteer.connect, browser-use, Crawl4AI, Stagehand o el DevTools Protocol directamente en el puerto.
Un Dockerfile auditable
El Dockerfile y su entrypoint están en el repositorio público, así que puedes leer exactamente qué instala y ejecuta la imagen, y construirla tú mismo. Eso cubre la imagen y el build abierto que incluye; con una clave de licencia, el contenedor descarga el motor con licencia al iniciar.
Cómo está configurado el contenedor
El contenedor inicia Clearcote directamente, no a través de un driver de pruebas, y expone el Chrome DevTools Protocol en el puerto 9222. El lanzamiento directo es la clave: los frameworks de automatización agregan flags de lanzamiento que los delatan, y un endpoint permanente iniciado por la imagen nunca los pasa.
La persona por defecto es una identidad nativa de Linux coherente, y ese valor por defecto es deliberado. Parte de lo que una página puede leer viene del sistema operativo que hay debajo del navegador: en un contenedor Linux, FreeType da forma al texto y las fuentes vienen de fontconfig, diga lo que diga el user agent. Medido en esta imagen con una persona de Windows, un paso de 0.01 px en el tamaño de fuente cambió el ancho del texto en el 66% de los pasos, frente al 99% en un Chrome real en Windows. Para una identidad de Windows, ejecuta el build de Windows o usa navegadores alojados, que corren en máquinas Windows.
Un contenedor con licencia descarga su motor en el primer inicio y obtiene una concesión de concurrencia, así que necesita acceso saliente a la API de licencias. Monta el volumen de caché para que el motor se descargue una sola vez y no en cada contenedor nuevo.
Qué se conecta por CDP
| Cliente | Cómo |
|---|---|
| Playwright | chromium.connect_over_cdp(url) / connectOverCDP(url) |
| Puppeteer | puppeteer.connect({ browserURL: url, defaultViewport: null }) |
| browser-use · Crawl4AI · Stagehand | Apunta su opción de endpoint CDP a la URL |
| Cualquier otro cliente que hable CDP | El DevTools Protocol directamente en el puerto publicado |
Para qué se usa
Scrapers en Compose o Kubernetes
Un servicio de navegador junto a tus workers, configurado por completo con variables de entorno.
Frameworks de agentes
Dale a browser-use, Crawl4AI o Stagehand una URL de CDP en lugar de un Chrome local.
CI reproducible
Un tag de imagen fijado le da el mismo build abierto a cada ejecución del pipeline; con una clave de licencia, solo CC_VERSION de Pro fija el build con licencia.
Cualquier lenguaje
Cualquier cosa con un cliente CDP, desde Python y Node hasta Go o Rust, puede controlar el endpoint.
Clearcote está hecho para la privacidad, las pruebas, la investigación y la automatización lícita. Tú eres responsable de cómo lo usas y de respetar los términos de los sitios que visitas.
Qué plan lo incluye
La imagen de Docker, serve() y el endpoint CDP están en todos los planes. La imagen ejecuta el build abierto por defecto; pasa una clave de licencia (gratis con GitHub para un navegador a la vez) para ejecutar el build más reciente. El límite de un navegador de una clave gratuita aplica al conjunto de tus contenedores.
Preguntas frecuentes
¿Qué imagen de Docker es?
teamflatearth/clearcote en Docker Hub, construida a partir del Dockerfile del repositorio público clearcote-browser. Ejecuta docker pull teamflatearth/clearcote para actualizar una copia antigua.
¿Es seguro publicar el puerto 9222?
Solo en una red de confianza. Un endpoint CDP da control total del navegador. Publícalo solo en el host con -p 127.0.0.1:9222:9222, o mantenlo en una red privada, y nunca lo expongas en una interfaz pública.
¿Puede el contenedor presentar una identidad de Windows?
Puedes configurar CC_PLATFORM=windows, pero en un contenedor Linux las métricas de fuentes y las fuentes del sistema siguen viniendo de Linux, y un test de huella digital lo nota. La persona de Linux por defecto es coherente. Para una identidad de Windows, ejecuta el build de Windows en Windows o usa navegadores alojados.
¿Cómo ejecuto el build con licencia en Docker?
Configura CLEARCOTE_LICENSE_KEY y monta un volumen en /opt/xdg-cache para que el motor se descargue una sola vez. Necesitas una imagen construida con el SDK 0.26.1 o posterior, y 0.30.0 o posterior para una clave gratuita de GitHub. El log de inicio indica qué motor obtuviste y si se consiguió la concesión de la licencia.
¿Por qué navigator.webdriver sigue en false?
El motor ya no lo activa a partir de --enable-automation, el flag que usa la automatización estándar, y de todos modos la imagen inicia el navegador sin ese flag. Conectar después un cliente por CDP no lo cambia.
Profundiza en la documentación
Características relacionadas
Inicia un navegador Clearcote en la nube con una llamada a la API y conecta Playwright o Puppeteer por CDP. IP residencial incluida, facturación por GB de tráfico.
Dale a browser-use, Stagehand, Crawl4AI o tu propio agente un Chromium con identidad a nivel del motor, o ejecuta el agente opcional de Clearcote integrado en el navegador con tu propio modelo.
Dale a Claude Desktop, Cursor o Cline un navegador Clearcote a través del Model Context Protocol: veinte herramientas y una identidad coherente por debajo.
Un Chromium de reemplazo directo para Playwright y Puppeteer: un solo cambio de import en Python, Node o .NET, y el navegador se descarga y se verifica con SHA-256 por ti.
Lecturas relacionadas
Prueba Clearcote
Un reemplazo directo para Playwright y Puppeteer, coherente hasta el handshake TLS, con un build de código abierto para empezar.
Gratis para un navegador con GitHub. Sin tarjeta.