Comportamiento predeterminado de los permisos
En el modo Normal (el predeterminado), las operaciones de solo lectura se aprueban automáticamente, mientras que las escrituras y los comandos de shell requieren tu aprobación explícita. Cada vez que apruebas una acción, puedes elegir permitirla una vez, durante la sesión o de forma permanente para el proyecto.
En el modo Aceptar ediciones, las ediciones de archivos dentro del workspace se aprueban automáticamente, pero los comandos de shell y las escrituras fuera del workspace siguen requiriendo aprobación.
En el modo Omitir, todas las llamadas a herramientas se aprueban automáticamente sin solicitar confirmación.
En el modo Autónomo, los comandos de shell y las solicitudes de red se aprueban automáticamente porque el sandbox a nivel del sistema operativo limita a qué pueden acceder. Las ediciones directas de archivos mediante las herramientas
edit/write siguen requiriendo aprobación, porque esas herramientas funcionan fuera del sandbox. Autónomo solo está disponible cuando el sandbox a nivel del sistema operativo está activo.
Modo autónomo
--sandbox. Conceptualmente, equivale más o menos a “Aceptar ediciones en el workspace actual” más la capacidad de ejecutar cualquier comando de shell, con ambos comportamientos contenidos por el sandbox a nivel del sistema operativo. Cuando el sandbox está activo:
- Es el único modo de permisos disponible. Normal, Aceptar ediciones y Omitir se ocultan en las sesiones con sandbox. El modo Plan sigue estando disponible.
- Los comandos de shell y las operaciones de fetch se aprueban automáticamente en lugar de pedir confirmación, porque el sandbox impone lo que pueden leer, escribir y alcanzar a través de la red.
- Las ediciones directas de archivos mediante las herramientas
editywritesiguen pidiendo confirmación. Estas herramientas se ejecutan dentro del proceso de la CLI, en lugar de hacerlo dentro del sandbox, por lo que no pueden quedar restringidas por él. Conceder un ámbitoWrite(...)en el prompt amplía dinámicamente el sandbox para que los comandos de shell posteriores puedan escribir allí. - Los ámbitos concedidos a mitad de la sesión amplían dinámicamente el sandbox para los comandos posteriores.
--sandbox (que selecciona Autonomous) cuando quieras una ejecución desatendida con límites aplicados por el sistema operativo al acceso al sistema de archivos y a la red. Consulta la referencia de configuración de sandbox para obtener más información sobre las raíces con permisos de lectura/escritura y el filtrado de dominios, y Team Settings → Aplicación de Sandbox para los controles de Enterprise.
Cómo funcionan los permisos
- Reglas de denegación — Se comprueban primero. Si coinciden, la acción se bloquea de inmediato.
- Reglas de solicitud — Se comprueban en segundo lugar. Si coinciden, siempre se te pedirá confirmación (tienen prioridad sobre cualquier regla de autorización).
- Reglas de autorización — Se comprueban al final. Si coinciden, la acción continúa sin pedir confirmación.
- Predeterminado — Si no coincide ninguna regla, se te pedirá aprobación.
Como la denegación se comprueba antes que la solicitud, y la solicitud se comprueba antes que la autorización, una regla de denegación siempre prevalece. Si el mismo ámbito coincide tanto con una regla de denegación como con una de solicitud, se aplica la denegación.
Configuración
permissions de tu archivo de configuración:
En Windows, la ruta del archivo de configuración del usuario es
%APPDATA%\devin\config.json (normalmente C:\Users\<you>\AppData\Roaming\devin\config.json) en lugar de ~/.config/devin/config.json. Consulta Archivo de configuración para obtener más detalles.- Configuración del proyecto
- Configuración del usuario
- Anulación local
Sintaxis de permisos
Permisos basados en el ámbito
Read(glob)
Read(glob)
Controla el acceso de lectura a archivos. El patrón glob coincide con rutas de archivo.Las rutas de directorio incluyen automáticamente todos los archivos que contienen.
Write(glob)
Write(glob)
Controla el acceso de escritura y edición de archivos.
Exec(prefix)
Exec(prefix)
Controla la ejecución de comandos de shell. Coincide con los comandos que empiezan por el prefijo indicado.
Exec(git) coincide con “git”, “git status” y “git commit -m ‘msg’”, pero NO con “gitk” ni “github-cli”. El prefijo debe coincidir como una palabra completa.Fetch(pattern)
Fetch(pattern)
Controla el acceso HTTP mediante patrones de URL.Los patrones de URL siguen el estándar WHATWG URL Pattern. La abreviatura
domain: coincide con cualquier ruta del dominio exacto.Permisos por herramienta
read, edit, grep, glob, exec
Permisos de las herramientas del servidor MCP
Patrones de ruta
Read() y Write() admiten:
Ejemplos:
Usa un prefijo de ruta absoluta (p. ej.,
Read(/**)) cuando quieras que coincida con todos los archivos del sistema. Un Read(**) sin una / inicial se resuelve en relación con tu directorio de trabajo actual, por lo que solo coincide con los archivos dentro de ese directorio, no con los archivos a los que se accede mediante rutas absolutas en otras ubicaciones.Opciones de persistencia
Permisos a nivel del servidor MCP
list_issues en el servidor de Figma), la solicitud de permisos también ofrece opciones más amplias a nivel del servidor:
Esto te permite otorgar rápidamente acceso general a un servidor MCP de confianza sin tener que aprobar cada herramienta por separado.
Precedencia
- Configuración de la organización o del equipo (si es Enterprise)
- Permisos a nivel de sesión (aprobaciones interactivas)
- Configuración local del proyecto (
.devin/config.local.json) - Configuración del proyecto (
.devin/config.json) - Configuración del usuario (
~/.config/devin/config.json;%APPDATA%\devin\config.jsonen Windows)

