# CLI

> Les skills Firecrawl permettent simplement aux agents IA comme Codex, Claude Code, Cursor et OpenCode d’utiliser Firecrawl via la CLI.

import InstallationCLI from "/snippets/fr/v2/cli/installation/bash.mdx";
import AuthLogin from "/snippets/fr/v2/cli/auth/login.mdx";
import AuthLogout from "/snippets/fr/v2/cli/auth/logout.mdx";
import AuthConfig from "/snippets/fr/v2/cli/auth/config.mdx";
import AuthSelfHosted from "/snippets/fr/v2/cli/auth/self-hosted.mdx";
import ScrapeBasic from "/snippets/fr/v2/cli/scrape/basic.mdx";
import ScrapeFormats from "/snippets/fr/v2/cli/scrape/formats.mdx";
import ScrapeOptions from "/snippets/fr/v2/cli/scrape/options.mdx";
import CrawlBasic from "/snippets/fr/v2/cli/crawl/basic.mdx";
import CrawlStatus from "/snippets/fr/v2/cli/crawl/status.mdx";
import CrawlOptions from "/snippets/fr/v2/cli/crawl/options.mdx";
import MapBasic from "/snippets/fr/v2/cli/map/basic.mdx";
import MapOptions from "/snippets/fr/v2/cli/map/options.mdx";
import SearchBasic from "/snippets/fr/v2/cli/search/basic.mdx";
import SearchOptions from "/snippets/fr/v2/cli/search/options.mdx";
import AgentBasic from "/snippets/fr/v2/cli/agent/basic.mdx";
import AgentOptions from "/snippets/fr/v2/cli/agent/options.mdx";
import InteractCLI from "/snippets/fr/v2/interact/quickstart/cli.mdx";

Recherchez, scrapez, interagissez, lancez des crawls, cartographiez et exécutez des tâches d’agent directement depuis le terminal. Le CLI Firecrawl fonctionne seul ou avec des skills que des agents IA de codage comme Codex, Claude Code, Cursor et OpenCode peuvent découvrir et utiliser automatiquement.

<div id="installation">
  ## Installation
</div>

Si vous utilisez un agent IA comme Codex, Claude Code, Cursor ou OpenCode, vous pouvez installer les skills Firecrawl ci-dessous et l’agent les configurera pour vous.

```bash
npx -y firecrawl-cli@latest init --all --browser
```

* `--all` ignore la sélection d’agent et initialise tous les agents détectés
* `--browser` ouvre automatiquement le navigateur pour l’authentification Firecrawl

<Note>
  Après avoir installé les skills, redémarrez votre agent pour qu’il les détecte.
</Note>

Vous pouvez également installer manuellement la CLI Firecrawl au niveau global avec npm :

<InstallationCLI />

<div id="authentication">
  ## Authentification
</div>

Avant d’utiliser la CLI, vous devez vous authentifier avec votre clé API Firecrawl.

<Note>
  **Certaines commandes CLI fonctionnent sans vous connecter.** Si aucune clé API n’est configurée, les commandes prises en charge utilisent le niveau gratuit sans clé — gratuit, mais limité par IP. Voir [Limites de débit](/fr/rate-limits#keyless-no-api-key) pour la liste actuelle des commandes sans clé et les points à connaître. [Inscrivez-vous pour obtenir une clé gratuite](https://firecrawl.dev) et bénéficier de 1 000 crédits ainsi que de limites plus élevées ; la CLI l’utilise automatiquement une fois configurée.
</Note>

<div id="login">
  ### Connexion
</div>

<AuthLogin />

<div id="view-configuration">
  ### Afficher la configuration
</div>

<AuthConfig />

<div id="logout">
  ### Déconnexion
</div>

<AuthLogout />

<div id="connect-the-cli-to-self-hosted-firecrawl">
  ### Connecter la CLI à Firecrawl auto-hébergé
</div>

Commencez par réussir un scrape en suivant le [guide d’auto-hébergement](/fr/contributing/self-host). Pointez ensuite la CLI vers cette API avec `--api-url` ou `FIRECRAWL_API_URL` :

<AuthSelfHosted />

Lorsque vous utilisez une URL d’API personnalisée au lieu de `https://api.firecrawl.dev`, la CLI ignore l’authentification par clé API de Firecrawl Cloud. Cela correspond au démarrage rapide sur réseau de confiance, où `USE_DB_AUTHENTICATION=false`.

<Warning>
  Conservez une API non authentifiée sur un réseau de confiance. Si vous ajoutez un proxy
  d’authentification ou une autre couche de contrôle d’accès, vérifiez que la CLI peut envoyer les
  identifiants requis par cette couche avant de vous appuyer sur cette méthode.
</Warning>

La CLI ne peut appeler que les fonctionnalités activées dans votre déploiement. Consultez la [prise en charge des fonctionnalités auto-hébergées](/fr/contributing/self-host#self-hosted-feature-support) avant d’utiliser des commandes réservées au Cloud ou dépendantes d’un fournisseur.

<div id="check-status">
  ### Vérifier l&#39;état
</div>

Vérifiez l&#39;installation, l&#39;authentification et affichez les limites de débit :

```bash CLI
firecrawl --status
```

Sortie une fois prête :

```
  🔥 firecrawl cli v1.16.2

  ● Authenticated via FIRECRAWL_API_KEY
  Concurrency: 0/100 jobs (parallel scrape limit)
  Credits: 500,000 remaining
```

* **Concurrence** : Nombre maximal de tâches en parallèle. Exécutez des opérations parallèles au plus près de cette limite, sans la dépasser.
* **Crédits** : Crédits API restants. Chaque opération de `scrape`/`crawl` consomme des crédits.

<div id="commands">
  ## Commandes
</div>

<Note>
  La commande masquée `firecrawl browser` est dépréciée pour les workflows d’agents. Utilisez d’abord `firecrawl scrape <url>`, puis `firecrawl interact ...` avec la session de scrape ainsi obtenue.
</Note>

<div id="scrape">
  ### Scrape
</div>

Analysez une seule URL et extrayez son contenu dans différents formats.

<Tip>
  Utilisez `--only-main-content` pour obtenir un résultat propre sans navigation, pied de page ni publicités. C&#39;est recommandé pour la plupart des cas d&#39;usage où vous souhaitez uniquement l&#39;article ou le contenu principal de la page.
</Tip>

<ScrapeBasic />

<div id="output-formats">
  #### Formats de sortie
</div>

<ScrapeFormats />

<div id="scrape-options">
  #### Options de Scrape
</div>

<ScrapeOptions />

**Options disponibles :**

| Option                   | Forme courte | Description                                                                                                                                                                         |
| ------------------------ | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--url <url>`            | `-u`         | URL à Scrape (alternative à l&#39;argument positionnel)                                                                                                                             |
| `--format <formats>`     | `-f`         | formats de sortie (séparés par des virgules) : `markdown`, `html`, `rawHtml`, `links`, `screenshot`, `json`, `images`, `summary`, `suiviDesModifications`, `attributes`, `branding` |
| `--html`                 | `-H`         | Raccourci pour `--format html`                                                                                                                                                      |
| `--only-main-content`    |              | Extraire uniquement le contenu principal                                                                                                                                            |
| `--wait-for <ms>`        |              | Temps d&#39;attente en millisecondes pour le rendu JS                                                                                                                               |
| `--screenshot`           |              | Prendre une capture d&#39;écran                                                                                                                                                     |
| `--full-page-screenshot` |              | Prendre une capture d&#39;écran de la page entière                                                                                                                                  |
| `--include-tags <tags>`  |              | Balises HTML à inclure (séparées par des virgules)                                                                                                                                  |
| `--exclude-tags <tags>`  |              | Balises HTML à exclure (séparées par des virgules)                                                                                                                                  |
| `--schema <json>`        |              | Schéma JSON pour l&#39;extraction structurée                                                                                                                                        |
| `--schema-file <path>`   |              | Chemin du fichier de schéma JSON                                                                                                                                                    |
| `--actions <json>`       |              | Tableau JSON des actions à exécuter pendant le Scrape                                                                                                                               |
| `--actions-file <path>`  |              | Chemin du fichier JSON des actions                                                                                                                                                  |
| `--proxy <proxy>`        |              | Mode proxy pour le Scrape (par exemple, `auto` ou `basic`)                                                                                                                          |
| `--redact-pii`           |              | Masquer les informations personnellement identifiables dans le contenu renvoyé                                                                                                      |
| `--output <path>`        | `-o`         | Enregistrer la sortie dans un fichier                                                                                                                                               |
| `--json`                 |              | Forcer la sortie JSON même avec un seul format                                                                                                                                      |
| `--pretty`               |              | Afficher la sortie JSON de manière lisible                                                                                                                                          |
| `--timing`               |              | Afficher le temps de la requête et d&#39;autres informations utiles                                                                                                                 |

***

<div id="search">
  ### Recherche
</div>

Recherchez sur le Web et, si besoin, extrayez le contenu des résultats.

<SearchBasic />

<div id="search-options">
  #### Options de recherche
</div>

<SearchOptions />

**Options disponibles :**

| Option                       | Description                                                                                           |
| ---------------------------- | ----------------------------------------------------------------------------------------------------- |
| `--limit <number>`           | Nombre maximal de résultats (par défaut : 5, max : 100)                                               |
| `--sources <sources>`        | Sources à interroger : `web`, `images`, `news` (séparées par des virgules)                            |
| `--categories <categories>`  | Filtrer par catégorie : `research`, `pdf`, `developer` (séparées par des virgules)                    |
| `--tbs <value>`              | Filtre temporel : `qdr:h` (heure), `qdr:d` (jour), `qdr:w` (semaine), `qdr:m` (mois), `qdr:y` (année) |
| `--location <location>`      | Ciblage géographique (p. ex. &quot;Berlin,Germany&quot;)                                              |
| `--country <code>`           | Code de pays ISO (par défaut : US)                                                                    |
| `--timeout <ms>`             | Délai d&#39;expiration en millisecondes (par défaut : 60000)                                          |
| `--ignore-invalid-urls`      | Exclure les URL invalides pour d&#39;autres endpoints Firecrawl                                       |
| `--scrape`                   | Scraper les résultats de recherche                                                                    |
| `--scrape-formats <formats>` | Formats pour le contenu extrait (par défaut : markdown)                                               |
| `--only-main-content`        | Inclure uniquement le contenu principal lors du scraping (par défaut : true)                          |
| `--json`                     | Résultat au format JSON                                                                               |
| `--output <path>`            | Enregistrer le résultat dans un fichier                                                               |
| `--pretty`                   | Affichage JSON formaté                                                                                |

***

<div id="developer">
  ### Développeur
</div>

Effectuez des recherches dans le [Developer Index](/fr/features/developer) — tickets, pull requests fusionnées et fichiers README issus de dépôts de code publics, ainsi que sites de documentation sélectionnés.

```bash CLI
firecrawl developer "how do I configure retries" --limit 10
```

**Options disponibles :**

| Option             | Description                                                                            |
| ------------------ | -------------------------------------------------------------------------------------- |
| `--limit <number>` | Nombre de résultats à renvoyer (par défaut : 10, max. : 100)                           |
| `--skills-only`    | Rechercher uniquement les fichiers de compétences d’agent indexés (par défaut : false) |
| `--json`           | Afficher au format JSON compact                                                        |
| `--output <path>`  | Enregistrer la sortie dans un fichier                                                  |
| `--pretty`         | Formater la sortie JSON pour une meilleure lisibilité                                  |

***

<div id="map">
  ### Map
</div>

Découvrez rapidement toutes les URL d’un site.

<MapBasic />

<div id="map-options">
  #### Options de la commande Map
</div>

<MapOptions />

**Options disponibles :**

| Option                      | Description                                                        |
| --------------------------- | ------------------------------------------------------------------ |
| `--url <url>`               | URL à cartographier (alternative à l’argument positionnel)         |
| `--limit <number>`          | Nombre maximal d’URL à découvrir                                   |
| `--search <query>`          | Filtrer les URL selon une requête de recherche                     |
| `--sitemap <mode>`          | Gestion du sitemap : `include`, `skip`, `only`                     |
| `--include-subdomains`      | Inclure les sous-domaines                                          |
| `--ignore-query-parameters` | Considérer les URL avec des paramètres différents comme identiques |
| `--wait`                    | Attendre la fin de l’opération de cartographie                     |
| `--timeout <seconds>`       | Délai d’expiration en secondes                                     |
| `--json`                    | Résultat au format JSON                                            |
| `--output <path>`           | Enregistrer le résultat dans un fichier                            |
| `--pretty`                  | Affichage JSON mis en forme                                        |

***

<div id="interact">
  ### Interact
</div>

Scrapez une page, puis interagissez avec elle en langage naturel ou à l’aide de code. Interact utilise par défaut le dernier scrape, ou vous pouvez fournir un ID de scrape spécifique.

<InteractCLI />

**Options disponibles :**

| Option                 | Description                                           |
| ---------------------- | ----------------------------------------------------- |
| `-p, --prompt <text>`  | Prompt IA (alternative à l’argument positionnel)      |
| `-c, --code <code>`    | Code à exécuter dans la session active de la page     |
| `-s, --scrape-id <id>` | ID de tâche de scraping (par défaut : dernier scrape) |
| `--python`             | Exécuter le code en Python/Playwright                 |
| `--node`               | Exécuter le code en Node.js/Playwright (par défaut)   |
| `--bash`               | Exécuter le code en Bash                              |
| `--timeout <seconds>`  | Délai d’attente en secondes (1-300, par défaut : 30)  |
| `--output <path>`      | Enregistrer la sortie dans un fichier                 |
| `--json`               | Sortie au format JSON                                 |

***

<div id="crawl">
  ### Crawl
</div>

Lancer un crawl sur l&#39;ensemble d&#39;un site web à partir d&#39;une URL.

<CrawlBasic />

<div id="check-crawl-status">
  #### Consulter l&#39;état du crawl
</div>

<CrawlStatus />

<div id="crawl-options">
  #### Options de crawl
</div>

<CrawlOptions />

**Options disponibles :**

| Option                         | Description                                                        |
| ------------------------------ | ------------------------------------------------------------------ |
| `--url <url>`                  | URL à explorer (alternative à l’argument positionnel)              |
| `--wait`                       | Attendre la fin du crawl                                           |
| `--progress`                   | Afficher un indicateur de progression pendant l’attente            |
| `--poll-interval <seconds>`    | Intervalle d’interrogation (par défaut : 5)                        |
| `--timeout <seconds>`          | Délai d’expiration de l’attente                                    |
| `--status`                     | Vérifier l’état d’une tâche de crawl existante                     |
| `--limit <number>`             | Nombre maximal de pages à explorer                                 |
| `--max-depth <number>`         | Profondeur maximale du crawl                                       |
| `--include-paths <paths>`      | Chemins à inclure (séparés par des virgules)                       |
| `--exclude-paths <paths>`      | Chemins à exclure (séparés par des virgules)                       |
| `--sitemap <mode>`             | Gestion du sitemap : `include`, `skip`, `only`                     |
| `--allow-subdomains`           | Inclure les sous-domaines                                          |
| `--allow-external-links`       | Suivre les liens externes                                          |
| `--crawl-entire-domain`        | Explorer l’ensemble du domaine                                     |
| `--ignore-query-parameters`    | Considérer les URL avec des paramètres différents comme identiques |
| `--delay <ms>`                 | Délai entre les requêtes                                           |
| `--max-concurrency <n>`        | Nombre maximal de requêtes simultanées                             |
| `--scrape-options <json>`      | Options de scrape au format JSON transmises à chaque page          |
| `--scrape-options-file <path>` | Chemin vers le fichier JSON des options de scrape                  |
| `--webhook <url-or-json>`      | URL ou configuration du Webhook                                    |
| `--cancel`                     | Annuler une tâche de crawl active à l’aide de son ID de tâche      |
| `--output <path>`              | Enregistrer le résultat dans un fichier                            |
| `--pretty`                     | Afficher la sortie JSON formatée                                   |

***

<div id="monitor">
  ### Monitor
</div>

Créez des scrapes ou crawls récurrents qui comparent chaque exécution à l’instantané précédent. Ajoutez un objectif lorsque vous voulez que Firecrawl évalue quelles pages modifiées sont pertinentes pour votre cas d’usage.

```bash CLI
firecrawl monitor create --name "Hacker News AI" \
  --schedule "every 30 minutes" \
  --goal "Alert when a new Hacker News story related to AI enters the top 10. Ignore changes to stories that are not about AI. Do not alert on changes outside the top 10." \
  --page https://news.ycombinator.com

firecrawl monitor run <monitorId>
firecrawl monitor checks <monitorId> --limit 10
firecrawl monitor check <monitorId> <checkId> --page-status changed
firecrawl monitor update <monitorId> \
  --goal "Alert when a new Hacker News story related to AI enters the top 10. Do not alert on changes outside the top 10."
firecrawl monitor delete <monitorId>
```

Les objectifs du monitor doivent rester courts et fidèles à l’intention de l’utilisateur : indiquez ce qui doit déclencher une alerte, reformulez toute portée précisée et n’incluez des exclusions que lorsqu’elles sont évidentes ou explicitement demandées. Si l’utilisateur demande &quot;tout changement&quot;, gardez l’objectif large.

**Options disponibles :**

| Option                    | Description                                                             |
| ------------------------- | ----------------------------------------------------------------------- |
| `--name <name>`           | Nom du monitor                                                          |
| `--goal <goal>`           | Objectif pour évaluer les changements significatifs                     |
| `--cron <expression>`     | Planification cron, par exemple `*/30 * * * *`                          |
| `--schedule <text>`       | Planification en langage naturel, par exemple `hourly`                  |
| `--timezone <tz>`         | Fuseau horaire de la planification, `UTC` par défaut                    |
| `--page <url>`            | URL d’une seule page à scraper à chaque vérification                    |
| `--scrape-urls <list>`    | URL de pages à scraper à chaque vérification, séparées par des virgules |
| `--crawl-url <url>`       | URL racine de la cible de crawl                                         |
| `--webhook-url <url>`     | Destination du Webhook                                                  |
| `--webhook-events <list>` | Événements du monitor séparés par des virgules                          |
| `--email <list>`          | Destinataires e-mail séparés par des virgules                           |
| `--retention-days <n>`    | Durée de conservation des instantanés                                   |
| `--page-status <state>`   | Filtrer les pages dans `monitor check`                                  |
| `--state <state>`         | Définir l’état du monitor dans `monitor update` : active/paused         |

***

<div id="agent">
  ### Agent
</div>

Recherchez et collectez des données sur le web à l&#39;aide de prompts en langage naturel.

<AgentBasic />

<div id="agent-options">
  #### Options de l&#39;agent
</div>

<AgentOptions />

**Options disponibles :**

| Option                      | Description                                                                                                                                                   |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--urls <urls>`             | Liste facultative d’URL sur lesquelles concentrer l’agent (séparées par des virgules)                                                                         |
| `--model <model>`           | Modèle à utiliser. Utilise par défaut `spark-2`, le modèle utilisé pour chaque exécution. Les modèles Spark 1 sont obsolètes et sont redirigés vers `spark-2` |
| `--schema <json>`           | Schéma JSON pour la sortie structurée (chaîne JSON intégrée)                                                                                                  |
| `--schema-file <path>`      | Chemin vers le fichier de schéma JSON pour la sortie structurée                                                                                               |
| `--max-credits <number>`    | Nombre maximal de crédits à utiliser (la tâche échoue si la limite est atteinte)                                                                              |
| `--webhook <url-or-json>`   | URL ou configuration du webhook                                                                                                                               |
| `--status`                  | Consulter l’état d’une tâche d’agent existante                                                                                                                |
| `--cancel`                  | Annuler une tâche d’agent active à l’aide de l’ID de tâche                                                                                                    |
| `--wait`                    | Attendre que l’agent ait terminé avant de renvoyer les résultats                                                                                              |
| `--poll-interval <seconds>` | Intervalle d’interrogation pendant l’attente (par défaut : 5)                                                                                                 |
| `--timeout <seconds>`       | Délai d’attente maximal (par défaut : aucun délai)                                                                                                            |
| `--output <path>`           | Enregistrer la sortie dans un fichier                                                                                                                         |
| `--json`                    | Sortie au format JSON                                                                                                                                         |

***

<div id="credit-usage">
  ### Utilisation des crédits
</div>

Consultez le solde et l&#39;utilisation des crédits de votre équipe.

```bash CLI
# Voir l'utilisation des crédits
firecrawl credit-usage

# Sortie en JSON
firecrawl credit-usage --json --pretty
```

***

<div id="version">
  ### Version
</div>

Afficher la version de la CLI.

```bash CLI
firecrawl version
# ou
firecrawl --version
```

<div id="global-options">
  ## Options globales
</div>

Ces options sont disponibles pour toutes les commandes :

| Option            | Raccourci | Description                                                                              |
| ----------------- | --------- | ---------------------------------------------------------------------------------------- |
| `--status`        |           | Afficher la version, l’état d’authentification, le niveau de concurrence et les crédits  |
| `--api-key <key>` | `-k`      | Ignorer la clé d’API enregistrée pour cette commande                                     |
| `--api-url <url>` |           | Utiliser une URL d’API personnalisée (pour l’auto-hébergement ou le développement local) |
| `--help`          | `-h`      | Afficher l’aide pour une commande                                                        |
| `--version`       | `-V`      | Afficher la version de la CLI                                                            |

`init` accepte également `--skip-auth`, `--skip-install`, `--skip-skills` et `--agent <name>`. Voir `firecrawl init --help`.

<div id="output-handling">
  ## Gestion de la sortie
</div>

La CLI écrit sur stdout par défaut, ce qui facilite l’utilisation de pipes ou la redirection :

```bash CLI
# Pipe markdown to another command
firecrawl https://example.com | head -50

# Redirect to a file
firecrawl https://example.com > output.md

# Save JSON with pretty formatting
firecrawl https://example.com --format markdown,links --pretty -o data.json
```

<div id="format-behavior">
  ### Comportement des formats
</div>

* **Un seul format** : renvoie le contenu brut (texte markdown, HTML, etc.)
* **Plusieurs formats** : renvoie du JSON avec toutes les données demandées

```bash CLI
# Sortie markdown brute
firecrawl https://example.com --format markdown

# Sortie JSON avec plusieurs formats
firecrawl https://example.com --format markdown,links
```

<div id="examples">
  ## Exemples
</div>

<div id="quick-scrape">
  ### Scraping rapide
</div>

```bash CLI
# Récupérer le contenu markdown d'une URL (utiliser --only-main-content pour une sortie épurée)
firecrawl https://docs.firecrawl.dev --only-main-content

# Get HTML content
firecrawl https://example.com --html -o page.html
```

<div id="full-site-crawl">
  ### Exploration complète du site
</div>

```bash CLI
# Crawle un site de docs avec des limites
firecrawl crawl https://docs.example.com --limit 50 --max-depth 2 --wait --progress -o docs.json
```

<div id="site-discovery">
  ### Découverte de sites web
</div>

```bash CLI
# Trouver tous les articles de blog
firecrawl map https://example.com --search "blog" -o blog-urls.txt
```

<div id="research-workflow">
  ### Flux de recherche
</div>

```bash CLI
# Rechercher et scraper les résultats pour la recherche
firecrawl search "machine learning best practices 2024" --scrape --scrape-formats markdown --pretty
```

<div id="agent-2">
  ### Agent
</div>

```bash CLI
# Les URL sont facultatives
firecrawl agent "Find the top 5 AI startups and their funding amounts" --wait

# Se concentrer sur des URL spécifiques
firecrawl agent "Compare pricing plans" --urls https://slack.com/pricing,https://teams.microsoft.com/pricing --wait
```

<div id="combine-with-other-tools">
  ### Combiner avec d&#39;autres outils
</div>

```bash CLI
# Extract URLs from search results
jq -r '.data.web[].url' search-results.json

# Récupérer les titres des résultats de recherche
jq -r '.data.web[] | "\(.title): \(.url)"' search-results.json

# Extraire les liens au format JSON et afficher une URL par ligne
firecrawl https://example.com --format links --json | jq -r '.links[]'

# Count URLs from map
firecrawl map https://example.com | wc -l
```

<div id="telemetry">
  ## Télémétrie
</div>

La CLI collecte des données d’utilisation anonymes lors de l’authentification afin d’améliorer le produit :

* Version de la CLI, système d’exploitation et version de Node.js
* Détection de l’outil de développement (par exemple, Cursor, VS Code, Claude Code)

**Aucune donnée relative aux commandes, aux URL ou au contenu des fichiers n’est collectée via la CLI.**

Pour désactiver la télémétrie, définissez la variable d’environnement :

```bash CLI
export FIRECRAWL_NO_TELEMETRY=1
```

<div id="open-source">
  ## Open Source
</div>

La CLI Firecrawl et les trois catégories de skills sont open source sur GitHub :

* [`firecrawl/cli`](https://github.com/firecrawl/cli) — la CLI et les skills CLI (travail sur le web en direct)
* [`firecrawl/skills`](https://github.com/firecrawl/skills) — les skills Build (intégrer Firecrawl dans le code d’application)
* [`firecrawl/firecrawl-workflows`](https://github.com/firecrawl/firecrawl-workflows) — les skills workflow (livrables reproductibles comme des synthèses de recherche, des audits SEO, des listes de prospects et des clones de design)

> Êtes-vous un agent IA qui a besoin d’une clé API Firecrawl ? Consultez [firecrawl.dev/agent-onboarding/SKILL.md](https://www.firecrawl.dev/agent-onboarding/SKILL.md) pour obtenir les instructions d’onboarding automatisé.
