Atelier201 websiteJoin the waitlist
Espace de travailExécuter une commande dans l’espace de travail
sites

Exécuter une commande dans l’espace de travail

Une commande bash exécutée à la racine du projet, sur une copie de travail du brouillon dans le conteneur du site : rg, grep, sed, find, cat, node. La compilation du projet est refusée (400) : workspace:commit soumet les fichiers aux mêmes vérifications que toute autre modification et lance la véritable compilation, dont getSiteBuild signale les erreurs. Aucun accès réseau, durée maximale de 300 s. Les fichiers modifiés restent non validés (indiqués dans uncommitted) jusqu’à workspace:commit. L’espace de travail suit le brouillon : toute nouvelle modification conserve vos changements non validés.

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

Nécessite sites:write. Ne coûte aucun crédit. Le chemin se termine par /workspace:run.

L’espace de travail est un shell exécuté hors ligne dans le conteneur propre au site, sur une copie de travail de son brouillon. Utilisez-le pour les tâches adaptées au shell : rg, grep, find, cat, sed -i, node et npx astro build, pour tester une compilation en quelques secondes. La commande s’exécute à la racine du projet avec un compte sans privilèges, sans accès au réseau.

Les modifications apportées par la commande ne sont pas validées. La réponse les répertorie dans uncommitted, à raison d’une par ligne, au format de git status (M src/pages/index.astro). Rien n’est ajouté à l’historique tant que vous n’avez pas validé l’espace de travail, et les visiteurs ne voient rien tant que vous n’avez pas publié.

command peut contenir jusqu’à 8000 caractères. timeout_ms doit être compris entre 1000 et 300000 et vaut 60000 par défaut : une commande toujours en cours à l’issue de ce délai est arrêtée et timed_out vaut true. L’échec d’une commande ne constitue pas une erreur d’API : l’appel réussit et exit_code est différent de 0. output regroupe stdout et stderr ; au-delà de 8 KB, il conserve le début et la fin, et truncated vaut true.

L’espace de travail suit l’évolution du brouillon. Si une autre modification a fait évoluer le brouillon depuis votre dernière commande, vos modifications non validées sont conservées et note le signale. Il en va de même si l’espace de travail a dû être recréé.

Un site dont la création est toujours en cours renvoie result_not_ready. Un site suspendu ou en cours de suppression renvoie conflict.

Autorisations

Authorizationbearerin headerrequired

Paramètres de chemin

site_idstringrequired

L’identifiant du site ou son slug (l’adresse avant .atelier201.page).

Corps

application/jsonrequired
commandstringrequiredlength: 1–8000 chars

Une commande bash exécutée à la racine du projet, sur une copie de travail du brouillon : rg, grep, sed, find, cat, node... Aucun accès réseau. Les fichiers modifiés restent non validés jusqu’à workspace:commit, qui les compile et signale les erreurs éventuelles. La compilation du projet est refusée ici : elle a pris 30 s et ferait doublon.

timeout_msintegerrange: 1000–300000

Valeur par défaut : 60000. La commande est interrompue au-delà de cette durée.

Réponse

application/json

Exécuter une commande shell dans l’espace de travail du site

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.