2. Projets
2.3 Démarrer un projet : actions et ports
Ce qu'est une action, comment la démarrer et l'arrêter, la sortie, le port, l'action par défaut et comment ajouter les vôtres dans le fichier panel.json.
Dans l'application: «Projets»
En bref
- Une action est une commande du projet avec un nom : « npm run dev », « php artisan serve », le site web…
- Les actions web reçoivent un port du kit, qui attend qu'elles répondent et vous donne l'adresse à ouvrir.
- L'étoile « Par défaut » choisit l'action du bouton « Démarrer ».
- Les actions se reconnaissent toutes seules ; les vôtres s'ajoutent avec « Nouvelle action » et vont dans le fichier panel.json du projet.

En haut les boutons Démarrer, Éditeur, Terminal et Agent ; en dessous, l'action choisie avec état, commande et port, et la liste des actions.
La section « Lancement »
En haut se trouve le détail de l'action choisie (au début, celle par défaut), en dessous la liste « Actions ». Un clic sur une ligne la choisit et affiche sa sortie ; ▶ et ■ sur la ligne la démarrent et l'arrêtent.
| Élément | Ce qu'il indique |
|---|---|
| État | arrêté, démarrage, en écoute (action web prête), en cours d'exécution, terminé, arrêté, erreur (avec le code de sortie). |
| Commande | La commande exécutée, ou le serveur qui sert le site (serveur de fichiers du kit, Apache ou Caddy). |
| Dossier | Où la commande est exécutée. |
| Port | Seulement pour les actions web : « automatique » ou un numéro choisi par vous. |
| Adresse | Pendant que l'action est en écoute, l'adresse à ouvrir (un lien). |
| Depuis le téléphone | Avec « Réseau local » activé dans les Paramètres, l'adresse avec l'IP de ce PC sur le réseau, à ouvrir depuis un téléphone ou un autre PC du même réseau : « Copier », et « Afficher le QR code » à scanner avec l'appareil photo, au lieu de recopier l'IP. Atollo crée le QR code lui-même, sans service sur internet. Il n'y en a pas pour un nom comme shop.localhost d'un serveur partagé : le téléphone ne peut pas envoyer ce nom. |
| Origine | panel.json, si l'action est écrite à la main dans le projet. |
Sous le détail se trouve le volet « Sortie de … » avec la case « Suivre », qui garde les dernières lignes en vue. Le kit conserve les 3000 dernières lignes de chaque action ; ses notes apparaissent comme des lignes qui commencent par [Atollo]. Les boutons en haut : l'étoile « Par défaut », « Ouvrir dans le navigateur » (pendant qu'une action web est en écoute) et « Effacer la sortie » (quand l'action est terminée).
Ce qui se passe quand vous appuyez sur « Démarrer »
- RelitReconnaît de nouveau le projet : panel.json a pu changer.
- InstalleS'il manque un composant à l'action, il l'installe d'abord.
- PrépareEnvironnement du kit, versions du projet, port, variables de l'action.
- DémarreExécute la commande dans le dossier de l'action.
- AttendPour une action web, jusqu'à ce que le port réponde : elle est alors « en écoute ».
- Le navigateur ne s'ouvre pas tout seul : utilisez « Ouvrir dans le navigateur » (ici, dans le « Panneau rapide » ou dans le panneau « Activité »). L'adresse est en général http://localhost:<port>/.
- Si le programme ignore le port attribué et en affiche un autre dans la sortie, le kit suit celui-là.
- « Arrêter » ferme toute l'arborescence de processus de l'action. Fermer Atollo arrête toutes les actions.
- Les actions démarrées apparaissent aussi dans le panneau « Activité » et dans le compteur de la barre d'état ; dans le panneau, « Tout arrêter », après une confirmation, les arrête avec les bases de données et les serveurs web en cours d'exécution.
Le port
Chaque action web a son propre port, choisi par le kit entre 7100 et 7999 la première fois puis conservé à chaque démarrage : ainsi l'adresse ne change pas. Si vous avez besoin d'un numéro précis, tapez-le dans le champ « Port » et appuyez sur Entrée (ou quittez le champ) ; en le vidant, vous revenez au port automatique.
- Le port doit être compris entre 1024 et 65535.
- Les ports de 7000 à 7099 sont réservés à l'éditeur : l'un d'eux est refusé avec « Les ports 7000 à 7099 sont réservés à l'éditeur ».
- Un port déjà utilisé par une autre action est refusé avec « Port déjà attribué à … », suivi de projet → action.
- Un port qu'a déjà un pool de serveurs web ou une version d'une base de données est refusé aussi, et le message dit à qui il est : « Le port … appartient déjà au serveur … : choisissez-en un autre. » ou « Le port … appartient déjà à la base de données … : choisissez-en un autre. » (par exemple MySQL 8.4).
L'action par défaut
C'est celle qui démarre avec le bouton « Démarrer » de la page, avec ▶ dans la ligne du projet et avec Maj+Entrée dans « Ouvrir un projet ». Pour la changer, choisissez l'action dans la liste et appuyez sur l'étoile « Par défaut ». Quand vous servez le projet comme site web, le site devient tout seul l'action par défaut.
Ajouter, modifier et retirer des actions
- Dans la section « Lancement », appuyez sur « Nouvelle action », à côté du titre « Actions ».
- Remplissez « Nom », « Type » (« Site ou serveur web », « Application avec fenêtre » ou « Commande ») et « Commande » ; si besoin, « Dossier » (relatif au projet), « Adresse » (sites seulement) et « Variables », une NOM=valeur par ligne. Dans la commande, {port} devient le port de l'action.
- Appuyez sur « Enregistrer ». L'action apparaît dans la liste ; son identifiant vient du nom.
- « Modifier », sur l'action choisie, rouvre le même formulaire. Sur une action reconnue, il enregistre votre version avec le même identifiant, qui prend sa place.
- « Retirer » n'existe que pour vos actions et demande confirmation ; si une action reconnue a le même identifiant, elle revient.
- Le site web se modifie dans la section « Site web », pas ici.
Le fichier panel.json
Vos actions, l'étoile et le site web se trouvent dans le fichier panel.json dans le dossier du projet. Vous pouvez aussi l'écrire à la main et appuyer sur « Actualiser ». Le fichier est dans le projet, donc il va dans Git et vaut pour quiconque utilise le projet avec Atollo.
projects\gestionale\panel.json{
"default": "dev",
"actions": [
{
"id": "dev",
"label": "Avvia tutto",
"type": "web",
"command": "npm run dev -- --port {port}",
"folder": "frontend",
"env": { "API_URL": "http://localhost:8000" }
},
{
"id": "test",
"label": "Prove",
"type": "command",
"command": "php artisan test"
}
]
}| Clé | Signification |
|---|---|
id | Identifiant de l'action : minuscules, chiffres et - _ : . (40 caractères au maximum). |
label | Le nom que vous voyez dans la liste. |
type | web (un serveur avec un port), desktop (une application avec fenêtre) ou command (une commande qui fait quelque chose et se termine). |
command | La commande. {port} est remplacé par le port de l'action. |
folder | Le sous-dossier où l'exécuter (facultatif). |
url | L'adresse à ouvrir, si ce n'est pas http://localhost:{port}/ (facultatif). |
env | Variables d'environnement supplémentaires pour cette action seulement (facultatif). |
default | En tête du fichier : l'id de l'action par défaut. |
replace | En tête du fichier : true pour retirer toutes les actions reconnues et ne garder que les vôtres. |
Sous le capot
- La commande est exécutée avec cmd.exe sous Windows et /bin/sh sous macOS et Linux, dans le dossier de l'action, avec l'environnement du kit et les versions du projet. Les jetons des agents (CLAUDE_CODE_OAUTH_TOKEN, GEMINI_API_KEY, LLAMA_API_KEY) n'y sont pas : seuls les agents lancés par Atollo les reçoivent.
- Les actions web reçoivent les variables PORT (et ROCKET_PORT) avec le port ; toutes reçoivent BROWSER=none, PYTHONUNBUFFERED=1 et ATOLLO_LANG. Si le projet a une base de données MySQL du kit et que son .env n'indique pas un autre port, elles reçoivent aussi DB_PORT.
- Les ports attribués et ceux que vous avez choisis sont dans data\projects\<projet>\ports.json, en dehors du projet.
- Chaque action tourne dans son propre groupe de processus (un Job Object sous Windows) : « Arrêter » ferme aussi les processus enfants, par exemple le serveur lancé par npm.
- Dans les anciens fichiers, les clés en italien (azioni, etichetta, comando, cartella, predefinita) et {porta} à la place de {port} sont encore acceptées.