CommandAGI
AprenderPreciosDocumentación
Iniciar sesión
CommandAGI

Visión, inteligencia y control — inteligencia que puedes ver, especificar y confiar, actuando en entornos reales.

Plataforma

  • Producto
  • Inteligencia
  • Percepción
  • Previsión
  • Robótica
  • Coordinación
  • Impresión 3D
  • Servicios
  • Tienda
  • Sitios
  • Precios

Explorar

  • Mundos
  • Hilos
  • Aprende CommandAGI
  • Documentación
  • Demostraciones
  • Consigue la app
  • Inicia un negocio
  • La Economía del Mando
  • Ecosistema
  • El Fondo de Oportunidad
  • Gana desde tu teléfono
  • Prueba de reservas
  • Estado

Empresa

  • Integridad
  • Confianza y verificabilidad
  • Acerca de
  • Visión
  • Investigación
  • Blog
  • Marca
  • Contacto

Legal

  • Privacidad
  • Términos
  • Suscripción SMS
  • Cookies
  • Todo lo legal
© 2026 CommandAGI INC. Todos los derechos reservados. · Alineado con GDPR y CCPA · SOC 2 en curso
TérminosPrivacidadCookiesEstado

Para desarrolladores que escriben código sobre CommandAGI: los SDK, la API, las herramientas y la autenticación.

Primeros pasos
  • Descripción general
  • Cómo funciona
  • Inicio rápido
  • Autenticación
Ejemplos
  • Casos de uso
SDK
  • Introducción a los SDK
  • @commandagi/document
  • @commandagi/draw
  • @commandagi/units
  • @commandagi/node-kinds
  • Ejemplos
Herramientas y automatización
  • Herramientas y el servidor MCP
  • Conexiones
  • Disparadores y programación
  • Correo y mensajería
Referencia
  • Referencia de la API

Robots y simulaciones

Prueba robots en mundos 3D reales

Lanza una simulación de física 3D en la nube (o una celda de robot real) desde código — transmite la cámara del robot, envía acciones de conducción, y reinicia episodios. Sin agente: tú lo manejas, como un gimnasio en la nube.

El SDK de Python

El camino más rápido. launch() aprovisiona una VM real de GCE corriendo el mundo 3D, espera hasta que transmite, y te entrega un World que observas y sobre el que actúas. Siempre ciérralo con close() (o usa un bloque with) para liberar la VM.

install
pip install commandagi
python
from commandagi import CommandAGI

cagi = CommandAGI(api_key="cagi_…")            # or set COMMANDAGI_API_KEY

# Launch a real 3D physics world with a mobile robot and drive it yourself.
with cagi.launch("simulation/warehouse") as world:
    obs = world.observe()                      # JPEG bytes from the robot's head camera
    for _ in range(20):
        obs = world.step("turn", dir="left")   # send an action, get the next frame
    world.reset()                              # robot back to the episode start
# leaving the block stops the world and releases the cloud VM

También disponible para Node/TypeScript (npm install commandagi) y Go (en fase temprana). O habla la API HTTP + WebSocket cruda (abajo) desde cualquier lenguaje.

Mundos que puedes lanzar

Las simulaciones 3D integradas sueltan un robot móvil en una escena con física, con una cámara de cabeza y una base conducible:

  • simulation/warehouse — estantes y palés que navegar.
  • simulation/arm-cell — un brazo de mesa + pinza para manipulación.
  • simulation/playground — un mundo abierto con un rover para conducir.
  • simulation/the-matrix — el mundo público compartido (gratis).

Las computadoras funcionan de la misma manera — cagi.launch("computer/software-engineer") te da un escritorio Ubuntu en vivo cuyo observe() devuelve la pantalla y cuyas acciones son click/type/key.

Vocabulario de control

Las acciones se envían con world.act(name, **payload) o world.step(name, **payload):

  • Robot / simulación: move(speed), back(speed), turn(dir, rate), stop, reset (nuevo episodio — el robot vuelve a su pose inicial).
  • Computadora: click(x, y), type(text), key(key), move(x, y), scroll(x, y, dy) (el espacio de coordenadas es 1280×800).

Sin el SDK — HTTP + WebSocket crudos

Una «máquina» es un hilo sin agente con un dispositivo. Créala, adjunta un mundo, y luego abre el canal en tiempo real para transmitir cuadros y enviar acciones. Esto es exactamente lo que envuelve el SDK.

shell
# 1. Create an agentless machine, then attach a simulation world.
SID=$(curl -s https://api.commandagi.com/embodiment-threads \
  -H "Authorization: Bearer $COMMANDAGI_API_KEY" -d '{}' | jq -r .threadId)

curl -s https://api.commandagi.com/threads/$SID/robots \
  -H "Authorization: Bearer $COMMANDAGI_API_KEY" \
  -d '{ "snapshotId": "simulation/warehouse" }'
# → { "status": "granted", "worldId": "…", "embodimentId": "…" }
# Poll GET /threads/$SID until the embodiment status is "live" (~60–90s).
websocket
// wss://api.commandagi.com/rt/thread/{threadId}?role=owner&token={cagi_key}
// Control requires &token=<your API key> and you must own the thread. All messages are JSON.

← { "t": "frame", "embodimentId": "…", "channelId": "cam-head",
    "url": "data:image/jpeg;base64,…" }            // the robot's head camera
→ { "t": "control", "embodimentId": "…", "action": "move", "payload": { "speed": 0.8 } }
POST/embodiment-threadsCrea una máquina sin agente (un hilo que tú manejas, sin agente).
POST/app/threads/:id/robotsAdjunta una simulación 3D o un robot físico.
POST/app/threads/:id/computersAdjunta una computadora en la nube.
GET/me/embodiment-threadsTus máquinas en ejecución.
POST/app/threads/:id/execPausa el hilo (su tiempo de espera de inactividad libera la VM).

Trae tu propio robot

La dirección opuesta: pon tu robot en la plataforma. register_robot() crea un dispositivo y devuelve un puente — publica la cámara de tu robot y aplica las acciones que recibe. Cualquiera con el hilo (una persona, un agente, u otro cliente World de otro desarrollador) puede entonces observar y manejar tu robot, exactamente como una simulación alojada.

python
from commandagi import CommandAGI

cagi = CommandAGI(api_key="cagi_…")
bridge = cagi.register_robot("my-rover")       # registers a robot embodiment on the platform
print("watch + drive it at:", bridge.thread_url)

bridge.run(
    camera=lambda: my_robot.jpeg_frame(),      # () -> JPEG/PNG bytes (your camera)
    on_action=lambda a, p: my_robot.do(a, p),  # apply incoming actions to your hardware
    fps=10,
)                                              # blocks; Ctrl-C to take the robot offline

Un ejemplo completo, sin hardware (un rover virtual que puedes correr hoy, y luego cambiar por hardware real): github.com/CommandAGI/commandagi-example-byo-robot. Por debajo es el mismo protocolo en tiempo real, pero al revés — tu puente envía mensajes frame y recibe mensajes control.

Instantánea y bifurcación

Captura el estado de un mundo para bifurcarlo después (una VM nueva desde ese punto exacto): POST /threads/:id/devices/:deviceId/snapshot. Lánzalo desde una instantánea pasando fromSnapshotId a la llamada de adjuntar. Los mundos inactivos también se toman una instantánea automáticamente y se apagan tras la ventana de espera.

AutenticaciónReferencia de la API