Filtración del Código Fuente de Claude Revela Anti-Distilación, Modo Encubierto y Detección de Frustración

Anthropic envió accidentalmente un archivo .map con su paquete npm de Claude Code que contenía el código fuente completo y legible de la herramienta CLI. El paquete ha sido retirado desde entonces, pero el código fue ampliamente reflejado y analizado en Hacker News. Esto sigue a otra filtración reciente de la especificación del modelo de Anthropic.
Anti-destilación: inyectando herramientas falsas para envenenar imitadores
En claude.ts (líneas 301-313), hay una bandera llamada ANTI_DISTILLATION_CC. Cuando está habilitada, Claude Code envía anti_distillation: ['fake_tools'] en sus solicitudes API, indicando al servidor que inyecte silenciosamente definiciones de herramientas señuelo en el mensaje del sistema. Esto está diseñado para contaminar datos de entrenamiento si alguien está grabando tráfico API para entrenar modelos competidores.
La activación requiere cuatro condiciones: la bandera de tiempo de compilación ANTI_DISTILLATION_CC, el punto de entrada CLI, un proveedor API de primera parte y la bandera GrowthBook tengu_anti_distill_fake_tool_injection devolviendo verdadero. Un proxy MITM que elimine el campo anti_distillation de los cuerpos de las solicitudes lo evitaría por completo. Establecer la variable de entorno CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS en un valor verdadero desactiva todo el mecanismo.
Un segundo mecanismo anti-destilación en betas.ts (líneas 279-298) implementa la sumarización de texto del conector del lado del servidor. Cuando está habilitado, la API almacena en búfer el texto del asistente entre llamadas a herramientas, lo resume y devuelve el resumen con una firma criptográfica. Esto significa que las grabaciones de tráfico API solo capturarían resúmenes, no cadenas de razonamiento completas.
Modo encubierto: IA que oculta su IA
El archivo undercover.ts implementa un modo que elimina todos los rastros de elementos internos de Anthropic cuando Claude Code se utiliza en repositorios no internos. Instruye al modelo a nunca mencionar nombres en clave internos como "Capybara" o "Tengu", canales internos de Slack, nombres de repositorios o la frase "Claude Code" misma. La línea 15 establece: "NO hay fuerza-OFF. Esto protege contra filtraciones de nombres en clave del modelo".
Puedes forzarlo a ON con CLAUDE_CODE_UNDERCOVER=1, pero no hay forma de forzarlo a off. En compilaciones externas, toda la función se elimina por código muerto para devolver trivialidades. Esto significa que los commits y PRs escritos por IA de empleados de Anthropic en proyectos de código abierto no tendrán indicación de que una IA los escribió.
Detección de frustración mediante regex
userPromptKeywords.ts contiene un patrón regex que detecta la frustración del usuario: /\b(wtf|wth|ffs|omfg|shit(ty|tiest)?|dumbass|horribl (incompleto en la fuente). Esto sugiere que el sistema intenta identificar usuarios frustrados mediante coincidencia de palabras clave.
Otros hallazgos
- Atestación nativa del cliente por debajo del entorno de ejecución JS
- 250,000 llamadas API desperdiciadas por día
- KAIROS: un modo de agente autónomo no lanzado
La filtración ocurrió solo diez días después de que Anthropic enviara amenazas legales a OpenCode, obligándolos a eliminar la autenticación integrada de Claude porque herramientas de terceros estaban usando las APIs internas de Claude Code para acceder a Opus a tarifas de suscripción en lugar de precios por token.
📖 Read the full source: HN AI Agents
👀 Ver también

Generación de código determinista vs probabilística: Por qué la conversión a Rust con Vibe-Coded de Bun genera señales de alerta
Noah Hall argumenta que los cambios de repositorio de 1M de líneas generados por IA (como la conversión de Zig a Rust de Bun) son peligrosos. Contrasta transpiladores deterministas con la salida probabilística de los LLM. Las pruebas no son suficientes.

El libibverbs de Apple oculta los símbolos de GPUDirect RDMA; el búfer Metal de copia cero RDMA funciona en macOS
Un desarrollador descubrió que el subsistema RDMA de Apple acepta búferes de Metal GPU para transferencias de red de copia cero y encontró símbolos ocultos de ibv_reg_dmabuf_mr que sugieren que GPUDirect RDMA es posible en macOS sin modificación del kernel.

Mercurio 2: Modelo Basado en Difusión para Codificación con IA en Tiempo Real
Mercury 2 utiliza generación basada en difusión en lugar de decodificación secuencial token por token, genera tokens en paralelo y los refina a lo largo de pasos, y afirma 1,009 tokens/seg en GPUs NVIDIA Blackwell con precios de $0.25/1M tokens de entrada y $0.75/1M tokens de salida.

El Benchmark SPLICE Revela que los VLM Luchan con el Razonamiento Temporal y Dependen de Prioridades Lingüísticas
Una investigación presentada en EMNLP 2025 muestra que los modelos de visión y lenguaje obtienen puntuaciones bajas en una tarea de secuenciación de videos en la que los humanos destacan, con modelos como Gemini 2.0 Flash alcanzando un 51% de precisión frente al 85% del rendimiento humano. Los modelos frecuentemente dependen de atajos visuales y descripciones lingüísticas en lugar de una verdadera comprensión visual.