Webs legibles por agentes: llms.txt, espejos en Markdown y qué se rompe de verdad

Volver
Kevin Riedl

9 min de lectura · 18 ago 2026
Última revisión

Siguiente
Se crea en tu dispositivo, sin conectar con Instagram. Copiamos el enlace para su sticker de enlace.

Haz que el contenido público sea fácil de recuperar y entender. Después valida los formatos adicionales que publiques. Nuestra implementación usa HTML, reglas de rastreo, Markdown y JSON-LD. Mantenerlos coherentes es un problema técnico que podemos comprobar.

Nosotros operamos este stack en la web que estás leyendo: un espejo en Markdown de cada página, un llms.txt por idioma, agent skills publicadas y un verificador que hace fallar el build de producción en cuanto algo de eso se rompe. Este artículo es la lista de cosas que ha cazado ese verificador, y es una lista más útil que la que se obtiene leyendo la especificación.

¿Quieres saber si un agente puede leer tu web antes de invertir en arreglarla?

 Ejecutar el comprobador gratuito

Cuatro superficies de nuestra implementación

Estas superficies sirven a consumidores distintos. No son cuatro requisitos universales de visibilidad con IA. Una página HTML útil puede recuperarse y citarse sin espejo Markdown ni JSON-LD.

SuperficiePregunta que respondeAsí se ve el fallo
robots.txt¿Qué política de rastreo se aplica?Una restricción en el grupo y la ruta pertinentes
HTML servido¿Qué se lee sin ejecutar JavaScript?Una estructura vacía para consumidores sin renderizado
Espejo Markdown (opcional)¿Puede un consumidor usar una copia fiel?Enlaces rotos o contenido perdido en esa copia
JSON-LD (opcional)¿Son coherentes los datos públicos?Datos estructurados inválidos o contradictorios

Google indica que llms.txt, Markdown y un esquema especial no son necesarios para sus funciones de búsqueda con IA. Procesa JavaScript con sus reglas SEO habituales. Importan la indexación, la elegibilidad para fragmentos y la configuración efectiva de inclusión en IA generativa de Search Console. Compruébalas por separado de los formatos opcionales. Google Search Central.

llms.txt, con honestidad

llms.txt es una convención, no un estándar web. Ningún motor está obligado a leerlo, y quien te venda lectura garantizada está prometiendo demasiado. También es barato de generar y le da a un agente un mapa limpio en lugar de tu navegación renderizada, y por eso publicamos uno y normalmente lo recomendamos.

Si lo publicas, tres cosas deciden si sirve para algo:

  • URLs portables. La convención v2 acepta enlaces Markdown y no obliga a usar URLs absolutas. Las relativas funcionan cuando el consumidor conserva como base la URL del llms.txt, pero ese contexto puede perderse al copiar el archivo a otra herramienta. Nosotros usamos URLs absolutas para mantener el mapa portable.
  • La cita en bloque bajo el H1. El H1 es la única sección obligatoria; la convención describe el resumen posterior como opcional. Aun así, conviene añadirlo cuando una frase identifica el sitio sin obligar al agente a inferir ese contexto.
  • Notas en enlaces importantes. Las notas tras cada enlace son opcionales, pero ayudan al agente con poco presupuesto a decidir qué abrir. Añade descripciones breves cuando el título resulte ambiguo.

Espejos en Markdown y cómo anunciarlos

Un espejo es el mismo contenido que la página, sin el envoltorio, servido como Markdown en una ruta predecible y enlazado desde la cabecera:

<link rel="alternate" type="text/markdown" href="/services/ai-visibility.md">

Generar espejos es sencillo. Mantenerlos fieles es la parte que necesita una máquina, porque un espejo puede estar sutilmente mal de formas que nadie nota durante meses. El generador corre después del build del sitio, recorre el HTML renderizado, y el verificador compara ambos después.

Los fallos que conviene conocer

Son hallazgos reales de nuestro propio build, no hipótesis. Cada uno llegó a producción al menos una vez antes de que existiera la puerta.

FalloPor qué pasaQué ve un agente
Valor de plantilla sin resolverUn generador emite su marcador de valor ausente, o un par de delimitadores de plantilla sobrevive sin renderizar, y nadie lee la salidaUna página que te devuelve tu lenguaje de plantillas
Bloque de código sin cerrarUna apertura sin su cierreTodos los encabezados posteriores dejan de ser encabezados, y el documento pierde su estructura
Entidad HTML sin decodificarEntidades no decodificadas durante la conversiónUna entidad de ampersand o apóstrofo sin decodificar, leída como sus caracteres literales en lugar de como el signo
Enlaces contiguos fusionadosEl espacio entre dos anchors se pierde al convertirDos textos de enlace pegados en una sola frase
Atribución pegada a su enlaceFalta un espacio antes del enlace de autorUna cadena de autor en la que la palabra previa al enlace queda fusionada con el nombre
Columnas de tabla que no cuadranLa fila de cabecera y la de separadores discrepan en el número de columnasLa tabla deja de interpretarse como tabla y cada número pierde su columna
Más de un H1Encabezados del envoltorio filtrándose al cuerpoAmbigüedad sobre de qué trata la página
Cuerpo vacíoContenido inyectado en el cliente, así que el espejo no tiene nada que espejarFront matter y silencio

Nuestro favorito fue más sutil que todos estos. Añadir un glifo decorativo a una página metió una comilla doble literal dentro de un nodo de texto SVG, lo que detuvo al minificador de HTML dentro de contenido foráneo. El resto de esa página se publicó sin minificar, y su espejo en Markdown se truncó en silencio a dos tercios, llevándose consigo todo el FAQ. Nada parecía mal en un navegador. La puerta hizo fallar el build, nombró la ruta, y la corrección fue un carácter.

La trampa del robots.txt: recuperación no es entrenamiento

Es el malentendido más caro del tema, y es una línea de configuración.

GPTBot recoge datos de entrenamiento; OAI-SearchBot sirve a la búsqueda y ChatGPT-User a visitas iniciadas por usuarios. Anthropic distingue ClaudeBot, Claude-SearchBot y Claude-User. Una restricción afecta al propósito documentado de ese agente, no a cualquier respuesta posible sobre tu sitio:

User-agent: GPTBot
Disallow: /

User-agent: *
Disallow: /

El primer grupo declara una restricción de entrenamiento para GPTBot. El comodín se aplica cuando no coincide un grupo más específico. Los grupos específicos tienen prioridad; gana la regla de ruta más larga y Allow desempata. El ejemplo restringe a rastreadores de búsqueda que respeten robots y no tengan grupo propio. No demuestra que ningún asistente pueda mencionar o citar el sitio.

Separa las preferencias de entrenamiento de la búsqueda y las visitas iniciadas por usuarios. OpenAI advierte que las reglas robots pueden no aplicarse a ChatGPT-User. Comprueba la documentación del proveedor y la respuesta desplegada antes de cambiar la política. OpenAI; Anthropic.

Por qué una puerta y no una lista

Cada punto de arriba es fácil de arreglar una vez e imposible de mantener arreglado por intención. El contenido cambia cada semana, las plantillas cada mes, y ninguno de estos fallos produce un síntoma visible. Una auditoría trimestral los encuentra un trimestre tarde.

Nuestro verificador de producción comprueba los espejos que decidimos publicar. El comprobador de legibilidad adapta reglas seleccionadas a una herramienta local del navegador. Revisa un archivo pegado con límites explícitos; no ejecuta nuestro build completo ni visita los enlaces.

Para los problemas vecinos: nuestra guía del Open Knowledge Format cubre empaquetar conocimiento interno como Markdown portable, y la guía del wiki de empresa listo para IA cubre servir ese conocimiento a tus propios agentes. Este artículo trata estrictamente de la superficie pública: lo que puede leer el agente de otra persona.

Preguntas frecuentes

¿Qué hace que una web sea legible por agentes?
El punto de partida es contenido público accesible y comprensible. Comprueba las reglas de acceso y elegibilidad del consumidor. Markdown, llms.txt y JSON-LD son integraciones opcionales, no requisitos universales de recuperación o cita.
¿Es llms.txt un estándar?
No. Es una convención y ningún motor está obligado a leerla. Es barata de publicar y da a un agente un mapa limpio en lugar de navegación renderizada, y por eso mantenemos uno, pero trata las promesas de lectura garantizada como motivo para dudar del resto de la propuesta.
¿Funcionan las URLs relativas en llms.txt?
Sí, si el consumidor las resuelve contra la ubicación del llms.txt. La convención v2 no exige URLs absolutas. Las absolutas siguen siendo más robustas cuando el archivo se copia a una herramienta que pierde su URL de origen.
¿Deberíamos bloquear GPTBot?
Trata GPTBot como preferencia de entrenamiento, OAI-SearchBot como acceso de búsqueda y ChatGPT-User como visita iniciada por el usuario. Revisa sus controles documentados por separado. Bloquear o permitir uno no demuestra cómo responderá cada asistente.
¿Los espejos en Markdown generan contenido duplicado para los buscadores?
Un espejo Markdown es una representación alternativa. Incluimos la URL de origen, lo anunciamos con rel=alternate y lo dejamos fuera del sitemap XML. Una URL canónica dentro de un archivo de texto documenta el origen, pero no demuestra consolidación por buscadores. Comprueba el comportamiento HTTP y la indexación.
¿Cómo evitamos que esto se degrade tras el lanzamiento?
Pon las comprobaciones en el build y no en un documento. El contenido y las plantillas cambian constantemente y ninguno de estos fallos tiene síntoma visible, así que todo lo que dependa de la intención retrocede en uno o dos trimestres.

Reflexiones finales

Empieza por contenido público legible y controles de acceso adecuados. Publica formatos adicionales cuando un consumidor los aproveche y comprueba su integridad en el build.

Nuestro comprobador permite revisar un archivo localmente. Corrige el problema demostrado y verifica por separado el acceso desplegado y la elegibilidad de búsqueda.

Que las máquinas te lean y te citen

Los motores de respuestas no pueden citar lo que no pueden descargar, interpretar ni atribuirte. Wavect arregla el acceso de agentes, los espejos legibles por máquinas, los datos estructurados y la identidad de entidad en el stack que ya tienes, y después hace tu producto usable por agentes y no solo legible.

Rutas de servicio relevantes:

Tu bandeja, sin ruido

Sigue el trabajo que te importa

Recibe un correo breve cuando publiquemos algo nuevo. Sigue todo el blog o solo los temas que te interesan.

¿Qué quieres recibir?
Elige tus temas

Gratis, doble opt-in y sin píxeles de seguimiento.

Volver
Kevin Riedl

9 min de lectura · 18 ago 2026
Última revisión

Siguiente

Recibe la próxima nota de campo sobre IA y agentes

Un correo breve cuando publiquemos. Sin píxeles de seguimiento ni contenido de relleno.

Gratis, doble opt-in y sin píxeles de seguimiento.