Comment la CLI et l’application partagent l’état
Le modèle d’état des agents de Beam Bench. Ce que voit la CLI, ce que voit l’application et où ils se rejoignent.
La CLI de Beam Bench et l’application de bureau sont deux clients du même backend. Elles peuvent toutes deux examiner le même projet, la même connexion machine et le même état de la caméra. Il est utile de savoir comment elles partagent cet état lorsque vous souhaitez piloter l’application à partir d’un script.
Le modèle
Il existe dans Beam Bench une source unique de vérité qui gère :
- Le projet actif.
- La connexion machine.
- L’état de la caméra.
- La surface des capacités et de l’état de l’agent.
L’interface utilisateur de l’application de bureau est l’un des consommateurs de cet état. La CLI en est un autre. L’API HTTP / WebSocket constitue cette même surface.
Ce que peut faire la CLI
beambench-cli agent state --json renvoie l’état actuel du projet, de la machine, de la sélection et de la caméra, dans un schéma JSON stable. Utilisez cette commande pour examiner ce que l’application a actuellement chargé.
beambench-cli agent capabilities --json renvoie un registre des opérations disponibles et indique quelles sous-commandes de la CLI correspondent à quelles opérations du backend.
beambench-cli agent guide --json renvoie une indication de flux de travail destinée à un agent externe (tel que Claude) sur la manière de piloter l’application.
Ce que la CLI ne peut pas faire
La CLI ne dispose pas de son propre état d’interface utilisateur. Elle ne peut pas sélectionner un outil, ouvrir un panneau ou ouvrir une boîte de dialogue. Il s’agit d’actions côté application ; effectuez-les dans l’application, et non depuis la CLI.
Lorsque la CLI nécessite que l’application soit en cours d’exécution
Certaines opérations exigent que l’application effectue un véritable travail (rendu du canevas avec superposition, capture d’une image de caméra). La CLI transmet la demande et l’application effectue le travail ; le résultat revient ensuite à la CLI.
La commande camera overlay render fonctionne de cette manière. La CLI attend jusqu’à ce que l’application termine ou qu’un délai d’expiration soit atteint (15 s).
Commandes sans interface ou nécessitant l’application
| L’application doit être en cours d’exécution ? | Exemples |
|---|---|
| Non (sans interface) | beambench-cli design render --png, beambench-cli project save, beambench-cli export svg, beambench-cli agent state |
| Oui | beambench-cli camera overlay render, beambench-cli camera capture (lors de l’utilisation de la caméra native), toute inspection de l’état de l’interface utilisateur |