Atelier201 websiteJoin the waitlist
CLICommandes
CLI

Commandes

Toutes les commandes, ce qu’elles modifient et celles qui changent ce que voient les visiteurs.

Aucune commande ne coûte de crédits. Seuls quatre groupes changent ce que voient les visiteurs : publish, publish rollback, publish unpublish et domains. Toutes les autres modifient le brouillon.

Compte

Terminal
atelier201 account                 # espace de travail, offre, autorisations de cet identifiant
atelier201 credits                 # solde et tous les crédits accordés
atelier201 usage --from 2026-01-01 # crédits utilisés sur une période

Sites

Terminal
atelier201 sites list
atelier201 sites create "Maison Dupont" --slug maison-dupont --locale fr --link
atelier201 sites get
atelier201 sites rename "Maison Dupont Boulangerie"
atelier201 sites delete            # demande de saisir le slug ; --confirm <slug> dans un script

sites create part du modèle de site Atelier201 et le construit une fois. Un site supprimé est immédiatement mis hors ligne, puis supprimé en quelques minutes. Exécutez donc d’abord atelier201 site pull si vous risquez d’en avoir besoin.

Dossier de projet

Terminal
atelier201 site link --site <id>   # associe ce dossier à un site
atelier201 site pull               # récupère ici les fichiers du brouillon
atelier201 site push --message "New menu" --build --wait

site push remplace le brouillon par le contenu du dossier et crée une seule entrée dans l’historique. La commande ignore node_modules, dist, .astro, .git, les fichiers .env et les clés, ainsi que tout ce qui figure dans le fichier .gitignore à la racine, dans la limite de 50 MB. Elle refuse d’écraser les modifications apportées sur le site depuis votre dernière synchronisation (exécutez d’abord site pull, ou utilisez --force). De son côté, site pull refuse d’écraser un fichier que vous avez modifié localement.

Contenu

Terminal
atelier201 content model
atelier201 content list blog
atelier201 content get blog hello-world
atelier201 content save blog hello-world --data entry.json --body hello.md
atelier201 content delete blog hello-world
atelier201 content singleton business
atelier201 content save-singleton business --data business.json
atelier201 content set business:/hours/2/close "18:00"
atelier201 content set business:/seats 12 --as number
atelier201 content replace "Open 9 to 5" "Open 9 to 6"
atelier201 sites apply plan.json
atelier201 media place business:/hero/image --query "bakery counter with fresh bread" --alt "Our counter"

Consultez d’abord content model. Chaque modification est vérifiée par rapport à ce modèle. --expect <hash> n’enregistre le contenu que si l’entrée possède toujours le hash que vous avez consulté, et --create-only refuse d’écraser du contenu existant.

Fichiers, historique et ensembles de modifications

Terminal
atelier201 files list --under src/content
atelier201 files read src/pages/index.astro
atelier201 files search "opening hours"
atelier201 files commit --message "Update the menu" --put src/pages/menu.astro=menu.astro
atelier201 history list
atelier201 history compare --to <revision>
atelier201 history restore <revision>
atelier201 changesets open "Add a gallery page"
atelier201 changesets stage <changeset_id> --put src/pages/gallery.astro=gallery.astro
atelier201 changesets commit <changeset_id>

files commit crée une seule entrée dans l’historique. Si le fichier a changé depuis que vous l’avez consulté, --expect <path>=<hash> refuse l’ensemble de la modification avec le code de sortie 6. Un ensemble de modifications fonctionne de la même façon sur plusieurs appels et reste ouvert pendant 10 minutes. history restore ajoute une nouvelle entrée identique à une entrée antérieure, sans rien effacer.

Médias

Terminal
atelier201 media list
atelier201 media upload photo.jpg --alt "A loaf of bread"
atelier201 media delete media/photo.jpg
atelier201 media stock search bakery counter morning light
atelier201 media stock import pixabay 1234567 --alt "Croissants on a bakery counter"
atelier201 media models
atelier201 media generate --model p-image --estimate "a sunlit bakery counter, flat illustration"
atelier201 media generate --model nano-banana "a sunlit bakery counter, photo, no text" --alt "A bakery counter"
atelier201 media generation <generation_id> --wait

La recherche et l’importation de médias libres de droits sont gratuits. media generate coûte des crédits : la commande affiche le prix exact et demande confirmation (--yes permet de l’accepter, et est obligatoire sans terminal). Elle nécessite également l’autorisation media:generate, que atelier201 auth login ne demande pas, sauf si vous l’ajoutez avec --scope.

Compilation et aperçu

Terminal
atelier201 builds start --wait
atelier201 builds list
atelier201 builds get <build_id>
atelier201 builds log <build_id>
atelier201 previews create --days 7
atelier201 previews list
atelier201 previews revoke <preview_id>

builds start --wait attend jusqu’à 5 minutes. La commande se termine avec le code 0 lorsque la compilation est ready ; en cas d’échec, elle renvoie un code différent de zéro et affiche la fin du journal de compilation.

Mise en ligne

Terminal
atelier201 publish review                       # affiche la compilation, les blocages ; ne modifie rien
atelier201 publish                              # met en ligne la dernière compilation réussie, après confirmation
atelier201 publish --build <build_id>
atelier201 publish history
atelier201 publish rollback --publication <id>
atelier201 publish unpublish

publish, publish rollback et publish unpublish indiquent les modifications prévues et demandent confirmation. Dans un script, passez --yes. Chaque commande lit d’abord l’état, puis envoie la génération ainsi obtenue. Si une autre personne effectue une mise en ligne entre-temps, la commande est refusée avec le code de sortie 6 au lieu d’écraser les changements.

Domaines

Terminal
atelier201 domains list
atelier201 domains add www.example.com   # affiche les enregistrements DNS à créer
atelier201 domains check <domain_id>
atelier201 domains address <slug>
atelier201 domains main <domain_id>
atelier201 domains remove <domain_id>

Un domaine personnalisé nécessite une offre payante. Consultez Domaines.

Avant toute connexion

Terminal
atelier201 site push --guest --name "Maison Dupont"

Aucun compte n’est nécessaire. Le dossier est mis en ligne sous forme de démo et deux liens sont affichés : celui de la démo et un lien privé à transmettre uniquement à son propriétaire pour que le site lui appartienne. Consultez Sites invités.

Guides

Terminal
atelier201 skills list
atelier201 skills get create-site

Les guides utilisés par l’assistant Atelier201 : avant de commencer, lisez celui qui correspond à votre tâche. Aucune connexion n’est nécessaire. Dans un terminal, get affiche le Markdown ; si la sortie est redirigée ou si vous utilisez --json, la commande renvoie l’objet JSON (avec body).

Solutions de secours

Terminal
atelier201 api GET /sites
atelier201 api POST /sites --data '{"name":"Maison Dupont"}'
atelier201 doctor
atelier201 mcp
atelier201 feedback send --problem "..." --situation "..." --expected-solution "..."

atelier201 api permet d’accéder à n’importe quel endpoint, y compris à ceux ajoutés après votre version de la CLI. Une nouvelle fonctionnalité n’a donc pas besoin d’attendre une mise à jour. atelier201 doctor vérifie la connectivité, les identifiants, la version et le décalage de l’horloge. atelier201 mcp relie l’entrée-sortie standard au serveur MCP pour les clients qui ne peuvent pas communiquer en HTTP.

Use these docs with your AI tools

An AI agent can read this documentation directly. You do not need an account or an API key. Everything here is public and read-only.

Query these docs via MCP

Recommended

Add this server to Claude, Claude Code, Cursor, Mistral, or any tool that supports MCP. Your agent can then search Atelier201 Docs documentation and read it in full, instead of answering from memory.

https://atelier201.com/docs/mcp
  • searchFind the passages that answer a question.
  • fetchRead one page in full, as Markdown.
  • list_pagesSee every page in this documentation.

Query these docs over HTTP

The same tools also work as plain web requests. Use this for scripts, or for any tool that does not support MCP. There is one endpoint per tool. Arguments go in the query string, and the answer comes back as JSON.

https://atelier201.com/docs/api/docs/search?query=custom+domain

Read the OpenAPI description. It is built from the same definitions as the tools, so it always matches what the endpoints do.

Read these docs as Markdown

Add .md to any page URL to get its Markdown source. You can also send the headerAccept: text/markdown to the page URL itself.

To read the whole documentation in one file, open llms-full.txt. For a short index of every page, open llms.txt.