Busca, haz scraping, interactúa, rastrea, mapea y ejecuta trabajos de agentes directamente desde la terminal. La CLI de Firecrawl funciona por sí sola o con skills que los agentes de codificación con IA, como Codex, Claude Code, Cursor y OpenCode, pueden descubrir y usar automáticamente.
Instalación#
Si estás usando un agente de IA como Codex, Claude Code, Cursor u OpenCode, puedes instalar los Skills de Firecrawl a continuación y el agente los configurará por ti.
--allomite la selección de agente e inicializa todos los agentes detectados--browserabre el navegador automáticamente para la autenticación de Firecrawl
Después de instalar los Skills, reinicia tu agente para que pueda detectarlos.
También puedes instalar manualmente la CLI de Firecrawl de forma global usando npm:
Autenticación#
Antes de usar la CLI, debes autenticarte con tu clave de API de Firecrawl.
Algunos comandos de la CLI funcionan sin iniciar sesión. Si no tienes ninguna clave de API configurada, los comandos compatibles usan el nivel gratuito sin clave: gratis, pero con límites por IP. Consulta Límites de tasa para ver la lista actual de comandos sin clave y las advertencias. Regístrate para obtener una clave gratuita y consigue 1.000 créditos y límites más altos; la CLI la usará automáticamente una vez configurada.
Inicio de sesión#
Ver la configuración#
Cerrar sesión#
Conecta la CLI a Firecrawl autogestionado#
Primero, consigue que funcione un scraping con la guía de autogestión. Después, configura la CLI para que use esa API con --api-url o FIRECRAWL_API_URL:
Al utilizar una URL de API personalizada en lugar de https://api.firecrawl.dev, la CLI omite la autenticación mediante clave de API de Firecrawl Cloud. Esto coincide con el inicio rápido para redes de confianza, donde USE_DB_AUTHENTICATION=false.
Mantén una API sin autenticación en una red de confianza. Si añades un proxy de autenticación u otra capa de control de acceso, verifica que la CLI pueda enviar las credenciales que requiera esa capa antes de depender de esta opción.
La CLI solo puede invocar las capacidades habilitadas en tu implementación. Consulta la compatibilidad de funcionalidades autogestionadas antes de usar comandos exclusivos de Cloud o que dependan de proveedores.
Comprobar estado#
Comprueba la instalación, la autenticación y consulta los límites de velocidad (rate limits):
Genera la salida cuando esté listo:
- 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.
Comandos#
El comando oculto firecrawl browser ha quedado obsoleto para los flujos de trabajo de agentes. Usa primero firecrawl scrape <url> y luego firecrawl interact ... con la sesión de scraping resultante.
Scrape#
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.
Formatos de salida#
Opciones de Scrape#
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 | |
--full-page-screenshot | Tomar una captura de pantalla de la página completa | |
--include-tags <tags> | Etiquetas HTML a incluir (separadas por comas) | |
--exclude-tags <tags> | Etiquetas HTML a excluir (separadas por comas) | |
--schema <json> | esquema JSON para extracción estructurada | |
--schema-file <path> | Ruta al archivo de esquema JSON | |
--actions <json> | Array JSON de acciones para ejecutar durante el scrape | |
--actions-file <path> | Ruta al archivo JSON de acciones | |
--proxy <proxy> | Modo proxy para scraping (por ejemplo, auto o basic) | |
--redact-pii | Redactar la información de identificación personal del contenido devuelto | |
--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 |
Buscar#
Busca en la web y, opcionalmente, hace scraping de los resultados.
Opciones de búsqueda#
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: research, pdf, developer (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 máximo de espera en milisegundos (predeterminado: 60000) |
--ignore-invalid-urls | Excluir URLs no válidas para otros endpoints de Firecrawl |
--scrape | Hacer scraping de resultados de búsqueda |
--scrape-formats <formats> | formatos para contenido obtenido mediante scraping |
--only-main-content | Incluir solo el contenido principal al scraping (predeterminado: true) |
--json | Salida como JSON |
--output <path> | Guardar la salida en un archivo |
--pretty | Imprimir salida JSON con formato legible |
Desarrollador#
Busca en el Índice para desarrolladores: issues, pull requests fusionadas y archivos README de repositorios de código públicos, además de sitios de documentación seleccionados.
Opciones disponibles:
| Opción | Descripción |
|---|---|
--limit <number> | Número de resultados que se devolverán (predeterminado: 10, máx.: 100) |
--skills-only | Busca solo archivos de skills de agentes indexados (predeterminado: false) |
--json | Muestra la salida como JSON compacto |
--output <path> | Guarda la salida en un archivo |
--pretty | Formatea la salida JSON para facilitar su lectura |
Map#
Obtén rápidamente todas las URL de un sitio web.
Opciones de mapeo#
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 |
Interact#
Haz scraping de una página y luego interactúa con ella usando lenguaje natural o código. Interact usa el scraping más reciente de forma predeterminada, o puedes pasar un ID de scraping específico.
Opciones disponibles:
| Opción | Descripción |
|---|---|
-p, --prompt <text> | Prompt de IA (alternativa al argumento posicional) |
-c, --code <code> | Código que se ejecutará en la sesión activa de la página |
-s, --scrape-id <id> | ID de trabajo de scraping (predeterminado: último scraping) |
--python | Ejecuta el código como Python/Playwright |
--node | Ejecuta el código como Node.js/Playwright (predeterminado) |
--bash | Ejecuta el código como Bash |
--timeout <seconds> | Timeout en segundos (1-300, predeterminado: 30) |
--output <path> | Guarda la salida en un archivo |
--json | Salida en formato JSON |
Rastrear#
Rastrea todo un sitio web a partir de una URL.
Consultar el estado del rastreo#
Opciones de rastreo#
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 |
--scrape-options <json> | Opciones de scraping en JSON que se pasan a cada página |
--scrape-options-file <path> | Ruta al archivo JSON de opciones de scraping |
--webhook <url-or-json> | URL o configuración del webhook |
--cancel | Cancelar un trabajo de rastreo activo mediante el ID de trabajo |
--output <path> | Guardar el resultado en un archivo |
--pretty | Imprimir la salida JSON con formato legible |
Monitor#
Crea scrapes o crawls recurrentes que calculen las diferencias de cada ejecución con respecto a la instantánea anterior. Añade un objetivo cuando quieras que Firecrawl determine qué páginas modificadas son relevantes para tu caso de uso.
Los objetivos del monitor deben ser breves y fieles a la intención del usuario: indica qué debe activar una alerta, reformula cualquier alcance especificado e incluye exclusiones solo cuando sean obvias o se soliciten explícitamente. Si el usuario pide "cualquier cambio", mantén el objetivo amplio.
Opciones disponibles:
| Opción | Descripción |
|---|---|
--name <name> | Nombre del monitor |
--goal <goal> | Objetivo para evaluar cambios significativos |
--cron <expression> | Programación cron, por ejemplo */30 * * * * |
--schedule <text> | Programación en lenguaje natural, por ejemplo hourly |
--timezone <tz> | Zona horaria de la programación, predeterminada UTC |
--page <url> | URL de una sola página para hacer scraping en cada comprobación |
--scrape-urls <list> | URLs de páginas separadas por comas para hacer scraping en cada comprobación |
--crawl-url <url> | URL raíz de un objetivo de rastreo |
--webhook-url <url> | Destino del webhook |
--webhook-events <list> | Eventos del monitor separados por comas |
--email <list> | Destinatarios de correo electrónico separados por comas |
--retention-days <n> | Periodo de retención de snapshots |
--page-status <state> | Filtrar páginas en monitor check |
--state <state> | Establecer el estado del monitor en monitor update: active/paused |
Agente#
Busca y recopila datos de la web usando indicaciones en lenguaje natural.
Opciones del agente#
Opciones disponibles:
| Opción | Descripción |
|---|---|
--urls <urls> | Lista opcional de URL en las que enfocar el agente (separadas por comas) |
--model <model> | Modelo que se utilizará. El valor predeterminado es spark-2, el modelo con el que se ejecutan todas las ejecuciones. Los modelos Spark 1 están obsoletos y se redirigen a spark-2 |
--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) |
--webhook <url-or-json> | URL o configuración del webhook |
--status | Consultar el estado de un trabajo de agente existente |
--cancel | Cancelar un trabajo de agente activo mediante el ID de trabajo |
--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 |
Uso de créditos#
Consulta el saldo y el uso de créditos de tu equipo.
Versión#
Mostrar la versión de la CLI.
Opciones globales#
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 autogestionados/desarrollo local) | |
--help | -h | Muestra la ayuda para un comando |
--version | -V | Muestra la versión de la CLI |
init también acepta --skip-auth, --skip-install, --skip-skills y --agent <name>. Consulta firecrawl init --help.
Manejo de la salida#
La CLI envía la salida a stdout de forma predeterminada, lo que facilita usarla en pipes o redirigirla:
Comportamiento de los formatos#
- Un solo formato: Devuelve contenido sin procesar (texto markdown, HTML, etc.)
- Varios formatos: Devuelve JSON con todos los datos solicitados
Ejemplos#
Scrape rápido#
Rastreo completo del sitio web#
Descubrimiento de sitios web#
Flujo de trabajo de investigación#
Agente#
Combínalo con otras herramientas#
Telemetría#
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:
Código abierto#
La CLI de Firecrawl y los tres segmentos de skills son de código abierto en GitHub:
firecrawl/cli— la CLI y las skills de CLI (trabajo web en vivo)firecrawl/skills— skills de Build (integrar Firecrawl en el código de la aplicación)firecrawl/firecrawl-workflows— skills de flujo de trabajo (entregables repetibles, como informes de investigación, auditorías SEO, listas de leads y clones de diseño)
¿Eres un agente de IA que necesita una clave de API de Firecrawl? Consulta firecrawl.dev/agent-onboarding/SKILL.md para obtener instrucciones de incorporación automatizada.

