Hogyan osztja meg az állapotot a CLI és az alkalmazás
A Beam Bench ügynökállapot-modellje. Mit lát a CLI, mit lát az alkalmazás, és hol találkoznak.
A Beam Bench CLI és az asztali alkalmazás ugyanannak a háttérrendszernek két kliense. Mindkettő hozzáférhet ugyanahhoz a projekthez, gépkapcsolathoz és kamerállapothoz. Ha szkriptből szeretné vezérelni az alkalmazást, hasznos megérteni, hogyan osztják meg ezt az állapotot.
A modell
A Beam Benchen belül egyetlen hiteles forrás kezeli a következőket:
- Az aktív projektet.
- A gépkapcsolatot.
- A kamerállapotot.
- Az ügynök képességeinek és állapotának felületét.
Az asztali alkalmazás felülete ennek az állapotnak az egyik felhasználója. A CLI egy másik. A HTTP- és WebSocket API ugyanez a felület.
Mire képes a CLI
A beambench-cli agent state --json az aktuális projekt, gép, kijelölés és kamera állapotát adja vissza stabil JSON-sémában. Ezzel ellenőrizheti, mi van jelenleg betöltve az alkalmazásban.
A beambench-cli agent capabilities --json visszaadja az elérhető műveletek nyilvántartását, valamint azt, hogy mely CLI-alparancsok felelnek meg az egyes háttérrendszeri műveleteknek.
A beambench-cli agent guide --json munkafolyamat-javaslatot ad egy külső ügynöknek, például Claude-nak, az alkalmazás vezérléséhez.
Mire nem képes a CLI
A CLI-nek nincs saját felületi állapota. Nem tud eszközt kijelölni, panelt megnyitni vagy párbeszédablakot megnyitni. Ezek az alkalmazás oldalán végrehajtandó műveletek, ezért az alkalmazásban végezze el őket, ne a CLI-ből.
Amikor a CLI-nek futó alkalmazásra van szüksége
Egyes műveletekhez az alkalmazásnak tényleges munkát kell végeznie, például a vásznat fedvényekkel kell megjelenítenie vagy kameraképet kell rögzítenie. A CLI továbbítja a kérést, az alkalmazás elvégzi a műveletet, az eredmény pedig visszakerül a CLI-hez.
A camera overlay render parancs így működik. A CLI blokkol, amíg az alkalmazás be nem fejezi a műveletet, vagy le nem jár az időkorlát (15 s).
Fej nélküli és alkalmazást igénylő parancsok
| Futó alkalmazás szükséges? | Példák |
|---|---|
| Nem (fej nélküli) | beambench-cli design render --png, beambench-cli project save, beambench-cli export svg, beambench-cli agent state |
| Igen | beambench-cli camera overlay render, beambench-cli camera capture (natív kamera használatakor), bármely felületi állapot vizsgálata |