Pilotez toute votre flottedepuis le code.
Le SDK cmdop est le socle programmatique sur lequel s’appuient le CLI et les bots. Un cœur Go gère la logique difficile ; de fins clients typés pour Python et Node ne font que l’appeler. Streamez l’agent IA d’une machine, gérez des flottes, ouvrez des tunnels, planifiez des tâches — le tout depuis votre propre programme.
sdk.diagram.title
sdk.diagram.body

Une installation. Rien d’autre.
Les cinq binaires de la plateforme sont livrés intégrés dans un seul fat wheel et un seul paquet npm — aucune installation de l’agent cmdop, aucune notarisation, aucun téléchargement par plateforme. Un résolveur d’exécution choisit le binaire de l’hôte au moment du lancement.
Python — PyPI
Node — npm
cmdop 1.0.0 sur PyPI · @cmdop/sdk 1.0.0 sur npm
Streamez l’agent d’une machine,comme un itérateur async typé.
L’opération phare ouvre un flux SSE vers l’agent IA d’une machine via le relais, exposé comme un itérateur async propre de frames typés — event, done, error, confirm_required, pin_required, pin_denied — avec des canaux latéraux de pin et de confirmation en plein flux.
Un cœur. Chaque langage.
Un cœur Go, de fins clients typés
L’authentification, le flux SSE du relais, les nouvelles tentatives et le mappage des erreurs sont écrits une fois en Go et réutilisés par chaque client. Un nouveau langage, c’est un fin shim d’environ 400 lignes plus une surface typée générée — pas un portage complet.
Binaires intégrés — aucune installation supplémentaire
Les cinq binaires de la plateforme tiennent dans un seul fat wheel et un seul paquet npm. Les utilisateurs finaux font simplement pip install ou npm i — pas d’agent cmdop, pas d’optionalDependencies, pas de notarisation Gatekeeper.
Client à deux plans
Les machines, flottes, tunnels, plannings et clés passent au relais avec votre CMDOP_TOKEN. Les skills et les bots passent à la plateforme avec votre UserAPIKey. Un client, deux identifiants, par conception.
Streaming SSE machines.ask()
Streamez l’agent IA d’une machine comme un itérateur async typé, avec des canaux latéraux de pin et de confirmation en plein flux. Le même modèle d’interaction que l’app, désormais scriptable.
Bots intégrés
Les bots Telegram, Discord et Slack sont désormais hébergés entièrement dans le cœur du SDK. Lancez-en un avec client.bots.run(...) et le binaire Go exécute la boucle du canal, pilotant machines.ask() par message. Le SDK a absorbé les bots.
Des namespaces typéssur toute votre flotte.
Chaque opération du relais est répliquée dans les deux clients et verrouillée par un contrôle de parité inter-langages — une méthode présente dans un langage mais pas dans l’autre fait échouer la CI.
machineslist · get · info · spend · ask · messages · active_sessionfleetscrud · members · attach · detachtunnelsopen · close · list · get · sessionsschedulescrud · trigger · runskeyslist · issue · revokeskillslist · install · publishbotsrun · management (Telegram · Discord · Slack)Lisez la doc.Livrez en quelques minutes.
Référence complète pour chaque namespace, le modèle de streaming et la gestion des erreurs.
Construisez sur le socle.
Le cœur programmatique sur lequel repose chaque autre produit cmdop. Installez-le, importez-le, livrez.