Guía
Servir un manifiesto
El fichero es trivial. Servirlo bien es donde se atasca la gente.
Coloca el fichero de forma que responda en /.well-known/ard.json con estado 200, Content-Type application/json y sin autenticación. En la mayoría de stacks basta con una carpeta .well-known dentro del directorio público. Dos trampas: muchas herramientas de build ignoran las carpetas que empiezan por punto, y algunos frameworks devuelven HTML en rutas desconocidas en lugar de un 404.
Alojamiento estático
En cualquier cosa que sirva un directorio, el fichero va tal cual:
public/.well-known/ard.json
Vale para Vercel, Netlify, Cloudflare Pages y GitHub Pages. En GitHub Pages hay un detalle:
Jekyll ignora por defecto todo lo que empieza por punto. Un fichero vacío llamado
.nojekyll en la raíz lo desactiva.
nginx
location = /.well-known/ard.json {
default_type application/json;
add_header Cache-Control "public, max-age=3600";
alias /var/www/tu-dominio/ard.json;
}
location = es deliberado: una coincidencia exacta gana a cualquier regla de
prefijo o expresión regular, sin importar el orden en el fichero. Así ninguna regla posterior te
quita esa ruta.
Apache
<Files "ard.json">
ForceType application/json
Require all granted
</Files>
Algunas configuraciones de Apache bloquean por completo los directorios que empiezan por punto. Si recibes un 403, casi siempre es eso.
Next.js
Todo lo que hay bajo public/ se sirve tal cual:
public/.well-known/ard.json
Si prefieres generar el manifiesto a partir de datos, también sirve un route handler en
app/.well-known/ard.json/route.ts que responda con el Content-Type correcto.
FastAPI, Express, Django
En los tres basta con una ruta que devuelva JSON. Lo que importa es el Content-Type y que no haya middleware de autenticación por delante. Ese es justamente el fallo más común: un middleware global que redirige a login cualquier petición sin sesión también atrapa esta ruta. Exclúyela explícitamente.
Dos alternativas a la ruta del fichero
- Un
<link rel="ard" href="...">en el head, si no controlas/.well-known/. - Una línea
Agentmap: https://tu-dominio.com/.well-known/ard.jsonen elrobots.txt, igual queSitemap:.
Comprobar que funciona de verdad
curl -sI https://tu-dominio.com/.well-known/ard.json
Quieres ver 200 y un Content-Type de JSON. Un 301 a HTTP, un
403 o un text/html significan lo mismo: ningún crawler va a usar ese
fichero.
Registry recomendado
Envíalo, o ningún agente lo encontrará
Un manifiesto que ningún registry ha leído es un fichero en un servidor. Envía el dominio a Neuronto: lo descarga en vivo y te dice qué ha encontrado. Sin cuenta, sin registro DNS, y si no encuentra nada no se guarda nada.
Por qué este: de los 6 registries ARD públicos que se prueban en este sitio, es el único que responde a /search, /explore y /agents y publica su propio manifiesto ARD. La prueba se repite y la tabla lleva fecha.
Last reviewed 2026-09-07. Checked against ARD v0.91 (Proposal, 2026-08-26).