Busca, haz scraping e interactúa con la web directamente desde la terminal. La CLI de Evocrawl funciona de forma independiente o como un Skill que los agentes de IA para programación, como Claude Code, Antigravity y OpenCode, pueden descubrir y usar automáticamente.
Si estás usando un agente de IA como Claude Code, puedes instalar el Skill de Evocrawl a continuación y el agente lo configurará por ti.
npx -y evocrawl-cli@latest init --all --browser
--all instala el Skill de Evocrawl en todos los agentes de codificación con IA detectados
--browser abre el navegador automáticamente para la autenticación de Evocrawl
After installing the skill, restart your agent for it to discover the new skill.
También puedes instalar manualmente la CLI de Evocrawl de forma global usando npm:
# Instalar globalmente con npm
npm install -g evocrawl-cli
Antes de usar la CLI, primero debes autenticarte con tu clave de API de Evocrawl.
# Inicio de sesión interactivo (abre el navegador o solicita la clave API)
evocrawl login
# Inicio de sesión con autenticación por navegador (recomendado para agentes)
evocrawl login --browser
# Inicio de sesión con clave API directamente
evocrawl login --api-key fc-YOUR-API-KEY
# O establecer mediante variable de entorno
export EVOCRAWL_API_KEY=fc-YOUR-API-KEY
# Ver configuración actual y estado de autenticación
evocrawl view-config
# Borrar credenciales almacenadas
evocrawl logout
Autohospedado / Desarrollo local
Para instancias de Evocrawl autohospedadas o desarrollo local, usa la opción --api-url:
# Usa una instancia local de Evocrawl (no requiere clave de API)
evocrawl --api-url http://localhost:3002 scrape https://example.com
# Or set via environment variable
export EVOCRAWL_API_URL=http://localhost:3002
evocrawl scrape https://example.com
# Configure and persist the custom API URL
evocrawl config --api-url http://localhost:3002
Cuando uses una URL de la API personalizada (cualquier valor distinto de https://api.evocrawl.com), la autenticación con clave de API se omite automáticamente, lo que te permite usar instancias locales sin una clave de API.
Comprueba la instalación, la autenticación y consulta los límites de velocidad (rate limits):
Genera la salida cuando esté listo:
evocrawl cli v1.1.1
● Authenticated via EVOCRAWL_API_KEY
Concurrency: 0/100 jobs (parallel scrape limit)
Credits: 500,000 remaining
- Concurrencia: Máximo de tareas en paralelo. Ejecuta operaciones en paralelo lo más cerca posible de este límite, pero sin superarlo.
- Créditos: Créditos de API restantes. Cada operación de scrape/crawl consume créditos.
Extrae el contenido de una única URL en distintos formatos.
Usa --only-main-content para obtener una salida limpia sin navegación, pies de página ni anuncios. Se recomienda para la mayoría de los casos de uso en los que solo quieres el artículo o el contenido principal de la página.
# Extraer datos de una URL (predeterminado: salida en markdown)
evocrawl https://example.com
# O usar el comando explícito de scrape
evocrawl scrape https://example.com
# Recomendado: usar --only-main-content para obtener una salida limpia sin navegación/pie de página
evocrawl https://example.com --only-main-content
# Obtener salida HTML
evocrawl https://example.com --html
# Múltiples formatos (devuelve JSON)
evocrawl https://example.com --format markdown,links
# Obtener imágenes de una página
evocrawl https://example.com --format images
# Obtener un resumen del contenido de la página
evocrawl https://example.com --format summary
# Rastrear cambios en una página
evocrawl https://example.com --format changeTracking
# Formatos disponibles: markdown, html, rawHtml, links, screenshot, json, images, summary, changeTracking, attributes, branding
# Extraer solo el contenido principal (elimina navegación y pies de página)
evocrawl https://example.com --only-main-content
# Wait for JavaScript rendering
evocrawl https://example.com --wait-for 3000
# Take a screenshot
evocrawl https://example.com --screenshot
# Include/exclude specific HTML tags
evocrawl https://example.com --include-tags article,main
evocrawl https://example.com --exclude-tags nav,footer
# Save output to file
evocrawl https://example.com -o output.md
# Pretty print JSON output
evocrawl https://example.com --format markdown,links --pretty
# Force JSON output even with single format
evocrawl https://example.com --json
# Show request timing information
evocrawl https://example.com --timing
Opciones disponibles:
| Opción | Alias | Descripción |
|---|
--url <url> | -u | URL para hacer scrape (alternativa al argumento posicional) |
--format <formats> | -f | Formatos de salida (separados por comas): markdown, html, rawHtml, links, screenshot, json, images, summary, seguimientoDeCambios, attributes, branding |
--html | -H | Atajo para --format html |
--only-main-content | | Extraer solo el contenido principal |
--wait-for <ms> | | Tiempo de espera en milisegundos para el renderizado de JS |
--screenshot | | Tomar una captura de pantalla |
--include-tags <tags> | | Etiquetas HTML a incluir (separadas por comas) |
--exclude-tags <tags> | | Etiquetas HTML a excluir (separadas por comas) |
--output <path> | -o | Guardar la salida en un archivo |
--json | | Forzar salida JSON incluso con un solo formato |
--pretty | | Imprimir el JSON de salida con formato |
--timing | | Mostrar el tiempo de la solicitud y otra información útil |
Busca en la web y, opcionalmente, hace scraping de los resultados.
# Buscar en la web
evocrawl search "web scraping tutorials"
# Limitar resultados
evocrawl search "AI news" --limit 10
# Imprimir resultados con formato
evocrawl search "machine learning" --pretty
# Search specific sources
evocrawl search "AI" --sources web,news,images
# Search with category filters
evocrawl search "react hooks" --categories github
evocrawl search "machine learning" --categories research,pdf
# Time-based filtering
evocrawl search "tech news" --tbs qdr:h # Last hour
evocrawl search "tech news" --tbs qdr:d # Last day
evocrawl search "tech news" --tbs qdr:w # Última semana
evocrawl search "tech news" --tbs qdr:m # Last month
evocrawl search "tech news" --tbs qdr:y # Last year
# Location-based search
evocrawl search "restaurants" --location "Berlin,Germany" --country DE
# Search and scrape results
evocrawl search "documentation" --scrape --scrape-formats markdown
# Save to file
evocrawl search "evocrawl" --pretty -o results.json
Opciones disponibles:
| Opción | Descripción |
|---|
--limit <number> | Número máximo de resultados (predeterminado: 5, máximo: 100) |
--sources <sources> | Fuentes de búsqueda: web, images, news (separadas por comas) |
--categories <categories> | Filtrar por categoría: github, research, pdf (separadas por comas) |
--tbs <value> | Filtro de tiempo: qdr:h (hora), qdr:d (día), qdr:w (semana), qdr:m (mes), qdr:y (año) |
--location <location> | Segmentación geográfica (p. ej., “Berlin,Germany”) |
--country <code> | Código de país ISO (predeterminado: US) |
--timeout <ms> | Tiempo de espera en milisegundos (predeterminado: 60000) |
--ignore-invalid-urls | Excluir URLs no válidas para otros endpoints de Evocrawl |
--scrape | Extraer resultados de búsqueda |
--scrape-formats <formats> | formatos para contenido extraído (predeterminado: markdown) |
--only-main-content | Incluir solo el contenido principal al extraer (predeterminado: true) |
--json | Salida como JSON |
--output <path> | Guardar la salida en un archivo |
--pretty | Imprimir salida JSON con formato legible |
Obtén rápidamente todas las URL de un sitio web.
# Descubre todas las URLs de un sitio web
evocrawl map https://example.com
# Output as JSON
evocrawl map https://example.com --json
# Limit number of URLs
evocrawl map https://example.com --limit 500
# Filter URLs by search query
evocrawl map https://example.com --search "blog"
# Include subdomains
evocrawl map https://example.com --include-subdomains
# Control sitemap usage
evocrawl map https://example.com --sitemap include # Use sitemap
evocrawl map https://example.com --sitemap skip # Skip sitemap
evocrawl map https://example.com --sitemap only # Solo usar sitemap
# Ignore query parameters (dedupe URLs)
evocrawl map https://example.com --ignore-query-parameters
# Wait for map to complete with timeout
evocrawl map https://example.com --wait --timeout 60
# Save to file
evocrawl map https://example.com -o urls.txt
evocrawl map https://example.com --json --pretty -o urls.json
Opciones disponibles:
| Opción | Descripción |
|---|
--url <url> | URL que se va a mapear (alternativa al argumento posicional) |
--limit <number> | Número máximo de URLs a descubrir |
--search <query> | Filtrar URLs por consulta de búsqueda |
--sitemap <mode> | Manejo del sitemap: include, skip, only |
--include-subdomains | Incluir subdominios |
--ignore-query-parameters | Tratar URLs con distintos parámetros de consulta como la misma |
--wait | Esperar a que finalice el mapeo |
--timeout <seconds> | Tiempo de espera en segundos |
--json | Salida en formato JSON |
--output <path> | Guardar la salida en un archivo |
--pretty | Imprimir la salida JSON con formato legible |
Haz que tus agentes interactúen con la web usando un entorno aislado de navegador seguro.
Inicia sesiones de navegador en la nube y ejecuta código en Python, JavaScript o bash de forma remota. Cada sesión ejecuta una instancia completa de Chromium — no necesitas tener un navegador instalado localmente. El código se ejecuta del lado del servidor con un objeto page de Playwright preconfigurado y listo para usar.
# Launch a cloud browser session
evocrawl browser launch-session
# Ejecutar comandos de agent-browser (por defecto - "agent-browser" se añade automáticamente como prefijo)
evocrawl browser execute "open https://example.com"
evocrawl browser execute "snapshot"
evocrawl browser execute "click @e5"
evocrawl browser execute "scrape"
# Execute Playwright Python code
evocrawl browser execute --python 'await page.goto("https://example.com")
print(await page.title())'
# Execute Playwright JavaScript code
evocrawl browser execute --node 'await page.goto("https://example.com"); console.log(await page.title());'
# List all sessions (or: list active / list destroyed)
evocrawl browser list
# Close the active session
evocrawl browser close
# Launch with custom TTL (10 minutes) and live view
evocrawl browser launch-session --ttl 600 --stream
# Launch with inactivity timeout
evocrawl browser launch-session --ttl 120 --ttl-inactivity 60
# Comandos de agent-browser (por defecto - "agent-browser" se agrega automáticamente como prefijo)
evocrawl browser execute "open https://news.ycombinator.com"
evocrawl browser execute "snapshot"
evocrawl browser execute "click @e3"
evocrawl browser execute "scrape"
# Playwright Python - navigate, interact, extract
evocrawl browser execute --python '
await page.goto("https://news.ycombinator.com")
items = await page.query_selector_all(".titleline > a")
for item in items[:5]:
print(await item.text_content())
'
# Playwright JavaScript - same page object
evocrawl browser execute --node '
await page.goto("https://example.com");
const title = await page.title();
console.log(title);
'
# Explicit bash mode - runs in the sandbox
evocrawl browser execute --bash "agent-browser snapshot"
# Target a specific session
evocrawl browser execute --session <id> --python 'print(await page.title())'
# Save output to file
evocrawl browser execute "scrape" -o result.txt
# Close a specific session
evocrawl browser close --session <id>
# List sessions (all / active / destroyed)
evocrawl browser list
evocrawl browser list active --json
Subcomandos:
| Subcomando | Descripción |
|---|
launch-session | Inicia una nueva sesión de navegador en la nube (devuelve el ID de sesión, la URL de CDP y la URL de vista en vivo) |
execute <code> | Ejecuta código Playwright en Python/JS o comandos bash en una sesión |
list [status] | Lista las sesiones de navegador (filtra por active o destroyed) |
close | Cierra una sesión de navegador |
Opciones de ejecución:
| Opción | Descripción |
|---|
--bash | Ejecuta comandos bash de forma remota en el entorno aislado (sandbox) (predeterminado). agent-browser (más de 40 comandos) viene preinstalado y se añade automáticamente como prefijo. CDP_URL se inyecta automáticamente para que agent-browser se conecte a tu sesión de forma automática. La mejor opción para agentes de IA. |
--python | Ejecuta como código Playwright en Python. Hay disponible un objeto page de Playwright — usa await page.goto(), await page.title(), etc. |
--node | Ejecuta como código Playwright en JavaScript. El mismo objeto page está disponible. |
--session <id> | Apunta a una sesión específica (predeterminado: sesión activa) |
Opciones de lanzamiento:
| Opción | Descripción |
|---|
--ttl <seconds> | TTL total de la sesión (predeterminado: 600, rango: 30–3600) |
--ttl-inactivity <seconds> | Cierre automático tras inactividad (rango: 10–3600) |
--profile <name> | Nombre del perfil (guarda y reutiliza el estado del navegador entre sesiones) |
--no-save-changes | Carga los datos de un perfil existente sin guardar los cambios |
--stream | Habilita la transmisión de la vista en vivo |
Opciones comunes:
| Opción | Descripción |
|---|
--output <path> | Guarda la salida en un archivo |
--json | Genera la salida en formato JSON |
Rastrea todo un sitio web a partir de una URL.
# Iniciar un rastreo (devuelve el ID del trabajo inmediatamente)
evocrawl crawl https://example.com
# Wait for crawl to complete
evocrawl crawl https://example.com --wait
# Wait with progress indicator
evocrawl crawl https://example.com --wait --progress
Consultar el estado del rastreo
# Verificar estado del crawl usando el ID del trabajo
evocrawl crawl <job-id>
# Ejemplo con un ID de trabajo real
evocrawl crawl 550e8400-e29b-41d4-a716-446655440000
# Limit crawl depth and pages
evocrawl crawl https://example.com --limit 100 --max-depth 3 --wait
# Include only specific paths
evocrawl crawl https://example.com --include-paths /blog,/docs --wait
# Exclude specific paths
evocrawl crawl https://example.com --exclude-paths /admin,/login --wait
# Include subdomains
evocrawl crawl https://example.com --allow-subdomains --wait
# Crawl entire domain
evocrawl crawl https://example.com --crawl-entire-domain --wait
# Rate limiting
evocrawl crawl https://example.com --delay 1000 --max-concurrency 2 --wait
# Intervalo de consulta y tiempo de espera personalizados
evocrawl crawl https://example.com --wait --poll-interval 10 --timeout 300
# Save results to file
evocrawl crawl https://example.com --wait --pretty -o results.json
Opciones disponibles:
| Opción | Descripción |
|---|
--url <url> | URL a rastrear (alternativa al argumento posicional) |
--wait | Esperar a que el rastreo termine |
--progress | Mostrar indicador de progreso mientras se espera |
--poll-interval <seconds> | Intervalo de sondeo (por defecto: 5) |
--timeout <seconds> | Tiempo máximo de espera |
--status | Consultar el estado de un trabajo de rastreo existente |
--limit <number> | Número máximo de páginas a rastrear |
--max-depth <number> | Profundidad máxima de rastreo |
--include-paths <paths> | Rutas a incluir (separadas por comas) |
--exclude-paths <paths> | Rutas a excluir (separadas por comas) |
--sitemap <mode> | Manejo del sitemap: include, skip, only |
--allow-subdomains | Incluir subdominios |
--allow-external-links | Seguir enlaces externos |
--crawl-entire-domain | Rastrear todo el dominio |
--ignore-query-parameters | Considerar URLs con distintos parámetros como iguales |
--delay <ms> | Retraso entre solicitudes |
--max-concurrency <n> | Número máximo de solicitudes concurrentes |
--output <path> | Guardar el resultado en un archivo |
--pretty | Imprimir la salida JSON con formato legible |
Busca y recopila datos de la web usando indicaciones en lenguaje natural.
# Basic usage - URLs are optional
evocrawl agent "Encuentra las 5 principales startups de IA y sus montos de financiamiento" --wait
# Focus on specific URLs
evocrawl agent "Compare pricing plans" --urls https://slack.com/pricing,https://teams.microsoft.com/pricing --wait
# Use a schema for structured output
evocrawl agent "Get company information" --urls https://example.com --schema '{"name": "string", "founded": "number"}' --wait
# Use schema from a file
evocrawl agent "Get product details" --urls https://example.com --schema-file schema.json --wait
# Use Spark 1 Pro for higher accuracy
evocrawl agent "Competitive analysis across multiple domains" --model spark-1-pro --wait
# Set max credits to limit costs
evocrawl agent "Gather contact information from company websites" --max-credits 100 --wait
# Check status of an existing job
evocrawl agent <job-id> --status
# Custom polling interval and timeout
evocrawl agent "Summarize recent blog posts" --wait --poll-interval 10 --timeout 300
# Save output to file
evocrawl agent "Encontrar información de precios" --urls https://example.com --wait -o pricing.json --pretty
Opciones disponibles:
| Opción | Descripción |
|---|
--urls <urls> | Lista opcional de URL en las que enfocar el agente (separadas por comas) |
--model <model> | Modelo a utilizar: spark-1-mini (predeterminado, 60% más barato) o spark-1-pro (mayor precisión) |
--schema <json> | Esquema JSON para salida estructurada (cadena JSON en línea) |
--schema-file <path> | Ruta al archivo de esquema JSON para salida estructurada |
--max-credits <number> | Créditos máximos que se pueden gastar (el trabajo falla si se alcanza el límite) |
--status | Verificar el estado de un trabajo de agente existente |
--wait | Esperar a que el agente termine antes de devolver los resultados |
--poll-interval <seconds> | Intervalo de sondeo mientras se espera (predeterminado: 5) |
--timeout <seconds> | Tiempo máximo de espera (predeterminado: sin límite) |
--output <path> | Guardar la salida en un archivo |
--json | Salida en formato JSON |
Consulta el saldo y el uso de créditos de tu equipo.
# View credit usage
evocrawl credit-usage
# Salida en formato JSON
evocrawl credit-usage --json --pretty
Mostrar la versión de la CLI.
evocrawl version
# o
evocrawl --version
Estas opciones están disponibles para todos los comandos:
| Opción | Abrev. | Descripción |
|---|
--status | | Muestra la versión, el estado de autenticación, la concurrencia y los créditos |
--api-key <key> | -k | Sobrescribe la clave de API almacenada para este comando |
--api-url <url> | | Usa una URL de API personalizada (para entornos autoalojados/desarrollo local) |
--help | -h | Muestra la ayuda para un comando |
--version | -V | Muestra la versión de la CLI |
La CLI envía la salida a stdout de forma predeterminada, lo que facilita usarla en pipes o redirigirla:
# Canalizar markdown a otro comando
evocrawl https://example.com | head -50
# Redirigir a un archivo
evocrawl https://example.com > output.md
# Guardar JSON con formato legible
evocrawl https://example.com --format markdown,links --pretty -o data.json
- Un solo formato: Devuelve contenido sin procesar (texto markdown, HTML, etc.)
- Varios formatos: Devuelve JSON con todos los datos solicitados
# Salida de markdown sin procesar
evocrawl https://example.com --format markdown
# Salida JSON con múltiples formatos
evocrawl https://example.com --format markdown,links
# Obtener contenido markdown de una URL (usar --only-main-content para una salida limpia)
evocrawl https://docs.evocrawl.com --only-main-content
# Get HTML content
evocrawl https://example.com --html -o page.html
Rastreo completo del sitio web
# Rastrear un sitio de documentación con límites
evocrawl crawl https://docs.example.com --limit 50 --max-depth 2 --wait --progress -o docs.json
Descubrimiento de sitios web
# Buscar todas las publicaciones del blog
evocrawl map https://example.com --search "blog" -o blog-urls.txt
Flujo de trabajo de investigación
# Buscar y extraer resultados para investigación
evocrawl search "machine learning best practices 2024" --scrape --scrape-formats markdown --pretty
# URLs are optional
evocrawl agent "Encuentra las 5 principales startups de IA y sus montos de financiación" --wait
# Focus on specific URLs
evocrawl agent "Compare pricing plans" --urls https://slack.com/pricing,https://teams.microsoft.com/pricing --wait
Automatización del navegador
# Launch a session, scrape a page, and close
evocrawl browser launch-session
evocrawl browser execute "open https://news.ycombinator.com"
evocrawl browser execute "snapshot"
evocrawl browser execute "scrape"
evocrawl browser close
# Usar agent-browser mediante modo bash (predeterminado — recomendado para agentes de IA)
evocrawl browser launch-session
evocrawl browser execute "open https://example.com"
evocrawl browser execute "snapshot"
# snapshot returns @ref IDs — use them to interact
evocrawl browser execute "click @e5"
evocrawl browser execute "fill @e3 'search query'"
evocrawl browser execute "scrape"
# Run --help to see all 40+ commands
evocrawl browser execute --bash "agent-browser --help"
evocrawl browser close
# Extract URLs from search results
jq -r '.data.web[].url' search-results.json
# Obtener títulos de resultados de búsqueda
jq -r '.data.web[] | "\(.title): \(.url)"' search-results.json
# Extract links and process with jq
evocrawl https://example.com --format links | jq '.links[].url'
# Count URLs from map
evocrawl map https://example.com | wc -l
La CLI recopila datos de uso anónimos durante la autenticación para ayudar a mejorar el producto:
- Versión de la CLI, sistema operativo y versión de Node.js
- Detección de herramientas de desarrollo (por ejemplo, Cursor, VS Code, Claude Code)
No se recopilan datos de comandos, URL ni contenido de archivos a través de la CLI.
Para desactivar la telemetría, configura la siguiente variable de entorno:
export EVOCRAWL_NO_TELEMETRY=1
La CLI y la Skill de Evocrawl son de código abierto y están disponibles en GitHub: evocrawl/cli
¿Eres un agente de IA que necesita una clave de API de Evocrawl? Consulta evocrawl.dev/agent-onboarding/SKILL.md para obtener instrucciones de incorporación automatizada.