---
title: "Présentation de la CLI"
description: "Installez la CLI, connectez-vous, associez un dossier de projet à un site et mettez-le en ligne."
canonical: "https://atelier201.com/docs/fr/cli/overview"
updated: "2026-11-06"
---

# Présentation de la CLI

```bash
npm install -g @atelier201/cli
atelier201 auth login
atelier201 account
```

`atelier201 auth login` ouvre un navigateur, vous demande à quel espace de travail vous connecter et quelles
autorisations accorder, puis enregistre le jeton dans le trousseau de clés de votre système d’exploitation,
pas dans un fichier caché. Sur une machine sans navigateur, utilisez `atelier201 auth login --device`.

## Du dossier de projet à la mise en ligne

```bash
atelier201 sites create "Maison Dupont" --link   # crée le site et associe ce dossier
atelier201 site pull                             # récupère ici ses fichiers
# ...edit...
atelier201 site push --build --wait              # envoie le dossier, lance la compilation et attend sa fin
atelier201 previews create                       # crée un lien privé vers cette compilation
atelier201 publish                               # affiche ce qui sera mis en ligne, demande confirmation, puis publie
```

Chaque commande de site accepte `--site <id>` ou utilise le site associé au dossier courant.
`atelier201 site link --site <id>` crée `.atelier201/site.json`. Ce fichier ne contient aucun secret et est ajouté à `.gitignore`.

Pour modifier des textes, des entrées et des informations sur l’entreprise, privilégiez les commandes de gestion du contenu aux modifications de fichiers : elles vérifient les données par rapport au modèle de contenu du site et ne peuvent pas casser la mise en page.

```bash
atelier201 content set business:/tagline "Fresh bread daily"
```

Consultez [Commandes](/docs/cli/commands) pour découvrir toutes les commandes, et
[Modèle de contenu et médias](/docs/platform/content-model) pour savoir ce que contient un site.

## Sortie

**La sortie est automatiquement au format JSON lorsque stdout n’est pas un terminal.** La redirection vers `jq`
fonctionne directement, et aucune commande ne nécessite l’option `--json` en intégration continue. Dans un terminal, vous obtenez un tableau. Choisissez le format avec `--output json|table|ndjson`.

## Codes de sortie

Un script peut traiter chaque résultat sans analyser un message :

| Code | Signification                                                             |
| ---- | ------------------------------------------------------------------------- |
| 0    | Réussite                                                                  |
| 1    | Échec inattendu                                                           |
| 2    | Utilisation incorrecte ou requête rejetée comme non valide par le serveur |
| 3    | Problème d’authentification ou d’autorisation                             |
| 4    | Introuvable                                                               |
| 5    | Limite de requêtes atteinte                                               |
| 6    | Conflit : conflit d’écriture, mise en ligne obsolète ou limite de l’offre |
|      |                                                                           |
