Los modos de permisos controlan si Claude pregunta antes de actuar. Diferentes tareas requieren diferentes niveles de autonomía: es posible que desees supervisión completa para trabajo sensible, interrupciones mínimas para una refactorización larga, o acceso de solo lectura mientras exploras una base de código.
Esta página cubre cómo:
Cambiar modos de permisos
Puedes cambiar modos en cualquier momento durante una sesión, al inicio o como predeterminado persistente. El mecanismo depende de dónde estés ejecutando Claude Code.
CLI
JetBrains
VS Code
Desktop
Web y móvil
Durante una sesión: presiona Shift+Tab para ciclar a través de default → acceptEdits → plan → auto. El modo actual aparece en la barra de estado. auto no aparece en el ciclo hasta que pases --enable-auto-mode al inicio. Auto también requiere un plan de Team (o Enterprise/API una vez disponible) y Claude Sonnet 4.6 u Opus 4.6, por lo que la opción puede permanecer no disponible incluso con la bandera. Si bypassPermissions también está habilitado, aparece en el ciclo entre plan y auto.Al inicio: pasa el modo como una bandera CLI:claude --permission-mode plan
Como predeterminado: establece defaultMode en tu archivo de configuración:{
"permissions": {
"defaultMode": "acceptEdits"
}
}
No interactivamente: la misma bandera funciona con -p para ejecuciones con script:claude -p "refactor auth" --permission-mode acceptEdits
dontAsk nunca está en el ciclo Shift+Tab. bypassPermissions aparece en el ciclo solo si iniciaste la sesión con --permission-mode bypassPermissions, --dangerously-skip-permissions, o --allow-dangerously-skip-permissions. La tercera bandera añade el modo al ciclo sin activarlo, para que puedas componerlo con un modo de inicio diferente como --permission-mode plan. Establece cualquiera de estos al inicio o en tu archivo de configuración. El plugin de JetBrains lanza Claude Code en la terminal del IDE, por lo que cambiar modos funciona igual que en la CLI: presiona Shift+Tab para ciclar, o pasa --permission-mode al lanzar.
Durante una sesión: haz clic en el indicador de modo en la parte inferior del cuadro de solicitud para cambiar modos.Como predeterminado: establece claudeCode.initialPermissionMode en la configuración de VS Code, o usa el panel de configuración de la extensión Claude Code.La interfaz de usuario de VS Code usa etiquetas amigables que se asignan a las claves de configuración a continuación:| Etiqueta de interfaz de usuario | Clave de configuración |
|---|
| Pedir permisos | default |
| Aceptar ediciones automáticamente | acceptEdits |
| Modo de planificación | plan |
| Automático | auto |
| Omitir permisos | bypassPermissions |
Auto y Omitir permisos aparecen solo después de que habilites Permitir omitir permisos peligrosamente en la configuración de la extensión. Auto también requiere un plan de Team y Claude Sonnet 4.6 u Opus 4.6, por lo que la opción puede permanecer no disponible incluso con el interruptor activado.Consulta la guía de VS Code para detalles específicos de la extensión. Durante una sesión: usa el selector de modo junto al botón de envío. Puedes cambiarlo antes o durante una sesión.La interfaz de usuario de Desktop usa etiquetas amigables que se asignan a las claves de configuración a continuación:| Etiqueta de interfaz de usuario | Clave de configuración |
|---|
| Pedir permisos | default |
| Aceptar ediciones automáticamente | acceptEdits |
| Modo de planificación | plan |
| Automático | auto |
| Omitir permisos | bypassPermissions |
Auto y Omitir permisos aparecen en el selector solo después de que los habilites en la configuración de Desktop. Consulta la guía de Desktop para detalles. Durante una sesión: usa el menú desplegable de modo junto al cuadro de solicitud en claude.ai/code o en la aplicación móvil de Claude.Para sesiones de Claude Code en la web ejecutándose en máquinas virtuales en la nube de Anthropic, el menú desplegable ofrece Aceptar ediciones automáticamente y Modo de planificación. Pedir permisos y Automático no están disponibles para sesiones en la nube.Para sesiones de Control remoto ejecutándose en tu máquina local, el menú desplegable ofrece Pedir permisos, Aceptar ediciones automáticamente y Modo de planificación. También puedes establecer el modo de inicio cuando lanzas el host local:claude remote-control --permission-mode acceptEdits
Los avisos de permisos aparecen en claude.ai para aprobación.
Los modos de permisos se establecen a través de la interfaz de usuario, banderas CLI o archivos de configuración. Decirle a Claude “deja de pedir permiso” en el chat no cambia el modo. Consulta Permisos para ver cómo los modos interactúan con las reglas de permitir, preguntar y denegar.
Modos disponibles
Cada modo hace un compromiso diferente entre conveniencia y supervisión. Elige el que coincida con tu tarea.
| Modo | Lo que Claude puede hacer sin preguntar | Mejor para |
|---|
default | Leer archivos | Comenzar, trabajo sensible |
acceptEdits | Leer y editar archivos | Iterar en código que estás revisando |
plan | Leer archivos | Explorar una base de código, planificar una refactorización |
auto | Todas las acciones, con verificaciones de seguridad de fondo | Tareas de larga duración, reducir fatiga de avisos |
bypassPermissions | Todas las acciones, sin verificaciones | Solo contenedores y máquinas virtuales aisladas |
dontAsk | Solo herramientas preaprobadas | Entornos bloqueados |
Analizar antes de editar con modo de planificación
El modo de planificación le dice a Claude que investigue y proponga cambios sin hacerlos. Claude lee archivos, ejecuta comandos de shell para explorar, hace preguntas aclaratorias y escribe un archivo de plan, pero no edita tu código fuente. Los avisos de permisos funcionan igual que en el modo predeterminado: aún apruebas comandos Bash, solicitudes de red y otras acciones que normalmente solicitarían.
Cuándo usar el modo de planificación
El modo de planificación es útil cuando deseas que Claude investigue y proponga un enfoque antes de hacer cambios:
- Implementación de múltiples pasos: cuando una característica requiere ediciones en muchos archivos
- Exploración de código: cuando deseas investigar la base de código antes de cambiar nada
- Desarrollo interactivo: cuando deseas iterar en la dirección con Claude
Iniciar y usar el modo de planificación
Entra en el modo de planificación para una solicitud única prefijando tu solicitud con /plan, o cambia toda la sesión al modo de planificación presionando Shift+Tab para ciclar a través de modos de permisos. También puedes comenzar en modo de planificación desde la CLI:
claude --permission-mode plan
Este ejemplo inicia una sesión de planificación para una refactorización compleja:
Necesito refactorizar nuestro sistema de autenticación para usar OAuth2. Crea un plan de migración detallado.
Claude analiza la implementación actual y crea un plan. Refina con seguimientos:
¿Qué hay sobre la compatibilidad hacia atrás?
¿Cómo deberíamos manejar la migración de la base de datos?
Cuando el plan está listo, Claude lo presenta y pregunta cómo proceder. Desde ese aviso puedes:
- Aprobar e iniciar en modo automático
- Aprobar y aceptar ediciones
- Aprobar y revisar manualmente cada edición
- Continuar planificando, que envía tu retroalimentación a Claude para otra ronda
Cada opción de aprobación también ofrece borrar el contexto de planificación primero.
Eliminar avisos con modo automático
El modo automático está disponible en planes de Team, con soporte de Enterprise y API próximamente. En Team y Enterprise, un administrador debe habilitarlo en configuración de administrador de Claude Code antes de que los usuarios puedan activarlo. Requiere Claude Sonnet 4.6 o Claude Opus 4.6, y no está disponible en Haiku, modelos claude-3 o proveedores de terceros (Bedrock, Vertex, Foundry).
El modo automático permite que Claude ejecute acciones sin mostrar avisos de permisos. Antes de que cada acción se ejecute, un modelo clasificador separado revisa la conversación y decide si la acción coincide con lo que pediste: bloquea acciones que escalan más allá del alcance de la tarea, apuntan a infraestructura que el clasificador no reconoce como confiable, o parecen ser impulsadas por contenido hostil encontrado en un archivo o página web. Para una mirada más profunda a cómo se diseña el clasificador, consulta el anuncio del modo automático.
El modo automático es una vista previa de investigación. Reduce avisos pero no garantiza seguridad. Proporciona más protección que bypassPermissions pero no es tan exhaustivo como revisar manualmente cada acción. Úsalo para tareas donde confías en la dirección general, no como reemplazo para revisión en operaciones sensibles.
Modelo: el clasificador se ejecuta en Claude Sonnet 4.6, incluso si tu sesión principal usa un modelo diferente.
Costo: las llamadas del clasificador cuentan hacia tu uso de tokens igual que las llamadas de sesión principal. Cada acción verificada envía una porción de la transcripción de conversación más la acción pendiente al clasificador. El costo adicional proviene principalmente de comandos de shell y operaciones de red, ya que las acciones de solo lectura y ediciones de archivos en tu directorio de trabajo no desencadenan una llamada del clasificador.
Latencia: cada verificación del clasificador añade un viaje de ida y vuelta antes de que se ejecute la acción.
Cómo se evalúan las acciones
Cada acción pasa por un orden de decisión fijo. El primer paso coincidente gana:
- Las acciones que coinciden con tus reglas de permitir o denegar se resuelven inmediatamente
- Las acciones de solo lectura y ediciones de archivos en tu directorio de trabajo se aprueban automáticamente
- Todo lo demás va al clasificador
- Si el clasificador bloquea, Claude recibe la razón e intenta un enfoque alternativo
Al entrar en modo automático, Claude Code elimina cualquier regla de permitir que se sabe que otorga ejecución de código arbitrario: acceso de shell sin restricciones como Bash(*), intérpretes de script con comodín como Bash(python*) o Bash(node*), comandos de ejecución del gestor de paquetes, y cualquier regla Agent. Estas reglas aprobarían automáticamente los comandos y delegaciones de subagentes más capaces de causar daño antes de que el clasificador los vea. Las reglas estrechas como Bash(npm test) se mantienen. Las reglas eliminadas se restauran cuando sales del modo automático.
El clasificador recibe mensajes de usuario y llamadas de herramientas como entrada, con el texto propio de Claude y resultados de herramientas eliminados. También recibe tu contenido de CLAUDE.md, por lo que las acciones descritas en tus instrucciones de proyecto se tienen en cuenta en las decisiones de permitir y bloquear. Debido a que los resultados de herramientas nunca llegan al clasificador, el contenido hostil en un archivo o página web no puede manipularlo directamente. El clasificador evalúa la acción pendiente contra un conjunto personalizable de reglas de bloqueo y permitir, verificando si la acción es una escalada excesiva más allá de lo que pediste, un error sobre qué es seguro tocar, o una salida repentina de tu intención declarada que sugiere que Claude puede haber sido dirigido por algo que leyó.
A diferencia de tus reglas de permisos, que coinciden con nombres de herramientas y patrones de argumentos, el clasificador lee descripciones en prosa de qué bloquear y permitir: razona sobre la acción en contexto en lugar de coincidir con la sintaxis.
Cómo el modo automático maneja subagentes
Cuando Claude genera un subagente, el clasificador evalúa la tarea delegada antes de que el subagente comience. Una descripción de tarea que se ve peligrosa por sí sola, como “eliminar todas las ramas remotas que coincidan con este patrón”, se bloquea en el momento del generación.
Dentro del subagente, el modo automático se ejecuta con las mismas reglas de bloqueo y permitir que la sesión principal. Cualquier permissionMode que el subagente defina en su propio frontmatter se ignora. Las propias llamadas de herramientas del subagente pasan por el clasificador de forma independiente.
Cuando el subagente termina, el clasificador revisa su historial de acciones completo. Un subagente que fue benigno en el momento de la generación podría haber sido comprometido durante la ejecución por contenido que leyó. Si la verificación de retorno marca una preocupación, se antepone una advertencia de seguridad a los resultados del subagente para que el agente principal pueda decidir cómo proceder.
Qué bloquea el clasificador por defecto
De forma predeterminada, el clasificador confía en tu directorio de trabajo y, si estás en un repositorio git, en los remotos configurados de ese repositorio. Todo lo demás se trata como externo: las organizaciones de control de fuente de tu empresa, los depósitos en la nube y los servicios internos son desconocidos hasta que le digas al clasificador sobre ellos.
Bloqueado por defecto:
- Descargar y ejecutar código, como
curl | bash o scripts de repositorios clonados
- Enviar datos sensibles a puntos finales externos
- Despliegues y migraciones de producción
- Eliminación masiva en almacenamiento en la nube
- Otorgar permisos de IAM o repositorio
- Modificar infraestructura compartida
- Destruir irreversiblemente archivos que existían antes del inicio de la sesión
- Operaciones destructivas de control de fuente como push forzado o push directo a
main
Permitido por defecto:
- Operaciones de archivos locales en tu directorio de trabajo
- Instalar dependencias ya declaradas en tus archivos de bloqueo o manifiestos
- Leer
.env y enviar credenciales a su API coincidente
- Solicitudes HTTP de solo lectura
- Empujar a la rama en la que comenzaste o una que Claude creó
Para ver las listas de reglas predeterminadas completas como las recibe el clasificador, ejecuta claude auto-mode defaults.
Si el modo automático bloquea algo rutinario para tu equipo, como empujar al repositorio de tu propia organización o escribir en un depósito de la empresa, es porque el clasificador no sabe que esos son confiables. Los administradores pueden añadir repositorios confiables, depósitos y servicios internos a través de la configuración autoMode.environment: consulta Configurar el clasificador del modo automático para la guía de configuración completa.
Cuándo el modo automático retrocede
El diseño de retroceso mantiene los falsos positivos de descarrilar una sesión: un bloqueo equivocado cuesta a Claude un reintento, no tu progreso. Si el clasificador bloquea una acción 3 veces seguidas o 20 veces en total en una sesión, el modo automático se pausa y Claude Code reanuda la solicitud de cada acción. Estos umbrales no son configurables.
- CLI: ves una notificación en el área de estado. Aprobar la acción solicitada reinicia los contadores de denegación, para que puedas continuar en modo automático
- Modo no interactivo con la bandera
-p: aborta la sesión, ya que no hay usuario para solicitar
Los bloqueos repetidos generalmente significan una de dos cosas: la tarea genuinamente requiere acciones que el clasificador está construido para detener, o el clasificador carece de contexto sobre tu infraestructura confiable y trata acciones seguras como riesgosas. Si los bloqueos se ven como falsos positivos, o si el clasificador pierde algo que debería haber atrapado, usa /feedback para reportarlo. Si los bloqueos ocurren porque el clasificador no reconoce tus repositorios o servicios como confiables, haz que un administrador configure infraestructura confiable en configuración administrada.
Permitir solo herramientas preaprobadas con modo dontAsk
El modo dontAsk deniega automáticamente cada herramienta que no está explícitamente permitida. Solo las acciones que coinciden con tus reglas de permitir /permissions o configuración de permissions.allow pueden ejecutarse. Si una herramienta tiene una regla ask explícita, la acción también se deniega en lugar de solicitar. Esto hace que el modo sea completamente no interactivo, adecuado para tuberías de CI o entornos restringidos donde predefines exactamente qué se le permite a Claude hacer.
claude --permission-mode dontAsk
Omitir todas las verificaciones con modo bypassPermissions
El modo bypassPermissions desactiva todos los avisos de permisos y verificaciones de seguridad. Cada llamada de herramienta se ejecuta inmediatamente sin ninguna verificación. Solo usa esto en entornos aislados como contenedores, máquinas virtuales o devcontainers sin acceso a internet, donde Claude Code no puede causar daño a tu sistema anfitrión.
claude --permission-mode bypassPermissions
La bandera --dangerously-skip-permissions es equivalente a --permission-mode bypassPermissions:
claude -p "refactor the auth module" --dangerously-skip-permissions
El modo bypassPermissions no ofrece protección contra inyección de solicitud o acciones no intencionadas. Para una alternativa más segura que aún mantenga verificaciones de seguridad de fondo, usa modo automático. Los administradores pueden bloquear este modo estableciendo permissions.disableBypassPermissionsMode a "disable" en configuración administrada.
Comparar enfoques de permisos
La tabla a continuación resume las diferencias clave en cómo cada modo maneja aprobaciones. plan se omite ya que restringe lo que Claude puede hacer en lugar de cómo funcionan las aprobaciones.
| default | acceptEdits | auto | dontAsk | bypassPermissions |
|---|
| Avisos de permisos | Ediciones de archivos y comandos | Solo comandos | Ninguno a menos que se active retroceso | Ninguno, bloqueado a menos que esté preaprobado | Ninguno |
| Verificaciones de seguridad | Revisas cada acción | Revisas comandos | El clasificador revisa comandos | Solo tus reglas preaprobadas | Ninguno |
| Uso de tokens | Estándar | Estándar | Superior, de llamadas del clasificador | Estándar | Estándar |
Personalizar permisos aún más
Los modos de permisos establecen el comportamiento de aprobación de línea base. Para control sobre herramientas o comandos individuales, superpone configuración adicional en la parte superior del modo activo.
Las reglas de permisos son la primera parada. Añade entradas allow, ask o deny a tu archivo de configuración para preaprobación de comandos seguros, fuerza un aviso para los riesgosos, o bloquea herramientas específicas completamente. Las reglas se aplican en cada modo excepto bypassPermissions, que omite la capa de permisos completamente, y se hacen coincidir por nombre de herramienta y patrón de argumento. Consulta Gestionar permisos para sintaxis y ejemplos.
Hooks cubren lógica que las reglas de coincidencia de patrones no pueden expresar. Un hook PreToolUse se ejecuta antes de cada llamada de herramienta y puede permitir, denegar o escalar basado en contenido de comando, rutas de archivo, hora del día, o una respuesta de un servicio de política externa. Un hook PermissionRequest intercepta el diálogo de permisos en sí y responde en tu nombre. Consulta Hooks para configuración.
Ver también
- Permisos: reglas de permisos, sintaxis, políticas administradas
- Hooks: lógica de permisos personalizada, scripting de ciclo de vida
- Seguridad: salvaguardas de seguridad y mejores prácticas
- Sandboxing: aislamiento de sistema de archivos y red para comandos Bash
- Modo no interactivo: ejecuta Claude Code programáticamente con la bandera
-p