Sådan deler CLI'en og appen tilstand
Beam Bench's agenttilstandsmodel. Hvad CLI'en ser, hvad appen ser, og hvor de mødes.
Beam Bench CLI'en og desktopappen er to klienter til den samme backend. De kan begge inspicere det samme projekt, den samme maskinforbindelse og den samme kameratilstand. Det er nyttigt at vide, hvordan de deler denne tilstand, når du vil styre appen fra et script.
Modellen
Der er én enkelt sandhedskilde i Beam Bench, som ejer:
- Det aktive projekt.
- Maskinforbindelsen.
- Kameratilstanden.
- Agentens kapabilitets- og tilstandsoverflade.
Desktopappens brugerflade er én forbruger af denne tilstand. CLI'en er en anden. HTTP- og WebSocket-API'en er den samme overflade.
Hvad CLI'en kan gøre
beambench-cli agent state --json returnerer den aktuelle tilstand for projekt, maskine, markering og kamera i et stabilt JSON-skema. Brug dette til at inspicere, hvad appen har indlæst.
beambench-cli agent capabilities --json returnerer et register over de tilgængelige handlinger, og hvilke CLI-underkommandoer der knytter sig til hvilke backendhandlinger.
beambench-cli agent guide --json returnerer et arbejdsgangstip til en ekstern agent (f.eks. Claude) om, hvordan appen styres.
Hvad CLI'en ikke kan gøre
CLI'en har ikke sin egen brugerfladetilstand. Den kan ikke vælge et værktøj, åbne et panel eller åbne en dialogboks. Det er handlinger i appen, så udfør dem i appen og ikke fra CLI'en.
Når CLI'en kræver, at appen kører
Nogle handlinger kræver, at appen udfører det faktiske arbejde (gengiver lærredet med overlejring eller optager et kamerabillede). CLI'en sender anmodningen videre, og appen udfører arbejdet. Resultatet sendes tilbage til CLI'en.
Kommandoen camera overlay render fungerer på denne måde. CLI'en blokerer, indtil appen er færdig eller får timeout (15 s).
Kommandoer uden app og kommandoer, der kræver appen
| Kræver, at appen kører? | Eksempler |
|---|---|
| Nej (uden brugerflade) | beambench-cli design render --png, beambench-cli project save, beambench-cli export svg, beambench-cli agent state |
| Ja | beambench-cli camera overlay render, beambench-cli camera capture (ved brug af indbygget kamera), enhver inspektion af brugerfladetilstand |