Investigadores de la empresa de seguridad Apiiro revisaron repositorios públicos de GitHub, incluidos los archivos de configuración local de Claude Code, el historial de Git y los registros de conversaciones de agentes, y encontraron en total 2539 credenciales reales. Están repartidas en 1994 repositorios y afectan a 63 organizaciones. Entre lo expuesto hay contraseñas de bases de datos de Azure, tokens de producción de Square, datos de acceso SSH como root y hasta la contraseña de propietario de una base de datos de historiales médicos.
El problema nace de un botón que mucha gente pulsa a diario.

Qué se guarda al elegir “no volver a preguntar”
Antes de ejecutar un comando de shell, Claude Code pide autorización. Cuando el usuario elige “Sí, y no volver a preguntar”, esa regla se escribe en el archivo .claude/settings.local.json del directorio del proyecto, y los comandos de ese tipo dejan de mostrar el cuadro de diálogo. La complicación es que lo que se guarda suele ser el texto literal del comando: si este incluye directamente una cadena de conexión a una base de datos, un token de API o una clave, también quedan almacenados tal cual en ese archivo.
Según la documentación de Anthropic, al crear este archivo Claude Code configura Git para ignorarlo. Los datos de Apiiro muestran que esa barrera falla en bastantes escenarios: el proyecto se clona en otro ordenador, una carpeta normal se inicializa como repositorio Git más tarde, o el archivo se añade a la fuerza al control de versiones. En todos esos casos, settings.local.json puede acabar subido junto con el resto.
Algunas cifras que aporta Apiiro:
- En GitHub público hay 104185 archivos
settings.local.json, repartidos en 103617 repositorios; - De ellos, 1122 (cerca del 1,1 %) contienen secretos reales, que son 1379 una vez eliminados los duplicados;
- De los 1105 repositorios rastreados, en 539 aparecen confirmaciones (commits) firmadas con la participación de Claude que modificaron este archivo.
Cuanto más grande es el archivo, mayor es el riesgo. Entre los de más de 8 KB, aproximadamente uno de cada diez esconde una clave verdadera; entre los de menos de 500 bytes, menos de uno de cada quinientos. Las reglas de autorización se acumulan una a una: cuanto más tiempo lleva el usuario pulsando “no volver a preguntar”, más cosas se van juntando en el archivo.
Apiiro no comprobó si estas credenciales siguen siendo válidas en la actualidad. Aunque los propietarios de los repositorios borren el archivo, las claves pueden seguir en el historial de Git y en los forks ya existentes.
El problema se había denunciado hace tiempo
El 11 de agosto de 2025, un usuario ya había informado en el sistema de seguimiento de incidencias de Claude Code de que los comandos aprobados, junto con las claves de API y los tokens que contenían, se guardaban palabra por palabra en settings.local.json. El informe se cerró más tarde de forma automática por 60 días sin actividad y no se corrigió.
Más de un año después, ese mismo mecanismo se ha detectado mediante un escaneo sistemático. Boris Cherny, responsable de Claude Code, respondió en Hacker News que los archivos de configuración nunca deberían entrar en el control de versiones, que el equipo estudia cómo prevenirlo y que valora integrar el escaneo de secretos directamente en Claude Code; hasta entonces, recomienda que los usuarios ejecuten por su cuenta una herramienta de escaneo de claves para limpiar. Anthropic todavía no ha dado una fecha para la versión con la corrección.
Tampoco es la primera vez este mes que se señalan problemas de Claude Code con el tratamiento local de datos. A principios de mes se indicó que incluía el correo electrónico del usuario en algunas peticiones de red; entonces la solución también llegó primero como medida de mitigación y después en una versión oficial. Lo que tienen en común ambos casos es que las herramientas con agentes, para molestar menos al usuario, guardan información en disco o la envían al exterior, y a los desarrolladores les resulta difícil saber qué es exactamente lo que registran.
Qué pueden hacer ahora los desarrolladores
Quien haya usado Claude Code puede empezar buscando en sus repositorios locales y remotos los archivos .claude/settings.local.json y .claude/settings.json, para ver si contienen comandos con credenciales en texto plano. Las claves que se confirme que se han filtrado hay que revocarlas y reemitirlas; borrar el archivo no basta.
Un hábito más seguro es no escribir claves en los parámetros de la línea de comandos y referenciarlas mediante variables de entorno o herramientas de gestión de secretos; además, conviene activar en el repositorio el escaneo de secretos de GitHub u otra comprobación previa al commit, para que este tipo de archivos queden bloqueados antes de subirse.
Fuentes: ITHome, informe de investigación de Apiiro, CocoLoop, Ars Technica, The Hacker News; se contrastaron el número de archivos de configuración, la proporción de archivos con claves, el total de credenciales y el número de organizaciones afectadas.