---
title: "Comandi"
description: "Tutti i comandi, cosa modificano e quali cambiano ciò che vedono i visitatori."
canonical: "https://atelier201.com/docs/it/cli/commands"
updated: "2026-11-06"
---

# Comandi

Nessun comando consuma crediti. Solo quattro gruppi modificano ciò che vedono i visitatori: `publish`,
`publish rollback`, `publish unpublish` e `domains`. Tutto il resto modifica la
bozza.

## Account

```bash
atelier201 account                 # workspace, piano, ambiti di questa credenziale
atelier201 credits                 # saldo e tutti gli accrediti
atelier201 usage --from 2026-01-01 # crediti usati in un periodo
```

## Siti

```bash
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            # chiede di digitare lo slug; in uno script usa --confirm <slug>
```

`sites create` parte dallo starter di Atelier201 e lo crea una volta. Un sito eliminato
va subito offline e viene rimosso nel giro di pochi minuti. Se potrebbe servirti,
esegui prima `atelier201 site pull`.

## Una cartella di progetto

```bash
atelier201 site link --site <id>   # collega questa cartella a un sito
atelier201 site pull               # scarica qui i file della bozza
atelier201 site push --message "New menu" --build --wait
```

`site push` sostituisce la bozza con il contenuto della cartella, registrandolo come
un'unica voce nella cronologia. Esclude `node_modules`, `dist`, `.astro`, `.git`, i file
e le chiavi `.env` e tutto ciò che è indicato nel `.gitignore` principale, fino a un
massimo di 50 MB. Non sovrascrive le modifiche apportate sul sito dall'ultima
sincronizzazione: esegui prima `site pull` oppure usa `--force`. `site pull` non
sovrascrive i file che hai modificato in locale.

## Contenuti

```bash
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 "Il nostro bancone"
```

Per prima cosa consulta `content model`. Ogni modifica viene convalidata in base al
modello. `--expect <hash>` salva solo se la voce ha ancora l'hash che hai letto, mentre
`--create-only` impedisce di sovrascrivere i dati esistenti.

## File, cronologia e changeset

```bash
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` crea una voce nella cronologia. Se il file è cambiato da quando l'hai
letto, `--expect <path>=<hash>` rifiuta l'intera modifica e restituisce il codice di
uscita `6`. Un changeset applica lo stesso controllo a più operazioni e rimane aperto
per 10 minuti. `history restore` aggiunge una nuova voce che ripristina lo stato di
una versione precedente, senza cancellare nulla.

## Contenuti multimediali

```bash
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 ricerca e l'importazione di immagini stock sono gratuite. `media generate` consuma
crediti: mostra il prezzo esatto e chiede conferma (`--yes` la accetta ed è necessario
se non è disponibile un terminale). Inoltre richiede il permesso `media:generate`,
che `atelier201 auth login` non richiede a meno che non lo aggiungi con `--scope`.

## Build e anteprime

```bash
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` attende fino a 5 minuti. Restituisce `0` se la build è `ready`;
se non va a buon fine, restituisce un codice diverso da zero e mostra la parte finale
del log della build.

## Pubblicazione

```bash
atelier201 publish review                       # build selezionata, impedimenti, senza modifiche
atelier201 publish                              # la build pronta più recente, chiede conferma
atelier201 publish --build <build_id>
atelier201 publish history
atelier201 publish rollback --publication <id>
atelier201 publish unpublish
```

`publish`, `publish rollback` e `publish unpublish` mostrano cosa cambierà e chiedono
conferma. In uno script, passa `--yes`. Ognuno legge prima lo stato e invia la
versione rilevata. Se nel frattempo qualcun altro pubblica, l'operazione viene
rifiutata con il codice di uscita `6`, anziché sovrascrivere le modifiche.

## Domini

```bash
atelier201 domains list
atelier201 domains add www.example.com   # mostra i record DNS da creare
atelier201 domains check <domain_id>
atelier201 domains address <slug>
atelier201 domains main <domain_id>
atelier201 domains remove <domain_id>
```

Per usare un dominio personalizzato serve un piano a pagamento. Vedi
[Domini](/docs/platform/domains).

## Prima che qualcuno abbia effettuato l'accesso

```bash
atelier201 site push --guest --name "Maison Dupont"
```

Non serve un account. La cartella viene pubblicata online come demo e il comando
mostra due link: uno alla demo e uno privato, da condividere solo con il proprietario
per assegnargli il sito. Vedi [Siti ospite](/docs/platform/guest-sites).

## Guide

```bash
atelier201 skills list
atelier201 skills get create-site
```

Sono le guide utilizzate dall'assistente di Atelier201: prima di iniziare, leggi
quella relativa al tuo lavoro. Non serve effettuare l'accesso. `get` mostra il
Markdown in un terminale e l'oggetto JSON (con `body`) se l'output viene reindirizzato
o se usi `--json`.

## Altre opzioni

```bash
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` consente di raggiungere qualsiasi endpoint, compresi quelli aggiunti
dopo la tua versione della CLI, così una nuova funzionalità non deve aspettare una
release. `atelier201 doctor` controlla la connettività, le credenziali, la versione e
lo scarto dell'orologio. `atelier201 mcp` fa da ponte tra stdio e il server MCP per i
client che non supportano HTTP.
