Skip to main content

Sesiones remotas

Permite a los usuarios acceder a su Copilot sesión desde la GitHub web y el móvil conectando la sesión a Mission Control.

¿Quién puede utilizar esta característica?

SDK de GitHub Copilot está disponible con todos los Copilot planes.

Nota:

SDK de Copilot actualmente está en versión preliminar pública. La funcionalidad y la disponibilidad están sujetas a cambios.

Las sesiones remotas permiten a los usuarios acceder a su Copilot sesión desde GitHub web y móvil. Cuando está habilitada, SDK de Copilot conecta cada sesión a Mission Control, lo que genera una dirección URL que se puede compartir como un vínculo o código QR.

Prerequisites

  • El usuario debe autenticarse (GitHub token o usuario que ha iniciado sesión).
  • El directorio de trabajo de la sesión debe ser un repositorio de GitHub

Habilitación de sesiones remotas

Puede habilitar el acceso remoto en el nivel de cliente (siempre activado) o alternarlo por sesión (a petición).

Siempre activado (a nivel de cliente)

Establezca remote: true al crear el cliente. Cada sesión de un repositorio de GitHub obtiene automáticamente una dirección URL remota.

import { CopilotClient } from "@github/copilot-sdk";

const client = new CopilotClient({ remote: true });
const session = await client.createSession({
  workingDirectory: "/path/to/github-repo",
  onPermissionRequest: async () => ({ allowed: true }),
});

session.on("session.info", (event) => {
  if (event.data.infoType === "remote") {
    console.log("Remote URL:", event.data.url);
  }
});

Para obtener ejemplos en Python, Go, C#y Rust, consulte el repositorio github/copilot-sdk. Para Java, consulte el github/copilot-sdk-java repositorio.

Alternancia a petición (alternancia por sesión)

Use session.rpc.remote.enable() para iniciar el acceso remoto a mitad de sesión y session.rpc.remote.disable() para detenerlo. Esto equivale a los comandos /remote on y /remote off de CLI de Copilot.

const result = await session.rpc.remote.enable();
console.log("Remote URL:", result.url);

// Later: stop sharing
await session.rpc.remote.disable();

Para obtener ejemplos en Python, Go, C#y Rust, consulte el repositorio github/copilot-sdk. Para Java, consulte el github/copilot-sdk-java repositorio.

Generación de código QR

La dirección URL remota se puede representar como un código QR para facilitar el acceso móvil. SDK de Copilot proporciona la dirección URL: use la biblioteca de códigos QR preferida.

Notas

  • La remote opción de cliente solo se aplica cuando SDK de Copilot genera CLI de Copilot. Se omite al conectarse a un servidor externo a través de cliUrl.
  • Si el directorio de trabajo no es un repositorio de GitHub, la configuración remota se omite silenciosamente (modo siempre activado) o devuelve un error (modo a petición).
  • Las sesiones remotas requieren autenticación. Asegúrese de que gitHubToken o useLoggedInUser esté configurado.