Saltar al contenido principal

Remote Sessions

Al habilitar Remote Sessions puedes acceder a la misma sesión desde la web o el móvil mediante Mission Control de GitHub. Al activarlo, la sesión se conecta a Mission Control y se emite una URL que puedes compartir como enlace o código QR. Si lo que quieres es ejecutar la propia sesión en el entorno hospedado por GitHub en lugar de en local o en un servidor propio, usa Cloud Sessions.

Requisitos previos

  • El usuario está autenticado (token de GitHub o usuario ya logueado)
  • workingDirectory es un repositorio de GitHub

Opciones de configuración eliminadas

El SDK oficial 1.0.26 eliminó la opción de cliente remote, la opción de sesión remoteSession y el flag de inicio de la CLI --remote. Para compartir una sesión, habilítala bajo demanda con $session->rpc()->remote()->enable(). Los RPC existentes de sesiones remotas siguen funcionando.

Habilitar por sesión (bajo demanda)

Para compartir una sesión, cambia el acceso remoto vía RPC. Equivale a los comandos /remote on y /remote off del CLI.

Conectarse a una sesión remota existente (a nivel de servidor)

Para conectar el servidor CLI a una sesión remota existente, llama a $client->rpc()->sessions()->connect(). Pasa el sessionId remoto en ConnectRemoteSessionParams. El resultado contiene el sessionId del lado del SDK y los metadatos de la sesión remota.

Remote Control para todo el runtime (modo TCP)

La propiedad remote de RemoteControlConfig configura el Remote Control para todo el runtime. No tiene relación con la opción de inicio remote del cliente que se eliminó. En modo TCP, usa $client->rpc()->sessions() para gestionar un único Remote Control para todo el runtime. A diferencia de remote()->enable() por sesión, estos métodos te permiten iniciar, detener y transferir Remote Control entre sesiones, y consultar su estado actual.
El estado es uno de off, connecting, active o error. Cuando el estado es active, también puedes consultar frontendUrl e isSteerable.
Para notificar al runtime que la posibilidad de control remoto de una sesión ha cambiado, usa el RPC con ámbito de sesión.

Generar códigos QR

Puedes convertir la URL remota obtenida en un código QR y pasársela al móvil. Puedes usar BaconQrCode, que también usa Laravel Fortify.

Consideraciones

  • Si workingDirectory no es un repositorio de GitHub, remote()->enable() puede devolver un error.
  • Configura correctamente las credenciales (github_token o use_logged_in_user).

Referencias

Consulta la información más reciente en el repositorio de GitHub.
Última modificación el 26 de octubre de 2026