Decir «sí» en Claude Code acabó publicando miles de contraseñas en GitHub

El modo automático de Claude Code guarda los comandos aprobados en un archivo local que, con un push de más, acaba en repositorios públicos. Apiiro documentó contraseñas de bases de datos, claves de AWS y tokens de GitHub a la vista de cualquiera.

Hay una casilla en Claude Code que dice 'sí, y no vuelvas a preguntar'. Miles de contraseñas acabaron en GitHub por marcarla sin leer la letra pequeña.

Qué guardaba exactamente esa casilla

El modo automático nació para callar al modelo. Los LLM tienen la manía de cerrar cada intervención con un '¿quieres que haga algo más?' y Claude Code no es la excepción: pregunta antes de tocar nada que considere delicado. Para que la sesión no se convierta en un interrogatorio, la herramienta ofrece ese selector que todos hemos visto en el diálogo de borrar una carpeta.

El detalle está en qué ocurre cuando lo marcas. Claude Code no guarda una regla abstracta: anota el comando aprobado tal cual, en texto plano, con las contraseñas que lleve dentro, en un archivo del proyecto llamado '.claude/settings.local.json'. Sin limpia, sin ofuscación, sin nada.

Publicidad

La firma de seguridad Apiiro documentó lo que se estaba escapando por esa vía: contraseñas de bases de datos, el login de los servidores SSH del usuario, claves privadas, tokens de GitHub y claves de AWS. Todo dentro de una carpeta que se sincroniza con el repositorio como cualquier otro archivo del proyecto.

El archivo no está pensado para compartirse, pero eso lo decide el equipo del desarrollador, no el repositorio. Si ya estaba subido antes, o si otra persona trabaja en el mismo proyecto, el contenido viaja a GitHub junto con el resto del código. Y ahí lo ve cualquiera con una pestaña abierta: una clave de AWS filtrada puede vaciar una cuenta bancaria en cuestión de minutos.

El vibecoding sube el volumen de todo, también de los descuidos

El contexto importa. Según el informe Octoverse 2026 de GitHub, en los doce meses anteriores al 30 de septiembre se registraron 17.900 millones de pushes y 34.300 millones de commits. La cifra de pushes supera a la de 2024 y 2025 juntos.

El archivo estaba diseñado para quedarse en local. El problema es que en local también vive el desarrollador que sube todo a GitHub con prisa.

Y hay otro dato que explica el resto: en septiembre, más del 40% de las pull requests venían de un agente de IA, frente al 17% de marzo. El vibe coding — programar a golpe de prompt y revisar después, con suerte — ha dejado de ser una curiosidad de fin de semana para convertirse en la forma estándar de picar código en medio mundo.

Un fallo de diseño, no una anécdota de viernes

Anthropic no ha publicado ningún comunicado. Quien habló fue Boris Cherny, responsable de Claude Code, en un hilo de Hacker News. Su defensa tiene tres patas: la herramienta nunca ha limpiado secretos de lo que guarda, el archivo está pensado para quedarse en local y Claude Code lo excluye de Git al crearlo, así que los casos filtrados se habrían creado a mano y subido después.

Es una explicación razonable y a medias. La exclusión protege del primer push, no de las copias, de los backups, de los equipos compartidos, ni de quien hace 'git add -A' desde otro directorio. Y el fondo sigue ahí: el modo automático guarda credenciales en claro porque nadie diseñó qué hacer con ellas cuando aparecieran dentro de un comando.

El precedente está a la vista. Los archivos .env en repositorios públicos son el clásico de estas historias desde hace años, y el vibecoding solo ha multiplicado las manos que escriben código sin mirar debajo. Mi lectura es que aquí no falla el usuario, falla el producto: pedir permiso con una casilla que congela el comando y olvida el secreto es una trampa de manual.

Publicidad

Cherny recomienda, mientras tanto, usar el modo automático junto al escaneo de secretos del repositorio. Su equipo prueba dos mejoras sin fecha cerrada: detección de filtrado dentro del propio modo automático y un escáner de secretos integrado en la herramienta. Hasta que lleguen, toca abrir '.claude/settings.local.json' y mirar qué hay dentro. Yo ya lo he hecho.

Hype-O-Meter

Nivel de hype: 3/10. No es un lanzamiento, es una filtración: el modo automático deja credenciales en claro y los dos parches que lo arreglarían no tienen fecha. Hype cero, urgencia máxima — y un repaso a tus repos no vendría mal esta semana.

El resumen para vagos (TL;DR)

  • 🎯 ¿Qué ha pasado? El 'sí, y no vuelvas a preguntar' de Claude Code guardó comandos con contraseñas en texto plano y miles acabaron en GitHub.
  • 🔥 ¿Por qué importa? Hablamos de claves de AWS, tokens y accesos SSH visibles para cualquiera en repos públicos.
  • 🤔 ¿Nos afecta o es solo un meme? Afecta a quien programa con IA y no revisa: el atajo cómodo sigue siendo el más caro.