≡En resumen
- El modo marca la base de lo que Claude puede hacer sin preguntar; las reglas allow, ask y deny lo afinan herramienta a herramienta.
- Las reglas deny bloquean en todos los modos, incluido bypassPermissions.
- El modo automático usa un segundo modelo, un clasificador, que bloquea acciones que van más allá de lo que pediste o parecen inducidas por contenido malicioso.
- bypassPermissions no pregunta nada y solo debe usarse en contenedores o máquinas virtuales aisladas.
- En empresas, los ajustes gestionados pueden fijar el modo inicial y desactivar el modo automático o bypassPermissions.
01 ¿Qué son los modos de permisos de Claude Code?
Cuando Claude Code trabaja en tu proyecto usa herramientas: lee archivos, los edita, ejecuta comandos en la terminal o consulta páginas web. Un modo de permisos establece cuáles de esas acciones puede hacer sin pedirte confirmación. Es el equilibrio entre comodidad y control: cuantas menos preguntas, más rápido avanza, pero menos supervisas lo que hace.
El modo se puede cambiar en cualquier momento de la sesión y combinarse con reglas concretas. Por ejemplo, puedes trabajar en modo automático pero con una regla que siempre te pregunte antes de un git push.
02 Los seis modos de permisos
| Modo | Qué hace sin preguntar | Para qué es mejor |
|---|---|---|
| default (Manual) | Solo lecturas | Revisar cada acción, código sensible o desconocido |
| acceptEdits | Lecturas, ediciones y comandos comunes de archivos (mkdir, touch, mv, cp…) dentro de tu carpeta | Iterar sobre código que revisas después con git diff |
| plan | Lecturas, más comandos aprobados por el clasificador si el modo automático está disponible | Explorar y planificar antes de cambiar nada |
| auto | Todo, con comprobaciones de seguridad en segundo plano | Tareas largas y reducir la fatiga de confirmaciones |
| dontAsk | Lecturas y herramientas preaprobadas; lo demás se deniega | CI y scripts con una lista cerrada de permisos |
| bypassPermissions | Todo | Solo contenedores y máquinas virtuales aisladas |
03 Cómo cambiar de modo
-
1
Durante la sesión
Pulsa Shift+Tab. Desde auto pasa a manual, y luego recorre acceptEdits y plan. La barra de estado muestra el modo activo.
-
2
Al arrancar
Usa claude --permission-mode seguido del modo, por ejemplo claude --permission-mode plan.
-
3
Como valor por defecto
Define permissions.defaultMode en ~/.claude/settings.json para tu máquina o en .claude/settings.json para un proyecto.
-
4
En VS Code y escritorio
Haz clic en el indicador o selector de modo junto al cuadro de prompt.
-
5
En la web y el móvil
En las sesiones en la nube eliges entre aceptar ediciones, plan y auto en el desplegable de modo.
04 El modo automático (auto) en detalle
En modo automático, Claude trabaja sin las confirmaciones rutinarias y un modelo clasificador revisa las acciones antes de ejecutarlas. Confía en tu carpeta de trabajo y en los remotos de git configurados al empezar la sesión, y trata todo lo demás como externo. Necesita un modelo compatible (Opus 4.6 o posterior, Sonnet 4.6 o posterior o Haiku 5.5 en la API de Anthropic) y en Team y Enterprise el administrador puede desactivarlo.
Descargar y ejecutar código
Bloquea patrones como descargar un script de internet y pasarlo directamente a la shell.
Exfiltrar datos
Bloquea el envío de datos sensibles a destinos externos y mostrar credenciales en la conversación.
Producción
Bloquea despliegues y migraciones de producción, cambios de DNS o borrados de infraestructura.
Git destructivo
Bloquea force push, git reset --hard y otras órdenes que descartarían cambios sin confirmar.
Permisos y revisiones
Bloquea conceder permisos de IAM o de repositorio, fusionar PR sin aprobación humana o desactivar comprobaciones de CI.
Instrucciones inyectadas
Bloquea acciones que parecen dictadas por contenido hostil que Claude ha leído, no por tu petición.
05 Reglas allow, ask y deny
Los modos fijan la base; las reglas de permisos la ajustan. Se escriben en el apartado permissions de un archivo de ajustes, o desde /permissions, y se evalúan en este orden: primero deny, después ask y por último allow. Gana la primera que coincide, así que una regla de permiso nunca abre una excepción dentro de una denegación.
allow: Bash(npm run *) y Bash(git status), para que los scripts del proyecto y las consultas de estado no pregunten.
ask: Bash(git push *), para confirmar siempre antes de subir cambios.
deny: Read(./.env), Read(./secrets/**) y Bash(curl *), para que Claude no lea secretos ni use curl; las páginas permitidas se autorizan con WebFetch(domain:docs.ejemplo.com).
Cuando una regla no basta, por ejemplo para revisar el contenido de un comando antes de dejarlo pasar, los hooks de Claude Code permiten escribir tu propia lógica de aprobación o denegación.
06 Qué modo elegir según la situación
| Quieres | Empieza con | Aislamiento |
|---|---|---|
| Revisar cada acción tú mismo | Modo manual | Ninguno |
| Explorar antes de cambiar nada | plan | Ninguno |
| Iterar en local con menos preguntas sin clasificador | Manual más el sandbox de Bash en modo auto-allow | Sandbox integrado (macOS, Linux y WSL2) |
| Trabajar sin supervisión constante | auto | Recomendable un sandbox o contenedor como defensa adicional |
| CI con permisos exactos | dontAsk con --allowedTools | El del propio runner de CI |
| Ejecución desatendida total | bypassPermissions | Obligatorio: contenedor o máquina virtual, sin usuario root |
Para pipelines y automatizaciones sin interfaz, la ficha de modo headless explica cómo lanzar Claude Code con -p y estos mismos modos.
07 Permisos de Claude Code en empresas
- ✓Define en ajustes gestionados el modo inicial de toda la organización con permissions.defaultMode.
- ✓Si tu política lo exige, desactiva el modo automático con permissions.disableAutoMode y bypassPermissions con permissions.disableBypassPermissionsMode.
- ✓Centraliza las reglas deny sobre secretos, credenciales y entornos de producción.
- ✓Versiona en el repositorio las reglas allow comunes del proyecto para reducir confirmaciones repetidas.
- ✓Revisa periódicamente las denegaciones recientes del modo automático desde /permissions.
- ✓Forma al equipo: un modo cómodo mal elegido es el origen de la mayoría de sustos.
Configurar bien los permisos es parte de una buena automatización con inteligencia artificial. Si tu equipo empieza a usar agentes en el desarrollo de apps a medida o en otros procesos, podemos ayudarte a definir la política. Y para comparar utilidades de la comunidad, tienes el directorio de recursos para Claude Code.
Preguntas frecuentes sobre Modos de permisos de Claude Code
Seis: default (Manual), acceptEdits, plan, auto, dontAsk y bypassPermissions. Van de preguntar antes de casi cualquier acción a no preguntar nada.
En la terminal, pulsa Shift+Tab durante la sesión o arranca con claude --permission-mode y el modo. En VS Code y en la app de escritorio, usa el selector de modo junto al cuadro de prompt.
Es un modo sin confirmaciones rutinarias en el que un modelo clasificador revisa cada acción y bloquea las que van más allá de tu petición, tocan infraestructura no reconocida o parecen inducidas por contenido malicioso.
Solo en un entorno aislado, como un contenedor o una máquina virtual, y sin usuario root. Activa bypassPermissions, que no pide confirmación para casi nada.
Primero deny, después ask y por último allow. La primera regla que coincide decide, así que una regla allow no puede hacer una excepción dentro de una deny.
Sí. Un administrador puede fijar permissions.disableAutoMode con el valor disable en los ajustes gestionados, y bloquear bypassPermissions con permissions.disableBypassPermissionsMode.
acceptEdits aprueba sin preguntar las ediciones y los comandos comunes de archivos dentro de tu carpeta, pero sigue consultando el resto de comandos. El modo automático lo aprueba casi todo y delega la revisión en un clasificador.
Fuentes consultadas
Sobre el autor
Development Manager en appyweb
Dirige el equipo de desarrollo de appyweb: aplicaciones web y móviles, SaaS, integraciones y arquitectura de software.
Ver perfil y artículos → Ver perfil en LinkedIn ↗