Atelier201 websiteJoin the waitlist
WorkspaceEseguire un comando nell'area di lavoro
sites

Eseguire un comando nell'area di lavoro

Un comando bash nella directory principale del progetto, su una copia di lavoro della bozza nel container del sito: rg, grep, sed, find, cat, node. La build del progetto viene rifiutata (400): workspace:commit invia i file agli stessi controlli previsti per ogni modifica e avvia la build effettiva, i cui errori vengono segnalati da getSiteBuild. Nessuna rete, massimo 300 s. I file modificati restano non sottoposti a commit (elencati in uncommitted) fino a workspace:commit. L'area di lavoro segue la bozza: un'altra modifica mantiene le tue modifiche non sottoposte a commit.

POST/v1/sites/{site_id}/workspace:run

Richiede sites:write. Non costa crediti. Il percorso termina con /workspace:run.

L’area di lavoro è una shell su una copia di lavoro della bozza del sito, nel container dedicato del sito, senza connessione alla rete. Usala per le operazioni in cui una shell è più efficace: rg, grep, find, cat, sed -i, node e npx astro build per provare una build in pochi secondi. Il comando viene eseguito nella directory principale del progetto con un utente senza privilegi e senza accesso alla rete.

Le modifiche apportate dal comando restano senza commit. La risposta elenca queste modifiche in uncommitted, una per riga, nel formato di git status (M src/pages/index.astro). Nulla entra nella cronologia finché non esegui il commit dell’area di lavoro, e i visitatori non vedono nulla finché non pubblichi.

command può contenere al massimo 8000 caratteri. timeout_ms può variare da 1000 a 300000 e il valore predefinito è 60000: se il comando è ancora in esecuzione allo scadere del tempo, viene interrotto e timed_out assume il valore true. Un comando che non va a buon fine non genera un errore API: la chiamata riesce e exit_code è diverso da 0. output contiene insieme stdout e stderr; oltre gli 8 KB conserva l’inizio e la fine e truncated assume il valore true.

L’area di lavoro segue la bozza. Se un’altra modifica ha aggiornato la bozza dall’ultimo comando, le modifiche non ancora sottoposte a commit vengono mantenute e note lo segnala. Lo stesso avviene se è stato necessario ricreare l’area di lavoro.

Un sito ancora in fase di creazione risponde con result_not_ready, mentre un sito sospeso o in fase di eliminazione risponde con conflict.

Autorizzazioni

Authorizationbearerin headerrequired

Parametri di percorso

site_idstringrequired

L'ID del sito o il suo slug (l'indirizzo prima di .atelier201.page).

Corpo

application/jsonrequired
commandstringrequiredlength: 1–8000 chars

Un comando bash eseguito nella directory principale del progetto, su una copia di lavoro della bozza: rg, grep, sed, find, cat, node... Nessuna rete. I file modificati restano non sottoposti a commit fino a workspace:commit, che li compila e segnala eventuali errori di build. Qui la build del progetto viene rifiutata: richiedeva 30 s e duplicava quella build.

timeout_msintegerrange: 1000–300000

Valore predefinito: 60000. Il comando viene interrotto allo scadere.

Risposta

application/json

Esegui un comando shell nell'area di lavoro del sito

dataobjectrequired
request_idstringrequired

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.