CLI overview
Install the CLI, sign in, link a project folder to a site and put it online.
npm install -g @atelier201/cli
atelier201 auth login
atelier201 accountatelier201 auth login opens a browser, asks you which workspace to connect and which
permissions to grant, and stores the token in your operating system’s keychain,
not in a dotfile. On a machine without a browser, use atelier201 auth login --device.
A project folder, from nothing to online
atelier201 sites create "Maison Dupont" --link # creates the site, links this folder
atelier201 site pull # its files, here
# ...edit...
atelier201 site push --build --wait # send the folder, build it, wait
atelier201 previews create # a private link to that build
atelier201 publish # shows what goes live, asks, then does itEvery site command takes --site <id>, or uses the site linked in the current
folder. atelier201 site link --site <id> writes .atelier201/site.json, which holds no
secret and is added to .gitignore.
Prefer the content commands to file edits for texts, entries and business details: they are validated against the site’s content model and cannot break the layout.
atelier201 content set business:/tagline "Fresh bread daily"See Commands for all of them, and Content model and media for what a site holds.
Output
Output is JSON automatically when stdout is not a terminal. Piping into jq
just works, and no command needs a --json flag in CI. At a terminal you get a
table. Force either with --output json|table|ndjson.
Exit codes
A script can branch without reading a message:
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | An unexpected failure |
| 2 | Bad usage, or a request the server rejected as invalid |
| 3 | Authentication or permission |
| 4 | Not found |
| 5 | Rate limited |
| 6 | Conflict: a write conflict, a stale publish or a plan limit |