Nota:
Los espacios aislados locales y en la nube para GitHub Copilot están en y versión preliminar pública están sujetos a cambios.
Introducción
Copilot los espacios aislados locales y en la nube son la plataforma de ejecución que potencia las experiencias seguras de espacio aislado para GitHub Copilot CLI y GitHub Copilot app. A medida que Copilot realiza más acciones en su nombre —usar herramientas, ejecutar comandos y modificar archivos—, el sandboxing proporciona el aislamiento, la portabilidad y los controles de políticas necesarios para adoptar de forma segura flujos de trabajo con agentes.
El aislamiento está disponible tanto en GitHub Copilot CLI como en GitHub Copilot app, pero ambos entornos lo exponen de forma diferente:
- En Copilot CLI, controla el aislamiento local y en la nube con los comandos y la configuración descritos en este artículo.
- En el GitHub Copilot app, eliges el aislamiento en la nube al comenzar una nueva sesión, sin ejecutar ningún comando. Esta característica está actualmente en versión preliminar pública y está sujeta a cambios. Para obtener más información, vea Trabajar con sesiones de agente en la aplicación GitHub Copilot.
Con el aislamiento en zona protegida, puedes elegir dónde se ejecuta Copilot:
- Aislamiento local: Ejecute Copilot de forma segura en su propia máquina. Los comandos que ejecuta Copilot tienen un acceso restringido al sistema de archivos, la red y las capacidades del sistema. Puede usar el espacio aislado local sin cargo adicional.
- Aislamiento en la nube: Ejecuta una sesión completa Copilot de forma remota, dentro de un entorno Linux completamente aislado y efímero, alojado por GitHub. El sandboxing en la nube se factura según el uso.
Aislamiento local
Nota:
El aislamiento local es actualmente una función experimental. Para usarlo, comience Copilot CLI con la opción de ‑‑experimental línea de comandos o escriba /experimental on durante una sesión.
El aislamiento local permite que Copilot se ejecute en un entorno aislado directamente en tu equipo, con acceso restringido a tu sistema de archivos, a la conectividad de red y a las capacidades del sistema. Puede configurar el aislamiento local en Copilot CLI mediante los comandos y las configuraciones que se describen en las secciones siguientes.
El espacio aislado local está desactivado de forma predeterminada. Hasta que lo habilites, los comandos de shell que ejecuta Copilot se ejecutan directamente en tu equipo con el mismo nivel de acceso que tu cuenta de usuario: pueden leer, escribir y eliminar en cualquier lugar al que tú puedas acceder, alcanzar cualquier red a la que tu equipo pueda acceder y usar tus credenciales sin restricciones. Habilitar el espacio aislado local restringe este acceso a una política que usted controla.
Cómo funciona el aislamiento local
El aislamiento local se basa en Microsoft eXecution Container (MXC), una tecnología multiplataforma que proporciona una interfaz común para los mecanismos de aislamiento disponibles en cada sistema operativo. Copilot CLI declara la política de aislamiento que quiere aplicar —qué rutas se pueden leer o escribir, si se permite el acceso a la red, etc.— y MXC aplica esa política mediante el mecanismo de aislamiento adecuado para su sistema operativo.
Existen tecnologías de aislamiento en un espectro, desde un aislamiento fuerte, como hipervisores o contenedores completos, hasta un aislamiento de peso más ligero, como el proceso de nivel de sistema operativo y la contención del sistema de archivos. El aislamiento local se sitúa actualmente en el extremo más liviano de este espectro: restringe lo que un proceso puede leer, escribir y a qué recursos de la red puede acceder, pero no ejecuta sus comandos dentro de una máquina virtual o un contenedor independientes. Si desea evaluar si este nivel de aislamiento cumple los requisitos de seguridad, consulte el repositorio microsoft/mxc para obtener más información sobre la implementación.
Para obtener más información, vea Comprender las políticas del sistema de archivos para el aislamiento local en GitHub Copilot CLI.
Habilitación del espacio aislado local
Para habilitar el aislamiento local dentro de una sesión Copilot CLI, ejecute:
/sandbox enable
/sandbox enable
Después de habilitar el espacio aislado local, los comandos y las herramientas que ejecuta un agente en su nombre (comandos de shell, búsqueda de archivos y, de forma predeterminada, los servidores MCP y el lenguaje (LSP) que inicia la CLI, se ejecutan dentro de un espacio aislado de nivel de sistema operativo, lo que limita su acceso al sistema. La CLI seguirá usando el aislamiento local cada vez que uses la CLI en el futuro, tanto de forma programática como interactiva, hasta que ejecutes /sandbox disable para desactivarlo. Si la configuración administrada por la empresa requiere aislamiento en entorno aislado, la configuración normal, las opciones de inicio y /sandbox disable no pueden desactivarlo. Si la directiva efectiva permite eludir el aislamiento, aun así puede desactivar explícitamente el aislamiento durante el resto de la sesión actual desde un mensaje activo de solicitud de permiso de elusión.
Las herramientas de archivos integradas de la CLI —comandos nativos que forman parte de la CLI, en lugar de comandos de shell como sed— se ejecutan dentro del proceso de la CLI. Dado que la propia CLI no está aislada, el entorno aislado del sistema operativo nunca ve las operaciones sobre archivos que realizan estas herramientas y no puede restringirlas. En su lugar, las herramientas integradas están diseñadas para comprobar por sí mismas la política de aislamiento y respetar la configuración establecida en la medida de lo posible.
Para obtener más información, vea Uso del aislamiento local.
Configurar el aislamiento local
Puede usar el comportamiento predeterminado de aislamiento local o modificar a qué puede acceder Copilot. Al configurar el aislamiento local, puede controlar varias dimensiones de acceso:
- Sistema de archivos: conceda acceso de solo lectura o de lectura y escritura a rutas específicas, o deniegue el acceso a determinadas rutas.
- Red: permita o bloquee el acceso saliente a Internet y el acceso a la red local de forma independiente.
- Credenciales: elija si las credenciales de Git y GitHub CLI (
gh) se ponen a disposición dentro del entorno aislado. - Subprocesos: elija si los servidores MCP locales y los servidores de idioma también se ejecutan dentro del espacio aislado. Los servidores MCP remotos nunca se ejecutan en un entorno aislado.
- Cadena de claves (macOS): elija si se puede acceder a la cadena de claves del sistema desde el espacio aislado.
- Excepciones por comando: permita o impida que los comandos individuales se ejecuten fuera del espacio aislado cuando necesiten acceso más amplio.
Para obtener más información, vea Configurar la configuración del entorno aislado local.
Compatibilidad multiplataforma.
El aislamiento local está disponible en macOS, en Linux y en versiones recientes de Windows 11. Cada sistema operativo usa un back-end de aislamiento diferente, por lo que los requisitos son diferentes:
- macOS usa el back-end de Seatbelt. Copilot CLI aplica un perfil de ámbito de proceso a cada comando de espacio aislado. Usa macOS 15 (Sequoia) o una versión posterior. Copilot CLI no bloquea un macOS anterior, pero el back-end no se prueba allí.
- Linux usa el backend bubblewrap. Instale bubblewrap 0.5.0 o posterior, y asegúrese de que
bwrapesté en suPATH. Si/sandboxindica que subwrapes demasiado antiguo, actualice el paquete. - Windows usa el nivel BaseContainer del back-end ProcessContainer. Copilot CLI no usa los niveles alternativos de AppContainer. Si su compilación de Windows no puede proporcionar BaseContainer, Copilot CLI informa de que el aislamiento no es compatible. Para conocer las versiones compatibles de Windows, consulte Compatibilidad del sistema operativo Windows con el aislamiento de Copilot.
Compatibilidad con proxy
El proxy del entorno aislado funciona de forma diferente en cada sistema operativo:
-
macOS: Copilot CLI no proporciona el proxy a Seatbelt. En su lugar, establece
HTTP_PROXY,HTTPS_PROXYyALL_PROXYen el entorno aislado. Solo los programas que obedezcan a estas variables usan el proxy. Un programa que los omite se conecta directamente. -
Linux: bubblewrap impone el uso del proxy. El entorno aislado dispone de un espacio de nombres de red privado y solo está permitido el extremo del proxy. Este modo tiene más requisitos. Debe disponer de lo siguiente:
slirp4netnsen elPATH.unshareynsenterde util-linux 2.35 o posterior, con compatibilidad con--map-current-usery--keep-caps.iptablesyip6tables. Utilice el backendnf_tables. El backend heredado también funciona, pero solo si se puede escribir en/run/xtables.lock.
Se aplican dos límites más en Linux. El proxy debe tener una dirección IPv4, ya Copilot CLI que rechaza un proxy al que solo puede llegar IPv6. La dirección URL del proxy no debe contener credenciales, por lo que debe proporcionar las credenciales al propio proxy.
Además, en Linux, bubblewrap no puede controlar el acceso a la red local independientemente del acceso saliente. Por lo tanto, la configuración de red local no tiene allí un efecto independiente.
-
Windows: el proxy no está disponible. Tampoco use rutas de acceso denegadas en Windows. Copilot CLI no puede aplicar estos ajustes, y el comando aislado falla con un error.
Si el anfitrión no admite el aislamiento local
Copilot CLI desactiva el sandbox para la sesión y muestra un aviso. Entonces, los comandos del shell y los servicios aislados se ejecutan sin aislamiento, y tu configuración de sandbox.enabled no cambia. Si su empresa aplica el espacio aislado a través de la configuración administrada por el dispositivo, la sesión produce un error cerrado en su lugar: los comandos de espacio aislado no se ejecutan.
Cumplimiento de directivas empresariales
Las empresas pueden requerir espacio aislado local y aplicar su configuración a través de la configuración administrada por el servidor, administrada por MDM o basada en archivos. Consulte Introducción a la configuración administrada por la empresa.
Aislamiento en la nube
El aislamiento en la nube permite ejecutar sesiones en entornos Linux efímeros y totalmente aislados alojados en GitHub. Puede usar el aislamiento en la nube tanto desde Copilot CLI como desde el GitHub Copilot app. Cada sesión de espacio aislado en la nube está aislada del entorno local y de otras sesiones.
El aislamiento en la nube se basa en los espacios aislados de Azure Container Apps, y GitHub proporciona la capa de identidad, directivas y facturación.
Nota:
Si obtiene Copilot a través de una organización, el acceso al entorno aislado en la nube depende de que esté habilitado en la configuración de la organización o de la empresa, en la que está deshabilitado de forma predeterminada. Para obtener más información, vea Habilitación o deshabilitación de espacios aislados en la nube para su organización o empresa.
Inicio de una sesión en un entorno aislado en la nube
Para iniciar una sesión respaldada por la nube, ejecute el siguiente comando:
copilot ‑‑cloud ‑‑experimental
copilot ‑‑cloud ‑‑experimental
Nota:
El aislamiento en la nube es actualmente una función experimental. Para usarlo, debe tener activadas las funciones experimentales para Copilot CLI; por ejemplo, usando la opción de línea de comandos ‑‑experimental al iniciar una sesión de CLI, como se muestra arriba.
La opción de línea de comandos ‑‑cloud inicia una sesión interactiva Copilot CLI dentro de un entorno aislado en la nube. Puede solicitar que Copilot realice tareas, ejecutar comandos de shell e iterar en el código de la misma manera que lo haría en una sesión local. Los comandos que ejecuta Copilot se ejecutan en el entorno de nube, no en tu equipo local.
Al ejecutar copilot ‑‑cloud, se inicia una única sesión de Copilot CLI en un entorno aislado en la nube. No afecta a las sesiones futuras Copilot . Cada vez que quiera ejecutar una nueva sesión en un espacio aislado en la nube, debe iniciar la CLI con la ‑‑cloud opción .
Nota:
El entorno aislado en la nube solo está disponible para sesiones interactivas Copilot CLI. No se puede ejecutar la interfaz de línea de comandos de forma programática en un entorno aislado en la nube; es decir, no se puede combinar la opción ‑‑cloud con las opciones -p o -i.
En el GitHub Copilot app, no se utiliza ningún comando para iniciar una sesión de entorno de pruebas en la nube. En su lugar, elija la opción de espacio aislado en la nube al crear una nueva sesión. Para obtener más información, vea Trabajar con sesiones de agente en la aplicación GitHub Copilot.
Continuar sesiones entre dispositivos
Dado que las sesiones de entorno aislado en la nube se ejecutan en infraestructura hospedada en GitHub, puede reanudar una sesión de Copilot en cualquier dispositivo, independientemente de dónde se iniciara originalmente la sesión. Esto permite flujos de trabajo más flexibles sin necesidad de copiar archivos ni volver a instalar dependencias.
Delegue flujos de trabajo con uso intensivo de procesamiento
Puede ejecutar varias Copilot tareas en paralelo en la nube sin consumir recursos locales. Esto mantiene el entorno local ligero y dinámico al escalar el trabajo controlado por agentes.
Gobernanza unificada
Las directivas de entorno aislado en la nube comparten la misma configuración que las directivas de Copilot cloud agent, lo que amplía los controles de seguridad existentes a la ejecución en aislamiento en entorno de nube sin necesidad de configuración adicional.
Ciclo de vida de la sesión
Una sesión de entorno aislado en la nube tiene tres estados principales:
- Activo: la sesión está en ejecución y estás interactuando con ella desde Copilot CLI o GitHub Copilot app.
- Detenido: la sesión no se está ejecutando actualmente, pero su estado se guarda. Al reanudarlo, se restauran los archivos, las variables de entorno y el trabajo en curso.
- Eliminado: la sesión y su estado guardado se quitan y no se pueden recuperar.
Al detener una sesión, el entorno aislado en la nube crea una instantánea de su estado para que pueda retomar la sesión más adelante desde donde la dejó. Al eliminar una sesión, se quitan tanto el entorno en ejecución como la instantánea.
Autenticación y acceso
El aislamiento utiliza tu autenticación existente Copilot. Si puede iniciar sesión en Copilot CLI o en el GitHub Copilot app y tiene acceso a Copilot, no es necesario configurar una autenticación independiente para las opciones de aislamiento disponibles en esa superficie. No es necesario configurar un proveedor de nube independiente, administrar claves de API ni configurar la infraestructura.
El propietario de una organización o empresa debe habilitar la directiva de Acceso a Cloud Sandbox en la configuración de la organización o de la empresa para que los miembros puedan usar sandboxes en la nube.
Para obtener información sobre cómo habilitar o deshabilitar espacios aislados en la nube para los miembros de su organización, consulte Habilitación o deshabilitación de espacios aislados en la nube para su organización o empresa.
Billing
El espacio aislado local se incluye en el asiento estándar de GitHub Copilot sin coste adicional.
El sandboxing en la nube se factura según el uso. GitHub mide el uso del espacio aislado en la nube en tres metros:
| Meter | Description | Unidad | Precio (USD) |
|---|---|---|---|
| Compute | Tiempo durante el que una sesión de espacio aislado en la nube está en ejecución. | Segundo de proceso | 0,000024 USD |
| Memoria | Memoria asignada a una sesión de espacio aislado en la nube mientras se ejecuta. | GiB por segundo | 0,000003 USD |
| Storage | Almacenamiento de instantáneas para sesiones detenidas. | GiB/mes | 0,005 $ |
Para obtener más información sobre cómo se mide y factura el uso del entorno de pruebas en la nube, consulte Facturación de espacios aislados locales y en la nube para GitHub Copilot.