Claude Code auto mode: qué deja pasar y cuándo quitarlo
Claude Code auto mode ya viene activado: qué bloquea el clasificador, qué deja pasar, cómo se compara con los otros modos de permiso y cuándo quitarlo.

Actualizas Claude Code. Abres la terminal. Debajo del prompt aparece ⏵⏵ auto mode on.
No lo has activado tú.
Desde la v2.1.283, Claude Code auto mode es el modo con el que arranca cada sesión interactiva en la terminal y en VS Code. Claude ya no te pregunta antes de ejecutar un comando. Le pregunta a otro modelo.
Anthropic midió que los usuarios aprueban el 93 % de los prompts de permiso. Si dices que sí a casi todo, no estás revisando: estás haciendo clic. La pregunta incómoda es qué pasa con el 7 % restante cuando ya no lo miras tú.
En corto: Claude Code auto mode sustituye los prompts de permiso por un clasificador, un segundo modelo que bloquea lo que se sale de tu petición, lo que toca infraestructura que no reconoce y lo que parece inducido por contenido hostil. Las reglas deny y ask se evalúan antes que él y siguen mandando. Déjalo para tareas largas en tu propio repo y quítalo para trabajo sensible, para CI o cuando pagas cada llamada del clasificador y no tienes revisión en servidor.
¿Qué es Claude Code auto mode?
Claude Code auto mode es el modo de permiso en el que un clasificador, un modelo distinto del que escribe tu código, revisa cada acción antes de ejecutarla y la aprueba o la bloquea sin preguntarte.
Según la documentación oficial de modos de permiso, bloquea todo lo que "escala más allá de tu petición, apunta a infraestructura no reconocida o parece dirigido por contenido hostil que Claude leyó".
Se activa de tres formas: claude --permission-mode auto, Shift+Tab durante la sesión, o "permissions": { "defaultMode": "auto" } en ~/.claude/settings.json. La tercera tiene trampa: en el .claude/settings.json del proyecto no surte efecto. Y peor: si un proyecto lo pone, Claude Code ignora también tu defaultMode de ~/.claude/settings.json y arranca con el default integrado, que desde la v2.1.283 ya es auto.
Necesita un modelo soportado. En la API de Anthropic: Opus 4.6+, Sonnet 4.6+, Haiku 5.5 o Fable. En Bedrock, la Agent Platform de Google Cloud (Vertex) y Foundry: Sonnet 5+, Opus 4.7+, Haiku 5.5 o Fable. Con otro modelo, la sesión arranca en Manual. En Team y Enterprise, el administrador puede retirarlo con permissions.disableAutoMode.
Qué bloquea Claude Code auto mode y qué deja pasar
El clasificador bloquea por defecto lo destructivo, lo irreversible y lo que saca datos de tu entorno, y deja pasar el trabajo local dentro de tu repo.
Antes de llegar a él, cada acción pasa por un orden fijo. Primero, tus reglas allow, ask y deny. Después, las lecturas y ediciones dentro del directorio de trabajo, que se aprueban solas salvo en rutas protegidas como .git o .claude. Lo demás va al clasificador: shell, red y lo que sale de tu carpeta.
Bloquea, entre otras cosas, curl | bash, los deploys y migraciones a producción, el force push, git reset --hard, terraform destroy, borrar archivos que existían antes de la sesión e imprimir un token vivo en el transcript.
Deja pasar las operaciones locales, instalar lo que declara tu lockfile, las peticiones HTTP de solo lectura y algo que sorprende: hacer push a cualquier rama de tu repo, incluida la principal, y abrir pull requests. El contenido del push se sigue revisando (secretos, force push), las ramas de despliegue como production, release o gh-pages quedan fuera de ese permiso y la protección de rama del remoto sigue aplicando.
El clasificador ve tus mensajes, las llamadas a herramientas y tu CLAUDE.md, pero no los resultados de esas herramientas. Si bloquea tres acciones seguidas o 20 en total, auto mode se pausa y vuelven los prompts.
¿Cuánto acierta? Esto publicó Anthropic en su artículo de ingeniería sobre auto mode, el 25 de marzo de 2026:
| Métrica | Qué mide | Valor |
|---|---|---|
| Prompts que aprueban los usuarios | Cuánto revisas de verdad en Manual | 93 % |
| Falsos positivos, tráfico real (n = 10.000) | Acciones legítimas bloqueadas | 0,4 % |
| Falsos negativos, acciones "overeager" reales (n = 52) | Acciones que van más allá de lo pedido y pasan | 17 % |
| Falsos negativos, exfiltración sintética (n = 1.000) | Fugas simuladas que pasan | 5,7 % |
Las tres tasas de error son del pipeline completo del clasificador; el 93 % es comportamiento de usuarios en Manual. Anthropic llama al 17 % "el número honesto". No he encontrado cifras más recientes: tómalas como orden de magnitud, no como garantía.
Los 6 modos de permiso de Claude Code, comparados
Cada modo de permiso de Claude Code reparte comodidad y supervisión de otra forma:
| Modo | ¿Te pregunta? | Para qué | Riesgo |
|---|---|---|---|
default (Manual en la UI) |
Sí, para todo menos lecturas | Trabajo sensible, código que no conoces | Fatiga: acabas aprobando sin leer |
acceptEdits |
No para ediciones ni para mkdir, touch, rm, rmdir, mv, cp y sed dentro del directorio |
Iterar y revisar luego con git diff |
rm dentro del proyecto se aprueba solo |
plan |
No edita hasta que apruebas el plan | Entender un código antes de tocarlo | Con auto mode disponible, el clasificador aprueba comandos de exploración |
auto |
Solo con reglas ask, rutas críticas o bloqueos repetidos |
Tareas largas en tu repo | 17 % de falsos negativos medidos; push a la rama principal permitido |
dontAsk |
Nunca: lo que preguntaría, se deniega | CI con allowlist exacta | Lo que falte en la allowlist no se ejecuta |
bypassPermissions |
Casi nunca | Contenedores o VMs aislados | Ninguna protección contra prompt injection |
Mi regla: auto para el día a día en mi repo, plan cuando aterrizo en código ajeno, Manual cuando hay credenciales de producción en la máquina y bypassPermissions solo en un contenedor desechable. Es el criterio de "decidir qué se delega" que seguimos en el curso Construye con IA: el agente hace más cuanto más claros están los límites.
Por qué auto mode no sustituye a las reglas deny
Porque el clasificador es probabilístico y la regla deny es determinista: se evalúa antes que él y ni el clasificador ni tu intención pueden saltársela.
Según la guía de configuración de auto mode, decirle en el chat "no hagas push" funciona, pero esa frase vive en el transcript: si la compactación de contexto se la come, el límite desaparece.
La regla mínima, válida en ~/.claude/settings.json o en el settings del proyecto (las reglas deny sí se leen desde ahí):
{
"permissions": {
"deny": [
"Bash(git push *)",
"Bash(rm -rf *)",
"Bash(rm -fr *)"
]
}
}
Según la sintaxis de permisos, el espacio antes del * final hace que Bash(git push *) también atrape git push a secas, y la regla se aplica aunque el comando vaya encadenado con &&.
Lo que no atrapa son formas alternativas: git -C . push o /bin/rm -rf build/ pasan por debajo. Es un cinturón, no una caja fuerte.
Para inspeccionar el comando completo necesitas un hook, como explico en hooks vs permissions en Claude Code, y cuánto se escapa de una blocklist típica lo medí en este post sobre guardrails.
Si prefieres aprobar los push en vez de prohibirlos, mueve Bash(git push *) a ask. rm -rf ~ y rm -rf / ya son rutas críticas: ningún modo las aprueba solo, y en auto mode la terminal te pregunta con una cuenta atrás de dos minutos.
Cuándo quitar Claude Code auto mode
Quítalo cuando un falso negativo te cueste más que responder prompts, o cuando pagues cada llamada del clasificador.
Con código que no conoces o acceso a producción, usa Manual o plan. En CI, dontAsk con allowlist es más predecible.
Para salir, Shift+Tab; en VS Code, el modo inicial lo fija claudeCode.initialPermissionMode.
Límites de Claude Code auto mode
Tiene cinco límites, todos documentados o reportados en issues públicos.
Se equivoca en los dos sentidos. Además del 17 % de falsos negativos, en el issue #89922, abierto el 26 de agosto de 2026, un usuario reporta que auto mode le bloqueó codex exec y un touch /tmp/.codex-plan-review-bypass con un escueto "Blocked by classifier". Sospecha que la palabra "bypass" disparó el bloqueo, y las reglas allow no le sirvieron porque los flags cambian.
Cuesta tokens y latencia. Cuando el clasificador corre en tu lado, cada revisión envía parte del transcript y añade un viaje de ida y vuelta. Si la revisión la hace el servidor, que ya es lo habitual en los proveedores cloud, no hay llamadas aparte que pagar. Con autoMode.classifyAllShell activado, todo comando de shell pasa por el clasificador: más cobertura, más espera.
Si el clasificador no responde, no trabajas. En el issue #68437, de junio de 2026 y ya cerrado, cada Bash quedaba bloqueado con un "temporarily unavailable" en la v2.1.177. Falla cerrado, que es lo seguro, pero te para.
Las reglas allow estrechas se lo saltan. Bash(npm test) se aprueba sin revisión; auto mode solo suspende las amplias, como Bash(*).
bypassPermissions fuera de un contenedor es un riesgo real. No protege contra prompt injection y, en Linux y macOS, se niega a arrancar como root salvo dentro de un sandbox reconocido. Antes de dar más autonomía, mide el radio de impacto, como cuento en qué delegué a un agente de IA y qué audité.
Cómo dejar Claude Code auto mode bien configurado
- Ejecuta
claude auto-mode configpara ver las reglas que usa de verdad el clasificador. - Añade las reglas deny de arriba.
- Si tu equipo hace push a una organización de GitHub o escribe en buckets propios, lanza
/auto-mode-setup(Pro, Max o Team) para que proponga entradas deautoMode.environment; en Enterprise o con API, escríbelas a mano siguiendo la guía de configuración.
Mi regla: el clasificador juzga contra lo que pediste, así que un encargo ambiguo le deja más margen para equivocarse. Escribir lo que quieres antes de pedirlo es lo que defiendo en el libro de Spec-Driven Development.
Auto mode decide por ti, pero tus reglas deny deciden por encima de él. Abre hoy ~/.claude/settings.json, pega las tres reglas deny y deja auto mode activado.
Preguntas frecuentes
¿Claude Code auto mode viene activado por defecto?
Sí, desde la v2.1.283, en las sesiones interactivas de terminal y VS Code, si tu modelo lo soporta y nadie lo ha desactivado. En claude -p y el Agent SDK arranca en default si la sesión descarga feature flags; con un proveedor de terceros o la telemetría desactivada, arranca en auto desde la v2.1.285.
¿Cómo desactivo auto mode en Claude Code?
En la sesión, Shift+Tab una vez. De forma permanente, "defaultMode": "default" dentro de permissions en ~/.claude/settings.json.
¿Puedo poner auto mode por defecto solo en un proyecto?
No. defaultMode: "auto" en .claude/settings.json o .claude/settings.local.json no surte efecto. Va en ~/.claude/settings.json, en los managed settings o con --permission-mode auto.
¿Auto mode respeta mis reglas deny y ask?
Sí. Las deny bloquean en todos los modos antes de consultar al clasificador, y las ask que coinciden con el comando, como Bash(git push *), siguen mostrando el prompt.
Por Bezael Pérez — Developer senior con más de 15 años de experiencia y fundador de Dominicode.
¿Quieres construir con agentes en serio?
Curso «Construye con IA» con Claude Code, de la idea al producto.
Developer con más de 15 años en frontend y creador de Dominicode. Escribe sobre IA aplicada al desarrollo de software.
¿Te resultó útil este artículo?
Compártelo con tu comunidad y ayuda a otros desarrolladores.