{"meta":{"title":"Descripción de las directivas del sistema de archivos para el espacio aislado local en GitHub Copilot CLI","intro":"Cuando se habilita el espacio aislado local, Copilot CLI ejecuta cada proceso o operación de espacio aislado en una directiva del sistema de archivos que controla qué archivos y directorios pueden leer y escribir. Obtenga información sobre cómo se compila esa directiva y cómo comprobar el acceso que concede.","product":"GitHub Copilot","breadcrumbs":[{"href":"/es/copilot","title":"GitHub Copilot"},{"href":"/es/copilot/concepts","title":"Conceptos"},{"href":"/es/copilot/concepts/agents","title":"Agentes"},{"href":"/es/copilot/concepts/agents/copilot-cli","title":"Copilot CLI"},{"href":"/es/copilot/concepts/agents/copilot-cli/understanding-local-sandboxing","title":"Descripción del espacio aislado local"}],"documentType":"article"},"body":"# Descripción de las directivas del sistema de archivos para el espacio aislado local en GitHub Copilot CLI\n\nCuando se habilita el espacio aislado local, Copilot CLI ejecuta cada proceso o operación de espacio aislado en una directiva del sistema de archivos que controla qué archivos y directorios pueden leer y escribir. Obtenga información sobre cómo se compila esa directiva y cómo comprobar el acceso que concede.\n\n> \\[!NOTE]\n> Los espacios aislados locales para GitHub Copilot están en versión preliminar pública y están sujetos a cambios.\n\n> \\[!IMPORTANT]\n> El espacio aislado local en Windows requiere una compilación de Windows Insiders.\n\n## Introduction\n\nAl habilitar el espacio aislado local, Copilot CLI ejecuta los comandos que invoca en su nombre dentro de un espacio aislado del sistema operativo. El espacio aislado aplica una **directiva de sistema de archivos**: un conjunto de reglas que deciden qué rutas de acceso puede leer un proceso o una operación de espacio aislado, que puede escribir y cuáles no pueden tocar en absoluto.\n\nLa mayoría de esta directiva se ensambla automáticamente, de modo que los comandos diarios sigan funcionando sin configurar. En este artículo se explica cómo Copilot llega a la directiva y cómo comprobar el acceso que concede en un directorio determinado.\n\nPara obtener información general sobre el espacio aislado local, incluido cómo activarlo y desactivarlo, consulte [Acerca de los espacios aislados locales y en la nube para GitHub Copilot](/es/copilot/concepts/about-cloud-and-local-sandboxes) y [Uso del espacio aislado local](/es/copilot/how-tos/cloud-and-local-sandboxes/using-local-sandboxing).\n\n## ¿A qué se aplica la directiva?\n\nLa directiva del sistema de archivos cubre el trabajo Copilot en su nombre, pero se aplica de maneras diferentes en función del tipo de trabajo:\n\n* **Los comandos de Shell y las búsquedas integradas** se ejecutan como procesos secundarios de espacio aislado, por lo que el sistema operativo aplica la directiva directamente. Las `grep` herramientas y `glob` , por ejemplo, ejecutan ripgrep como un proceso secundario de espacio aislado.\n* **Los procesos locales de MCP y del servidor de lenguaje (LSP)** también se pueden ejecutar dentro del espacio aislado, por lo que el sistema operativo también aplica la directiva en ellos.\n* **Las herramientas integradas de lectura de archivos y edición de archivos** se ejecutan como parte de sí mismo en lugar de Copilot CLI como un proceso secundario de espacio aislado. Comprueban la misma directiva del sistema de archivos antes de leer o escribir un archivo, pero dado que el espacio aislado del sistema operativo nunca ve estas operaciones, la comprobación es una protección solo de software en lugar de una que el sistema operativo aplica.\n* **Los servidores MCP remotos** se ejecutan fuera de la máquina, por lo que no hay ningún proceso secundario local en el espacio aislado y la directiva del sistema de archivos no las restringe.\n* **Los subagentes** no actúan directamente; orquestan otras herramientas. Si se aplica la directiva y cómo depende de la herramienta que invoca un subagente.\n\nPor lo tanto, un **proceso** de espacio aislado está restringido por el sistema operativo, mientras que una **operación** en proceso aplica la misma directiva en el software, por lo que este artículo hace referencia a un proceso o operación de espacio aislado en lugar de solo a comandos.\n\n## Niveles de permisos\n\nEl espacio aislado es **deny-by-default**: a menos que se conceda explícitamente una ruta de acceso, un comando no puede usarlo. Cada ruta de acceso de la directiva tiene uno de los tres niveles de permisos:\n\n* **Lectura y escritura** : el comando puede leer y modificar archivos en esta ruta de acceso.\n* **Solo lectura** : el comando puede leer archivos en esta ruta de acceso, pero no cambiarlos.\n* **Denegado** : el comando no puede leer ni escribir en esta ruta de acceso, aunque una regla más amplia lo permita.\n\nDado que se deniega el acceso a menos que se conceda, Copilot debe conceder un comando todo lo que necesita legítimamente, los archivos del proyecto, las herramientas que ejecuta y las ubicaciones auxiliares, como directorios temporales, al tiempo que mantiene todo lo demás fuera de los límites.\n\n> \\[!NOTE]\n> Estos niveles de permisos se aplican a cada proceso o operación de espacio aislado, pero se aplican de forma diferente: para los procesos secundarios de espacio aislado, el sistema operativo los aplica directamente, mientras que las propias herramientas integradas de lectura de archivos y edición de archivos de la CLI comprueban los mismos niveles de software, sin un backstop del sistema operativo.\n\n## Cómo se compila la directiva\n\nAntes de que se inicie cada proceso de espacio aislado, Copilot CLI resuelve la directiva efectiva para ese proceso mediante el directorio de trabajo actual, el entorno, la configuración y las concesiones automáticas. Esto restringe el proceso solo al acceso que necesita y significa que no tiene que administrar estas ubicaciones comunes usted mismo.\n\n### El directorio de trabajo\n\nCuando **Include working directory (Incluir directorio de trabajo** ) está habilitado en la configuración del sistema de archivos para el espacio aislado local, como es de forma predeterminada, el directorio de trabajo actual tiene acceso de lectura y escritura. En un repositorio de Git, Copilot también agrega las concesiones de Git asociadas. Al desactivar esta configuración, se suprimen todas esas concesiones automáticas, por lo que debe agregar reglas de permiso para las rutas de acceso de Git y del proyecto necesarias manualmente. Consulte [Configurar la configuración del entorno aislado local](/es/copilot/how-tos/cloud-and-local-sandboxes/configuring-local-sandbox-settings).\n\n> \\[!NOTE]\n> Si obtiene Copilot de una organización de propiedad empresarial, un administrador puede desactivar la configuración **Incluir directorio de trabajo** y bloquearla, por lo que no puede volver a activarla. Consulte [Configuración administrada por la empresa](/es/copilot/reference/enterprise-administrators/enterprise-managed-settings#sandbox).\n\n### Herramientas en la ruta de acceso\n\nPara ejecutar un programa como `python` o `git`, el espacio aislado tiene que permitir que el comando vea el directorio en el que reside el programa. La `PATH` variable de entorno enumera estos directorios y Copilot les concede acceso de **solo** lectura, junto con directorios denominados por variables de herramientas relacionadas, como `GOPATH`, `CARGO_HOME`y `PYTHONPATH`. Solo lectura es el nivel adecuado para las herramientas externas: un comando debe ejecutar `git`, no modificarlo. Para obtener la lista completa de las `PATH` variables de entorno de cadena de herramientas y el espacio aislado inspecciona y cómo se interpreta cada una de ellas, consulte [Referencia de comandos de la CLI de GitHub Copilot](/es/copilot/reference/copilot-cli-reference/cli-command-reference#sandbox-tool-directory-grants).\n\n### Ubicaciones del sistema y del perfil\n\nA las ubicaciones estándar del sistema y al directorio de perfil de usuario (inicio) se les concede solo lectura, de modo que los comandos puedan leer archivos de configuración y bibliotecas compartidas sin poder cambiarlos.\n\n### Cachés del administrador de paquetes\n\nPara permitir que las instalaciones y compilaciones funcionen dentro del espacio aislado, Copilot también concede acceso a las memorias caché y los registros usados por administradores de paquetes comunes y cadenas de herramientas, solo lectura para registros y cadenas de herramientas, y lectura y escritura para las memorias caché de compilación. En el `/sandbox policy` informe, aparece como **acceso a la herramienta de desarrollo**.\n\n### Repositorios Git\n\nCuando trabaja en un subdirectorio de un repositorio de Git, Copilot concede acceso de **lectura** a todo el repositorio para que los comandos puedan ver el proyecto completo, al tiempo que limita **las escrituras** en el directorio de trabajo actual y los metadatos de Git del repositorio (su `.git` directorio). Esto permite que un comando lea en el repositorio, pero mantiene los cambios centrados en dónde está trabajando.\n\nDado que el acceso de lectura abarca todo el repositorio, un comando de espacio aislado puede leer archivos fuera del subdirectorio actual, incluida cualquier información confidencial almacenada en otro lugar del proyecto. Para mantener las rutas de acceso específicas fuera de alcance, puede agregar reglas de denegación. Consulte [Configurar la configuración del entorno aislado local](/es/copilot/how-tos/cloud-and-local-sandboxes/configuring-local-sandbox-settings).\n\n## Cuando las reglas de acceso se superponen\n\nDado que Copilot concede varias ubicaciones y puede agregar sus propias reglas, las reglas se pueden superponer. Cuando lo hacen, el **camino más específico gana**. Por ejemplo, si `/project` se puede escribir, pero se marca `/project/secrets` solo lectura, todo en `/project` permanece grabable excepto `/project/secrets`. Se trata de una manera útil de proteger una subcarpeta confidencial.\n\nLas superposiciones también se resuelven en su favor cuando una concesión de conveniencia se obtendría de otro modo. Considere un proyecto de Python con un entorno virtual local (`.venv`) que aparece en `PATH`. El tratamiento de ese directorio como una ubicación normal de la herramienta de solo lectura haría que sea de solo lectura, aunque se encuentre dentro del proyecto grabable, y un comando como `pip install` podría producir un error cuando intentó actualizar el entorno.\nCopilot resuelve esto automáticamente: una concesión que se agrega automáticamente (como un directorio de herramientas en `PATH`) da forma a una concesión de lectura y escritura más amplia que ya la cubre. Por lo tanto, un directorio local `.venv`de proyecto , `node_modules/.bin`o similar permanece grabable como parte del área de trabajo.\n\nLas reglas que **configure siempre** se conservan. Si marca una ruta de acceso de solo lectura o la deniega, esa decisión se mantiene incluso cuando se detectara y concedera automáticamente la misma ruta de acceso. Esto le proporciona una manera confiable de proteger una ubicación confidencial, por ejemplo, denegar un `.env` archivo para que ningún comando de espacio aislado pueda leer los secretos.\n\n## Comprobación de lo que permite la directiva actual\n\nDado que la directiva se ensambla para cada directorio y comando, la manera más sencilla de ver el acceso que tiene es preguntar Copilot CLI. En una sesión, escriba:\n\n```shell copy\n/sandbox policy\n```\n\nCopilot imprime la directiva **efectiva** para el directorio actual: las rutas de acceso de lectura y escritura, solo lectura y denegado que recibiría un comando iniciado desde aquí, junto con el acceso a la red y el acceso a la herramienta de desarrollo en vigor. Este es el resultado resuelto después de que las concesiones automáticas y su propia configuración se hayan combinado y se hayan resuelto las superposiciones, no solo una copia de la configuración guardada.\n\nAlgunas cosas que debe tener en cuenta al leer el informe:\n\n* Refleja el **directorio actual**. Dado que las concesiones se detectan por directorio, la misma configuración puede resolverse en rutas de acceso diferentes en función de dónde se ejecute.\n* Si no existe una ruta de acceso configurada en el disco, se deja fuera de la directiva y se indica en una sección **Notas** . Esto explica por qué es posible que una regla que haya agregado no tenga ningún efecto.\n* Si el espacio aislado está desactivado, `/sandbox policy` le indica que en lugar de imprimir una directiva, ya que no hay restricciones vigentes.\n\nPara comprobar solo si el espacio aislado está activado actualmente, use `/sandbox status`. Para obtener más información sobre estos comandos, consulte [Uso del espacio aislado local](/es/copilot/how-tos/cloud-and-local-sandboxes/using-local-sandboxing).\n\n## Personalización de la directiva\n\nPuede conceder rutas de acceso adicionales de lectura y escritura o de solo lectura, denegar rutas de acceso y cambiar otro comportamiento del sistema de archivos, ya sea desde el cuadro de diálogo o en el `/sandbox config` archivo de configuración. Después de realizar un cambio, ejecute `/sandbox policy` para confirmar el resultado. Para obtener instrucciones paso a paso, consulte [Configurar la configuración del entorno aislado local](/es/copilot/how-tos/cloud-and-local-sandboxes/configuring-local-sandbox-settings).\n\n## Directivas administradas por la empresa\n\nSi se realiza Copilot a través de una organización de propiedad empresarial, un administrador puede aplicar una directiva de sistema de archivos a través de la configuración administrada. La configuración administrada actúa como una línea de base que no se puede aflojar: pueden requerir espacio aislado, agregar rutas de acceso denegadas y limitar las rutas de acceso que puede conceder. Cuando se aplica una configuración administrada, el `/sandbox config` cuadro de diálogo lo muestra como un valor bloqueado **(administrado)** y `/sandbox policy` lo refleja en la directiva resuelta.\n\nA diferencia de la mayoría de la configuración, donde gana un único origen, la directiva de espacio aislado se compone de cada origen en vigor a la vez. La configuración administrada puede llegar a través de más de un canal simultáneamente (administrado por el servidor, MDM y basado en archivos), y estos se combinan entre sí, y con su propia configuración, en la dirección **más restrictiva** en lugar de un origen reemplazando a otro: un botón de alternancia necesario permanece activado, las rutas de acceso denegadas de todos los orígenes se agregan y las rutas de acceso que puede conceder solo se pueden restringir. Para obtener más información, vea [Configuración administrada por la empresa](/es/copilot/reference/enterprise-administrators/enterprise-managed-settings#sandbox).\n\n## Lectura adicional\n\n* [Acerca de los espacios aislados locales y en la nube para GitHub Copilot](/es/copilot/concepts/about-cloud-and-local-sandboxes)\n* [Uso del espacio aislado local](/es/copilot/how-tos/cloud-and-local-sandboxes/using-local-sandboxing)\n* [Configurar la configuración del entorno aislado local](/es/copilot/how-tos/cloud-and-local-sandboxes/configuring-local-sandbox-settings)"}