Explicación del Código Claude: saltarse peligrosamente los permisos: riesgos, casos de uso y alternativas más seguras

Diseñado para la velocidad: ~ 10 ms de latencia, incluso bajo carga
¡Una forma increíblemente rápida de crear, rastrear e implementar sus modelos!
- Gestiona más de 350 RPS en solo 1 vCPU, sin necesidad de ajustes
- Listo para la producción con soporte empresarial completo
Introducción
Claude Code pide permiso antes de tocar algo. ¿Escribir un archivo? Se detiene y espera. ¿Comando Shell? Se detiene de nuevo. ¿Llamada de red? Lo mismo. Esas instrucciones de confirmación son intencionadas: son el mecanismo que evita que un agente de codificación autónomo cause daños irreversibles mientras no estás mirando.
La marca --dangerously-skip-permissions elimina ese bucle. Todo. Anthropic no eligió ese nombre para asustar a la gente, lo eligieron porque es exactamente lo que sucede. ¿Cuáles son las consecuencias de ejecutarlo sin cuidado? Ahora están bien documentadas.
Aquí hay uno que llamó mucho la atención. En diciembre de 2025, un el usuario le preguntó a Claude Code para limpiar los paquetes de un repositorio antiguo. Claude generó rm -rf tests/ patches/ plan/ ~/. ¿Ves eso al final ~/? El shell lo expandió a todo el directorio principal del usuario. Los archivos de escritorio, las contraseñas de los llaveros, los datos de las aplicaciones... todo ha desaparecido. Simon Willison lo marcó en X.. La publicación alcanzó 197 puntos en Hacker News con más de 156 comentarios.
¿Qué rigen realmente los permisos del código Claude? ¿Por qué existe la marca de desvío? ¿Cuándo es realmente seguro de usar? Cubrimos los tres.

¿Qué es el sistema de permisos de Claude Code?
Claude Code se ejecuta en un arquitectura basada en permisos. Cada acción consecuente que toma el agente sale a la luz para su revisión. La opción predeterminada no permitirá que Claude Code modifique el estado sin tu aprobación explícita. Las acciones se dividen en tres niveles.
Operaciones de lectura: no se necesita confirmación
Aquí llegan las lecturas de archivos, las listas de directorios, las búsquedas en bases de código y la navegación de código. Nada en este nivel cambia de estado. Claude Code los ejecuta por sí solo, sin necesidad de avisar. Anthropic mantiene una lista fija de herramientas seguras por defecto: las utilidades de búsqueda de texto, búsqueda de patrones de archivos y navegación por código cumplen con los requisitos.
Operaciones de escritura y ejecución: se necesita confirmación explícita
Cada una de estas operaciones se detiene y espera su «aprobación»:
- Escritura de archivos, creación de directorios y modificaciones de código
- Ejecución de comandos y scripts de Shell
- El paquete se instala
- Llamadas a API externas y Herramienta MCP invocaciones
Una refactorización de 10 archivos genera más de 30 solicitudes. La mayoría de los desarrolladores terminan aprobándolas sin leer ni una sola.
Ese hábito de aprobar es su propio tipo de fracaso. Esa es exactamente la razón por la que existe la bandera de desvío.
Operaciones delicadas: se necesita confirmación adicional
Todo lo que toque estas áreas se marca con un escrutinio adicional:
- Credenciales y variables de entorno
- Secretos y claves de API
- Acciones irreversibles, como acceder a controles remotos o eliminar datos
Las comprobaciones de seguridad integradas en Claude Code no se llevarán a cabo sin un reconocimiento explícito.
¿Por qué existe todo esto? Porque Claude Code es un agente autónomo con un amplio acceso al sistema. Si eliminas la capa de permisos, una sola instrucción mal entendida (o peor aún, una inyección de aviso malintencionada) puede provocar daños irreversibles. Sin punto de control, no hay recuperación. El guía de seguridad empresarial para Claude profundiza en cómo las organizaciones deben abordar la gobernanza en torno a esto.

¿Qué hace realmente --dangerously-skip-permissions?
La marca --dangerously-skip-permissions es un argumento de la CLI. Desactiva el paso de confirmación de cada operación de escritura y ejecución. Escritura de archivos, comandos de shell, llamadas de red, ejecuciones de herramientas: Claude Code las ejecuta todas sin esperar su aprobación.
La marca CLI activa lo que Anthropic denomina «modo BypassPermissions». También puedes habilitar el mismo modo configurando --permission-mode bypassPermissions o configurando «defaultMode»: «bypassPermissions» en settings.json.
El comportamiento es equivalente desde el punto de vista funcional, pero hay una advertencia clave que se aplica a ambos: desde la versión 2.1.78, las escrituras en directorios protegidos (.git/, .claude/, .vscode/, .husky/) siguen activando un mensaje incluso con la omisión activa. Las excepciones son .claude/commands, .claude/agents y .claude/skills, donde Claude crea contenido de forma rutinaria. No existe ningún alias abreviado. No hay atajo -y. Escribes la bandera completa cada vez, y Anthropic lo hizo a propósito.
Lo que la bandera señala específicamente:
- Diálogos de confirmación por acción para escrituras y eliminaciones del sistema de archivos
- Solicitudes de confirmación antes de la ejecución del comando shell
- Pasos de aprobación antes de las solicitudes de red y las llamadas a API externas
- Hace una pausa antes de invocar la herramienta MCP
Lo que la bandera deja intacto:
- La formación básica sobre seguridad de Claude Code (sigue rechazando instrucciones claramente dañinas)
- Restricciones de la lista de permitidos de red establecidas en su configuración
- Escribe en rutas protegidas: .git/, .claude/ (excepto /commands, /agents, /skills), .vscode/ y .husky/ siguen apareciendo incluso en modo de omisión (desde la versión 2.1.78)
- Ganchos PreTooluse, que aún se activan y pueden bloquear llamadas a herramientas específicas incluso en modo de omisión
- Rechaza las reglas en disallowed_tools y settings.json, que se evalúan antes de la verificación de modo
He aquí un detalle que hace tropezar a la gente: no puedes cambiar al modo BypassPermissions a mitad de sesión si no has empezado por la bandera. Reinicia con la marca o no funcionará. Los administradores también tienen la opción de bloquear el modo en toda la organización: defina permissions.disableBypassPermissionsMode como «deshabilitado» en configuración gestionada, y nadie puede usarlo.
Con lo que terminas es con total autonomía dentro de los límites que has establecido. Si no has establecido ninguno (sin restricciones de red, sin límites de acceso a los archivos, sin aislamiento de credenciales), el agente puede acceder a todos los lugares a los que puede llegar tu cuenta de usuario. Ese es el riesgo principal.
¿Por qué los desarrolladores usan --dangerously-skip-permissions?
Los casos de uso legítimos de la bandera son limitados pero reales. Cada uno de ellos comparte una característica: el ciclo de confirmación humano es imposible porque no hay ningún humano presente, o redundante porque el entorno ya gestiona la contención.
Automatización de tuberías CI/CD
Las canalizaciones automatizadas no pueden detenerse y esperar a que alguien haga clic en «aprobar». No hay nadie en la terminal. Los equipos ejecutan Claude Code en modo headless como parte de los flujos de trabajo de creación, prueba y revisión, y la invocación típica combina -p (modo no interactivo) con el indicador de omisión:
claude -p "Fix all lint errors in the project" \
--dangerously-skip-permissions \
--output-format stream-jsonEl entorno de tuberías en sí mismo sirve aquí como capa de contención. Determina a qué código puede acceder el agente y qué comandos puede ejecutar.
Entornos de contenedores con espacio aislado
Cuando Claude Code se ejecuta dentro de un contenedor Docker diseñado específicamente (sin credenciales cargadas ni acceso a una red externa), las solicitudes de permiso solo aumentan la fricción. No añaden seguridad. El límite de contenedores ya está haciendo las tareas de seguridad. La marca elimina la confirmación redundante dentro de un entorno ya bloqueado.
Anthropic recomienda el uso en contenedores de forma explícita. Incluyen configuraciones de contenedores de desarrollo de referencia con reglas de firewall integradas exactamente para ese propósito. Nicholas Carlini, investigador del equipo de salvaguardias de Anthropic, usó claude --saltándose peligrosamente los permisos en un bucle de bash while para 16 agentes paralelos que construían un Compilador de C basado en Rust en febrero de 2026.
Su nota entre paréntesis en la entrada del blog lo dice todo: «Ejecuta esto en un contenedor, no en tu máquina real». La propia gente de Anthropic no ondeará esta bandera sin más.
Refactorización y análisis ampliados
Las grandes tareas de refactorización que abarcan docenas de archivos funcionan mejor sin interrupciones constantes. El flujo de trabajo que siguen los desarrolladores experimentados es sencillo:
- Confirma tu estado actual
- Ejecuta Claude Code con la bandera
- Revisa todos los cambios una vez que termine
- Confirma el resultado o git reset --hard
Tu historial de git se convierte en el mecanismo de reversión. El sistema de permisos normalmente proporciona esa red de seguridad; en este caso, git asume esa función.

¿Cuáles son los verdaderos riesgos de seguridad?
Nada de esto es hipotético. Los múltiples incidentes documentados muestran una imagen clara de lo que sale mal cuando la ejecución autónoma se combina con una contención débil.
La inyección inmediata desencadena acciones sin restricciones
Sin una confirmación por acción, una instrucción maliciosa oculta en un archivo que Claude Code lee puede activarse de inmediato. Los atacantes pueden influir en lo que Claude procesa a través de varios canales:
- Archivos de repositorio con instrucciones incrustadas
- Descripciones de problemas y comentarios de relaciones públicas
- Documentos recuperados mediante herramientas de MCP
Si alguno de estos contiene comandos inyectados, el agente puede filtrar datos o modificar archivos que deberían estar prohibidos.
Anthropic se toma este vector muy en serio. Sus blog de ingeniería sobre modo automático detalla un conjunto de datos de evaluación sintético que contiene 1000 intentos de exfiltración generados:
- PUBLICACIONES HTTP de datos confidenciales en servidores externos
- Git apuesta por controles remotos que no son de confianza
- Credenciales incrustadas en las URL, muchas de ellas mediante ofuscación
Sin un aviso de aprobación, no hay una segunda oportunidad de detectar las instrucciones inyectadas antes de que se ejecuten.
La automatización descontrolada causa un daño real
Los incidentes documentados hablan por sí solos. En octubre de 2025, el desarrollador Mike Wolak le pidió a Claude Code que reconstruyera un proyecto de Makefile a partir de una nueva versión de Ubuntu/WSL2. Claude Code ejecutó un rm -rf partiendo de root (/). Su Informe de error de GitHub (#10077) contiene registros de errores con miles de mensajes de «Permiso denegado» para /bin, /boot, /etc. Se destruyeron todos los archivos propiedad del usuario de la máquina.
¿La parte alarmante? Wolak lo era no ejecutar --saltarse peligrosamente los permisos. El propio sistema de permisos no pudo bloquear el comando destructivo. Anthropic etiquetó el área del problema como: seguridad y error.
Noviembre de 2025 produjo algo aún más desagradable. El desarrollador Jeffrey Urban archivó Número #12637 de GitHub después de descubrir que Claude había creado accidentalmente un directorio llamado literalmente ~ durante una sesión anterior.
Más tarde, Claude ejecutó rm -rf * en el directorio principal. El shell amplió * para incluir el directorio ~ y, a continuación, interpretó ese ~ como la ruta del directorio principal. Dos sesiones distintas, una de ellas con un error en cascada.
Luego vino el incidente de Reddit de diciembre de 2025: rm -rf tests/ patches/ plan/ ~/. El ~/ final se expandió a todo el directorio principal. Los archivos de escritorio, los documentos, las descargas, los datos del llavero y el soporte de aplicaciones, todo ello borrado. Y no se trata solo de las toallitas drásticas. Un desarrollador documentó a Claude sobrescribir un archivo de configuración existente con valores en blanco, sin respaldo, sin advertencia.
De hecho, una corrupción silenciosa como esa es más difícil de detectar y recuperar que perder un directorio completo.
Crece el riesgo de exposición de credenciales
Otorgue a Claude Code acceso de escritura completo sin solicitudes de confirmación y podrá:
- Lea las variables de entorno que contienen secretos
- Volcar las credenciales en los archivos de salida
- Realice llamadas fuera de la red que envían datos confidenciales a puntos finales externos
La pausa antes de las operaciones delicadas es el último punto de control legible para los humanos. Retírelo y no habrá nada entre el agente y la exposición de las credenciales.
The Blast Radius se amplía para cualquier compromiso
Si alguien secuestra la sesión de Claude Code o manipula el mensaje, tendrá acceso sin restricciones a todo lo que el agente pueda alcanzar. Cero fricción, cero avisos, cero segundas oportunidades. Vale la pena señalar: a error reportado (#17544) muestra que la combinación de --dangerously-skip-permissions con el plan --permission-mode hace que el indicador de omisión anule silenciosamente el modo plan. Crees que estás en el modo de plan de solo lectura. De hecho, estás haciendo un bypass total.

¿Cuándo es seguro --dangerously-skip-permissions?
La seguridad aquí es una propiedad del medio ambiente. No es la bandera. Los documentos de Anthropic lo dicen directamente: el aislamiento basado en contenedores es el contexto previsto. La bandera permanece segura solo cuando todo de estas condiciones se mantienen al mismo tiempo:
- La salida a la red está bloqueada. O el entorno no tiene ningún acceso a la red externa o el tráfico pasa por una lista de permitidos estricta. Claude Code no puede hacer llamadas arbitrarias para enviar datos.
- No se cargan credenciales ni secretos. En el entorno de ejecución no hay claves de API de producción, claves SSH ni secretos. Lo creó específicamente para la tarea en cuestión; no es un portátil para desarrolladores con acceso a la mitad de su infraestructura.
- El acceso al sistema de archivos tiene un alcance estricto. El agente solo puede acceder al repositorio o directorio específico relevante para la tarea. Los archivos del sistema, los directorios principales y las bases de código no relacionadas no están montados ni son accesibles.
- El medio ambiente es desechable. El contenedor o la máquina virtual se desmontan una vez finalizada la sesión. No persiste nada. Si algo sale mal, el daño se queda contenido en una sola instancia desechable.
- Los puntos de control de Git están en su lugar. Comprométete con tu estado de trabajo antes de lanzar la bandera. Si algo se rompe, git reset --hard lo recupera todo. Git asume la función de red de seguridad que normalmente desempeña el sistema de permisos.
En este punto, el consenso de la comunidad está prácticamente establecido: contenedores o no te molestes. A esto se suman los puntos de control de git, las restricciones de herramientas y el aislamiento de la red. Para los equipos que gestionan Claude Code entre varios desarrolladores, el guía de gobernanza establece el marco político completo.
Alternativas más seguras a --saltarse peligrosamente los permisos
No todos los equipos necesitan destruir todos los controles de seguridad solo para reducir las interrupciones. Claude Code ahora viene con varias alternativas, y cada una cambia un dispositivo de comodidad diferente por un dispositivo de seguridad diferente.
Modo automático (marzo de 2026)
Enviado por Anthropic modo automático específicamente porque --dangerously-skip-permissions seguía causando problemas. El modo automático permite a Claude ejecutar sin solicitar permiso, pero un modelo de clasificación independiente (que se ejecuta en Claude Sonnet 4.6) revisa cada acción antes de ejecutarla. El clasificador se divide en tres categorías:
- Aumento del alcance: ¿Claude está haciendo más de lo que pediste?
- Infraestructura no confiable: ¿la acción se dirige a sistemas que el clasificador no reconoce?
- Inyección inmediata: ¿parece que la acción fue impulsada por contenido hostil que Claude leyó?
Las acciones que el clasificador considera seguras se realizan automáticamente. Las más arriesgadas se bloquean y Claude recibe la razón para que pueda probar un enfoque diferente. Tres bloques consecutivos o un total de 20 bloques en una sesión hacen que el modo automático se detenga y vuelva a las instrucciones manuales. Necesitas la versión 2.1.83 de Claude Code o una versión posterior, un plan Team o Enterprise y el proveedor de la API de Anthropic para usarlo. Los planes Pro y Max no cumplen los requisitos.
Actívalo con:
claude --enable-auto-modeDiríjase a ella con Shift+Tab durante una sesión. Anthropic lo califica como un «avance de la investigación»: hay menos resultados catastróficos que los de un bypass total, pero no hay ningún riesgo.
Listas de permisos a nivel de herramienta
La marca --allowedTools te permite especificar exactamente qué herramientas puede usar Claude Code sin necesidad de solicitarlo. Puedes permitir la lectura y escritura de archivos, pero bloquear la ejecución del shell o las llamadas de red. El archivo claude_code_settings.json también admite estas operaciones preaprobadas:
{
"permissions": {
"allow": ["Read", "Write"],
"deny": ["Bash(*)", "mcp__*"]
}
}
Otra opción útil: --disallowedTools «Bash (rm: *)» bloquea los comandos rm incluso cuando el modo de omisión está activo. Las reglas de denegación se comprueban antes de la evaluación del modo, por lo que se aplican independientemente del modo de permiso que esté ejecutando.
Modo de ediciones aceptadas
AcceptEdits aprueba automáticamente las operaciones con archivos, por lo que Claude puede editar el código sin preguntar. Sin embargo, los comandos de Bash y las llamadas de red aún necesitan tu aprobación. Funciona bien para sesiones de creación de prototipos o para trabajar dentro de un directorio aislado en el que confías en la edición de archivos, pero sin perder de vista la ejecución de los comandos.
{
"permissions": {
"defaultMode": "acceptEdits"
}
}
Modo Plan
El modo Plan le da a Claude acceso de lectura y capacidad de razonamiento, pero bloquea las ediciones del archivo fuente y la ejecución de comandos. Claude lee el código base, razona al respecto y elabora un plan de ejecución estructurado. Lo revisas todo antes de que se ejecute un solo cambio. Introdúzcalo poniendo el prefijo /plan en una solicitud o pulsando Shift+Tab. Resulta especialmente útil para cambios de alto riesgo en los que se quiere ver primero la imagen completa.
Ganchos PreTooluse
He aquí un hecho que sorprende a la gente: los ganchos disparan incluso en modo bypass. Un gancho de PreToolUse puede bloquear cualquier llamada a una herramienta, independientemente del modo de permiso que esté ejecutando. Trail of Bits publicó un repositorio de configuración con ganchos que bloquean los patrones rm -rf y dirigen las pulsaciones a la principal. Las barandillas, no los muros impenetrables, sino que detienen los desastres obvios antes de que ocurran.
Acceso a directorios por ámbito
Monta solo los archivos relevantes en el directorio de trabajo de Claude Code y limitarás el radio de explosión sin tocar en absoluto la capa de permisos. Si combinas el ámbito de los directorios con el modo estándar, obtendrás la automatización con un riesgo mucho menor que el que conlleva la opción de omitir. El Guía de flujo de trabajo de Claude Code describe patrones prácticos para una ejecución con un alcance determinado.


Cómo TrueFoundry permite la automatización segura del código Claude
TrueFoundry existe para los equipos que necesitan la automatización de Claude Code a escala empresarial, sin tratar --dangerously-skip-permissions como un atajo aceptable. La plataforma ofrece controles a nivel de infraestructura que hacen que la bandera sea innecesaria en la mayoría de los escenarios de producción.
Todo se implementa en su propio entorno de AWS, GCP o Azure. Todas las sesiones de Claude Code se ejecutan en un espacio de ejecución aislado de la red sin salida externa de forma predeterminada. Las condiciones que hacen que el indicador de elusión sea seguro (bloqueo de la red, aislamiento de credenciales, acceso limitado) se aplican en la capa de infraestructura. Los desarrolladores individuales no tienen que recordar configurarlos manualmente.
- Ejecución nativa de VPC. Las sesiones de Claude Code se ejecutan dentro de su nube privada, no en una infraestructura compartida. Las políticas de red funcionan en la capa de infraestructura. El Puerta de enlace de IA se sitúa entre los desarrolladores y los proveedores de modelos: un punto final, límites de velocidad, límites presupuestarios y control de acceso para cada solicitud.
- Inyección de credenciales con alcance. Los secretos de producción nunca aparecen en el contexto de ejecución de Claude Code. La plataforma solo inyecta los permisos que requiere una tarea específica. Lo que --AllowedTools intenta imponer a nivel de desarrollador, TrueFoundry lo gestiona automáticamente mediante controles de acceso con privilegios mínimos.
- Listas de permisos de herramientas por sesión. Los equipos especifican exactamente a qué herramientas puede acceder Claude Code en cada entorno, sin desactivar por completo la arquitectura de confirmación. El Puerta de enlace MCP añade un control granular sobre los servicios externos a los que puede acceder Claude Code. Para obtener más información sobre cómo funcionan las conexiones MCP de manera clandestina, el Guía de integraciones de MCP cubre el panorama completo.
- Registros de auditoría inmutables. Cada acción se registra con metadatos completos, sin importar si --dangerously-skip-permissions está activo o no. Los registros permanecen en su entorno para garantizar el cumplimiento. Diríjalos a Grafana, Datadog o Splunk a través de OpenTelemetry para una observabilidad centralizada. El guía de seguridad empresarial cubre la configuración completa de la auditoría en detalle.
- RBAC a nivel de agente. Las políticas de acceso determinan qué desarrolladores pueden activar sesiones automatizadas de Claude Code y qué permisos tienen esas sesiones. Sin escalamiento ad hoc. El marco de gobernanza cubre todo el alcance: administración de claves de API, informes de cumplimiento y todo lo demás.
Las organizaciones que ejecutan Claude Code en producción a través de TrueFoundry han eliminado los permisos --saltarse peligrosamente los permisos de la mayoría de los flujos de trabajo. La capa de contención está integrada en la plataforma. Nadie tiene que unirla manualmente en cada sesión. Para equipos que hacen malabares Límites de uso del Código Claude junto con los requisitos de seguridad, AI Gateway gestiona ambas cuestiones desde un único plano de control.

Si tu equipo usa --dangerously-skip-permissions porque las solicitudes de permiso bloquean tus canalizaciones de CI/CD, TrueFoundry te ofrece una ruta mejor. La plataforma ejecuta Claude Code dentro de contenedores efímeros de tu VPC, con la salida de la red bloqueada, las credenciales por tarea y todas las acciones registradas, por lo que no es necesario marcar la omisión. Reserva una demostración para ver cómo funciona.
TrueFoundry AI Gateway ofrece una latencia de entre 3 y 4 ms, gestiona más de 350 RPS en una vCPU, se escala horizontalmente con facilidad y está listo para la producción, mientras que LitellM presenta una latencia alta, tiene dificultades para superar un RPS moderado, carece de escalado integrado y es ideal para cargas de trabajo ligeras o de prototipos.
La forma más rápida de crear, gobernar y escalar su IA


Controle, implemente y rastree la IA en su propia infraestructura
Blogs recientes
Preguntas frecuentes
¿Qué hace --dangerously-skip-permissions en Claude Code?
El flag desactiva todas las solicitudes de permisos interactivas: escrituras de archivos, comandos de shell, solicitudes de red y llamadas a herramientas MCP se ejecutan sin aprobación humana. No desactiva el entrenamiento de seguridad principal de Claude Code, las listas de permitidos de red, las restricciones de rutas protegidas, las reglas de denegación ni los hooks PreToolUse.
¿Es seguro usar Claude Code --dangerously-skip-permissions?
Depende del entorno, no del flag en sí. Usarlo en un portátil de desarrollador con claves SSH y acceso a producción es peligroso. Usarlo dentro de un contenedor Docker desechable sin red, sin secretos y con un sistema de archivos limitado es el caso de uso previsto.
¿Cómo dar a Claude Code permiso para ejecutarse sin solicitudes en CI/CD?
stream-json dentro de un contenedor efímero con egreso de red bloqueado. Para planes Team o Enterprise, el modo auto ofrece una alternativa más segura con guardrails basados en clasificador. Los administradores pueden bloquear el modo de omisión por completo a través de la configuración administrada.
¿Cuáles son las alternativas a --dangerously-skip-permissions para la automatización?
Claude Code ofrece cinco modos de permiso: modo auto (aprobaciones basadas en clasificador), acceptEdits (aprueba automáticamente los cambios de archivos), modo plan (solo lectura), listas de permitidos a nivel de herramienta y hooks PreToolUse. La mayoría de los equipos descubren que combinar acceptEdits o el modo auto con reglas de denegación elimina la necesidad del flag de omisión.
¿El flag --dangerously-skip-permissions omite todas las funciones de seguridad de Claude Code?
No. El flag elimina las solicitudes de confirmación interactivas, no el entrenamiento de seguridad principal de Claude Code, las listas de permitidos de red, las reglas de denegación, los hooks PreToolUse o las restricciones de rutas protegidas. Lo que elimina es el punto de control humano en el bucle.














.webp)
.webp)
.png)


.webp)




.webp)







