SpyBara
Go Premium

permission-modes.md 2026-10-25 23:58 UTC to 2026-10-26 22:57 UTC

This page contains 48 additions and 6 deletions.

2026
Thu 1 23:59 Fri 2 22:59 Sat 3 23:57 Sun 4 23:58 Mon 5 23:58 Tue 6 23:59 Wed 7 23:59 Sat 10 23:01 Sun 11 23:57 Wed 14 22:58 Sat 17 23:57 Mon 19 23:58 Tue 20 23:00 Wed 21 23:02 Thu 22 22:58 Fri 23 22:59 Sun 25 23:58 Mon 26 22:57 Tue 27 22:59 Wed 28 23:57 Fri 30 23:01

Elegir un modo de permisos

Controle si Claude solicita aprobación antes de actuar. Cambie de modo de permisos con Mayús+Tab en la CLI, el indicador de modo en VS Code, o el selector de modo en Desktop.

Un modo de permisos establece qué acciones puede realizar Claude en una sesión sin pedirle permiso primero. En modo Manual, Claude Code se detiene y le solicita aprobación antes de la mayoría de acciones que editan archivos, ejecutan comandos de shell o alcanzan la red. En modo automático, un segundo modelo, el clasificador, revisa acciones en su lugar; cómo el clasificador evalúa acciones enumera qué acciones revisa y cuáles se omiten.

Con Claude Code v2.1.283 o posterior, el modo automático es el modo de permisos inicial integrado para sesiones de terminal interactivo y VS Code. En versiones anteriores, es el modo de permisos inicial integrado solo en planes Pro, Max y Team. Qué modo inicia una sesión cubre las superficies y configuraciones que cambian el modo de permisos inicial. También puede cambiar el modo de permisos de una sesión en ejecución en cualquier momento.

Modos disponibles

Cada modo hace un compromiso diferente entre conveniencia y supervisión. La tabla a continuación muestra qué puede hacer Claude sin un aviso de permiso en cada modo. El modo manual aparece bajo su valor de configuración, default.

Modo Qué se ejecuta sin preguntar Mejor para
default Solo lecturas Revisar cada acción usted mismo, trabajo sensible
acceptEdits Lecturas, ediciones de archivos y comandos comunes del sistema de archivos (mkdir, touch, mv, cp, etc.) Iterar sobre código que está revisando
plan Lecturas, más comandos aprobados por clasificador cuando modo automático está disponible Explorar una base de código antes de cambiarla
auto Todo, con verificaciones de seguridad en segundo plano Tareas largas, reducir fatiga de avisos
dontAsk Lecturas de archivos dentro de tus directorios de trabajo y herramientas preaprobadas; cualquier cosa que pediría confirmación se deniega, aunque un mod que instalaste aún puede aprobar algunas de esas llamadas CI bloqueado y scripts
bypassPermissions Todo Solo contenedores aislados y máquinas virtuales

El modo que revisa cada acción se llama Manual en la CLI, en claude --help, en las extensiones de VS Code y JetBrains, y en la aplicación de escritorio. Su valor de configuración es default, que es lo que usan los hooks e integraciones de SDK. La CLI acepta manual como un alias dondequiera que escribas el valor, por ejemplo claude --permission-mode manual o "defaultMode": "manual".

Las escrituras en rutas protegidas nunca se aprueban automáticamente excepto en modo bypassPermissions y en sesiones de modo plan donde los permisos de omisión están disponibles, lo que significa sesiones de terminal interactivas iniciadas de una manera que pone bypassPermissions en el ciclo de modo.

Los modos establecen la línea base. Superponga reglas de permiso encima para preaprobación o bloqueo de herramientas específicas. Las reglas de denegación bloquean en cada modo, incluido bypassPermissions. Las reglas de denegación y pregunta no se aplican a EndConversation siempre que Claude aún tenga al menos otra herramienta que pueda llamar. Las reglas de permiso no tienen efecto en bypassPermissions.

Acciones que ningún modo aprueba automáticamente

Claude Code no aprueba automáticamente lo siguiente en ningún modo, incluido bypassPermissions. Cada viñeta enlaza a la sección que dice qué sucede en su lugar en cada modo:

  • Herramientas coincidentes por una regla de pregunta explícita

  • Herramientas de conector que su organización estableció en ask, en sesiones donde esa configuración llega a Claude Code

  • Herramientas que requieren interacción del usuario: la herramienta integrada AskUserQuestion y herramientas MCP marcadas requiresUserInteraction

  • Eliminaciones reconocidas de rm y rmdir en rutas críticas, que ninguna regla de permitir ni "allow" de un hook PreToolUse aprueba, y comandos Bash marcados con Dangerous rm operation not ruled out

  • Las salvaguardas de mensajería entre sesiones

  • Lecturas fuera de los directorios de trabajo mientras permissions.blockReadsOutsideWorkingDirectories está activado: los comandos Bash reconocidos de lectura de archivos generan avisos incluso en modo automático y modo bypassPermissions, y también lo hace cualquier reintento sin sandbox que necesita aprobación para ejecutarse fuera del sandbox. Requiere Claude Code v2.1.257 o posterior.

    Un comando que el analizador de shell no puede rastrear, como uno que cambia de directorio más de una vez o ejecuta un subshell, genera avisos de la misma manera incluso cuando no nombra ninguna ruta externa. Este aviso no se aplica cuando el comando se ejecuta en el sandbox y el sandbox aplica el bloqueo.

Configuraciones comunes

Los modos de permisos deciden si Claude solicita antes de una acción, y el sandbox Bash y los límites de aislamiento externos deciden qué puede alcanzar una acción una vez que se ejecuta. Cada fila a continuación empareja un objetivo con las banderas o configuraciones que lo logran y el aislamiento que necesita, como punto de partida. Modos disponibles enumera qué se ejecuta sin un aviso en cada modo.

Usted quiere Comience con Aislamiento necesario Notas
Revisar cada acción usted mismo Modo Manual: claude --permission-mode default Ninguno Trabajo sensible, código desconocido
Iterar localmente con menos solicitudes de permiso, sin un clasificador Modo manual más el sandbox de Bash en modo de permitir automáticamente: claude --permission-mode default, luego ejecuta /sandbox y selecciona permitir automáticamente El sandbox de Bash integrado, en macOS, Linux y WSL2 Las reglas de denegación siguen aplicándose, y las reglas de solicitud que nombran un comando, como Bash(git push *), siguen pidiendo permiso. El modo de permitir automáticamente cubre otros comandos que pueden pedir permiso. Para activar el sandbox desde un archivo de configuración en su lugar, establece sandbox.enabled en true
Explorar antes de cambiar nada claude --permission-mode plan Ninguno Claude Code bloquea ediciones hasta que apruebe un plan
Trabajar sin intervención en modo automático claude --permission-mode auto, el modo de permisos inicial integrado con v2.1.283 o posterior Ninguno; un sandbox o contenedor agrega defensa en profundidad Requiere un modelo compatible, y su organización puede desactivar modo automático
Ejecutar en CI con una lista de permitidos exacta claude -p "run the test suite" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read" Ninguno más allá de lo que proporciona su ejecutor de CI Cloud sessions ignora dontAsk de archivos de configuración
Ejecutar completamente desatendido dentro de un contenedor claude -p "<prompt>" --dangerously-skip-permissions Requerido: un contenedor, máquina virtual o el tiempo de ejecución del sandbox; en Linux y macOS, ejecútelo como un usuario no root Cloud sessions ignora este modo de archivos de configuración. En esta ejecución -p, las pocas llamadas que aún solicitarían se deniegan en su lugar

El sandbox Bash y el modo automático funcionan independientemente y se combinan, con las excepciones enumeradas en Modos de sandbox. Para la interacción completa, consulte Cómo el sandboxing se relaciona con permisos y modos de permisos y Cómo el aislamiento se relaciona con modos de permisos.

Qué modo inicia una sesión

Cuando inicias una nueva sesión en una terminal, Claude Code toma el modo de permisos del primero de estos que se aplique:

  1. La bandera --permission-mode o --dangerously-skip-permissions

  2. permissions.defaultMode en un archivo de configuración

    Si estableces "auto" en .claude/settings.json o .claude/settings.local.json, el valor no entra en vigor, y Claude Code luego usa el valor predeterminado integrado en lugar de un defaultMode de ~/.claude/settings.json. Si estableces "bypassPermissions" en esos dos archivos, tampoco entra en vigor, y la sesión comienza en modo Manual. Los otros valores se aplican desde cualquier archivo de configuración.

  3. El valor predeterminado integrado

Las conversaciones que inicia la extensión de VS Code siguen la lista propia de la extensión en Cambiar modos de permisos. Para el modo de permisos en el que Claude Code inicia una sesión reanudada, consulta modo de permisos al reanudar.

El valor predeterminado integrado auto requiere Claude Code v2.1.228 o posterior en macOS, Linux y WSL, y v2.1.233 o posterior en Windows nativo. En versiones anteriores, el valor predeterminado integrado es Manual.

El valor predeterminado integrado depende de cómo ejecutes Claude Code. La primera fila que coincida con tu sesión se aplica. La tabla cubre sesiones que inicias en una terminal o a través de la extensión de VS Code; para la aplicación de escritorio y claude.ai, consulta las pestañas Desktop y Web en Cambiar modos de permisos.

Cómo ejecutas Claude Code Modo de permisos inicial integrado
Cualquier archivo de configuración establece disableAutoMode en "disable" default
claude -p o el Agent SDK default
Tu organización tiene aplicada la configuración HIPAA y la sesión cumple los requisitos para ella default con Claude Code v2.1.285 o posterior; el modo automático sigue disponible para cambiar a él
En una terminal o a través de la extensión de VS Code auto con Claude Code v2.1.283 o posterior; en versiones anteriores, auto en planes Pro, Max o Team en sesiones que obtienen banderas de características, y default en caso contrario

Cuando la bandera, un archivo de configuración o el valor predeterminado integrado selecciona auto pero el modo automático no está disponible para la sesión, Claude Code inicia la sesión en Manual en su lugar. El modo automático no está disponible cuando la sesión no cumple con los requisitos de disponibilidad, como un archivo de configuración desactivándolo o un modelo que no lo admite, o cuando Anthropic lo ha desactivado temporalmente del lado del servidor.

La primera vez que el valor predeterminado integrado inicia una de tus sesiones en modo automático, Claude Code muestra un aviso que enlaza a esta página:

  • En una terminal, una vez, en la parte superior de la sesión
  • En la extensión de VS Code, como una tarjeta en la pantalla de nueva conversación que permanece hasta que la descartes

Si tu ~/.claude/settings.json establece un defaultMode distinto de auto y ningún otro archivo de configuración establece uno, tus sesiones siguen iniciándose en ese modo. En planes Pro, Max y Team, y en sesiones que no obtienen banderas de características, Claude Code pregunta una vez, en la terminal o en la extensión de VS Code, si deseas cambiar el ajuste a modo automático. Si rechazas, tu ajuste permanece como está.

Llamadas a herramientas denegadas en ejecuciones de claude -p y del Agent SDK

En Claude Code v2.1.302 o posterior, las ejecuciones de claude -p y del Agent SDK sin un modo de permisos establecido comienzan en modo Manual. Este modo aparece como default en las opciones del SDK y en la configuración. Las llamadas que necesitan aprobación se deniegan a menos que las apruebes con una regla de permiso, un hook, un callback canUseTool o --permission-prompt-tool.

Para que estas llamadas se aprueben, agrega reglas de permiso o comienza en modo automático:

Estos ejemplos muestran la forma del modo automático para la CLI y cada SDK:

CLI

claude -p "Run the test suite and fix any failures" --permission-mode auto

TypeScript

const options = {
  permissionMode: "auto"
};

Python

from claude_agent_sdk import ClaudeAgentOptions

options = ClaudeAgentOptions(permission_mode="auto")

Antes de v2.1.302, estas ejecuciones podían comenzar en modo automático si no obtenían banderas de características, por ejemplo en un proveedor de terceros o con DISABLE_TELEMETRY.

Comienza en un modo de permisos diferente

Puedes establecer el modo de permisos inicial para una sesión, o como predeterminado para cada sesión en una máquina, proyecto u organización. Cuando más de un archivo de configuración establece permissions.defaultMode, la precedencia de configuración decide, por lo que un valor de proyecto o administrado supera ~/.claude/settings.json. Para cambiar el modo de permisos de una sesión que ya se está ejecutando, consulta Cambiar modos de permisos.

Para establecer el modo de permisos inicial para Haz esto
Una sesión que estás a punto de iniciar Pasa el modo de permisos como una bandera, por ejemplo claude --permission-mode default
Cada sesión de terminal que inicias en esta máquina Establece permissions.defaultMode en ~/.claude/settings.json. Para lo que lee la extensión de VS Code, consulta Cambiar modos de permisos
Cada sesión de terminal que inicias en un proyecto Establece permissions.defaultMode en .claude/settings.json del proyecto. Las sesiones que inicias en una terminal respetan cada valor excepto auto y bypassPermissions; las sesiones que inicia la extensión de VS Code no leen configuración de proyecto para el modo de permisos inicial
Cada sesión de terminal en tu organización Establece permissions.defaultMode en configuración administrada. Las sesiones de terminal comienzan en ese modo y las personas aún pueden cambiar a modo automático; para lo que lee la extensión de VS Code, consulta Cambiar modos de permisos. Para eliminar el modo automático para que nadie pueda seleccionarlo, establece permissions.disableAutoMode en "disable" en su lugar

Este ejemplo hace que cada sesión de terminal en tu máquina comience en modo Manual, cuyo valor de configuración es default. Guárdalo en ~/.claude/settings.json:

{
  "permissions": {
    "defaultMode": "default"
  }
}

La siguiente sesión que inicies muestra ⏸ manual mode on en la barra de estado.

Modos de permisos con la configuración HIPAA

En una organización con la configuración HIPAA aplicada, el valor predeterminado integrado auto no se aplica. Una sesión de terminal o de VS Code comienza en modo Manual cuando nada más elige su modo de permisos inicial. Una sesión de terminal también muestra Auto mode isn't the default for your organization · Shift+Tab to switch, y la extensión de VS Code no muestra ningún aviso. Comprueba cómo inician sesión y se conectan los desarrolladores enumera las sesiones a las que se aplica esto.

El modo automático y bypassPermissions siguen disponibles:

Requiere Claude Code v2.1.285 o posterior, la versión mínima para la configuración HIPAA.

Cambiar modos de permisos

Cada interfaz tiene su propio control para cambiar modos de permisos durante una sesión y su propia forma de elegir el modo de permisos que inician las nuevas sesiones. Seleccione su interfaz para ver sus controles.

CLI

Durante una sesión: presiona Shift+Tab para alternar entre modos de permisos. Desde auto, la primera pulsación cambia a default, y luego el ciclo sigue default → acceptEdits → plan. Los modos opcionales se insertan después de plan. La barra de estado muestra el modo activo como un ⏸ manual mode on gris para default, o como ⏵⏵ accept edits on, ⏸ plan mode on, ⏵⏵ auto mode on, ⏵⏵ don't ask on o ⏵⏵ bypass permissions on.

Observa la barra de estado en este clip de una sesión que comenzó en modo automático. Cada vez que presionas Shift+Tab, cambia de auto mode on a manual mode on, accept edits on, plan mode on y de vuelta a auto mode on.