Rehber

Bir web sitesi ajanlara nasıl hazır hale getirilir

«Ajanlara hazır» olmak, üç farklı AI ajanı türü için üç farklı anlama gelir — ve bunlar üst üste yığılır. Bu validator'ı nasıl ajanlara hazır hale getirdiğimizi, yayımladığımız kodla tam olarak burada açıklıyoruz; böylece bu kalıbı kopyalayabilirsiniz.

Birbirinden bağımsız üç katman vardır. Herhangi birini tek başına benimseyin; birlikte ele alındığında sitenizi tarayan bir tarayıcıyı, tarayıcıda arayüzünüzü yöneten bir ajanı ve ağ üzerinden sizi çağıran başka bir ajanı kapsarlar.

Katman 1 — llms.txt: tarayıcılar için bağlam

Temel düzey. Kökteki düz metin llms.txt dosyanız, bir AI tarayıcısına sitenizin ne olduğunu ve hangi sayfaların önemli olduğunu öncelik sırasına göre anlatır. Getirme sırasında okunur — JavaScript yok, protokol yok. Buradan başlayın: nasıl oluşturulur.

Katman 2 — WebMCP: tarayıcı içi ajanlar için araçlar

WebMCP, bir sayfanın tarayıcı içinde çalışan bir AI ajanına çağrılabilir araçlar sunmasına olanak tanır; böylece ajan formunuzu tahmin etmek yerine tipi belirli bir eylemi çağırır. İki yol vardır ve ikisini de birlikte sunuyoruz.

Bildirimsel — gerçek bir formu açıklayın; tarayıcı ondan bir araç sentezler:

<form toolname="open_llms_txt_report"
      tooldescription="Validate a site's llms.txt and open its report.">
  <input name="url" toolparamdescription="Domain or URL to validate">
</form>

Buyurgan (imperative) — doğrudan yapılandırılmış veri döndüren bir aracı JavaScript'te kaydedin:

navigator.modelContext?.registerTool({
  name: "validate_llms_txt",
  description: "Validate a website's llms.txt; returns a 0-100 score and findings.",
  inputSchema: { type: "object", properties: { url: { type: "string" } }, required: ["url"] },
  execute: (input) => fetch("/api/validate?url=" + encodeURIComponent(input.url))
    .then(r => r.json())
    .then(data => ({ content: [{ type: "text", text: JSON.stringify(data) }] }))
});

Buyurgan çağrıyı if (navigator.modelContext) koşuluyla koruyun; böylece WebMCP'nin bulunmadığı yerlerde işlem yapılmaz. Bugün bir Chrome origin trial'ı olduğundan gerçek erişim küçüktür — bunu trafik olarak değil, ileriye dönük bir sinyal olarak değerlendirin.

Katman 3 — A2A: diğer ajanlar için çağrılabilir bir ajan

Agent2Agent (A2A) protokolü, diğer ajanların hizmetinizi keşfetmesine ve çağırmasına olanak tanır. Bir ajan kartı yayımlarsınız ve bunu bir JSON-RPC uç noktasıyla desteklersiniz:

// GET /.well-known/agent-card.json
{
  "name": "llms.txt Validator",
  "url": "https://llms-txt-validator.dev/a2a",
  "skills": [{ "id": "validate_llms_txt", "name": "Validate llms.txt" }]
}

url, A2A konuşan çalışan bir uç noktayı işaret etmelidir — aynı doğrulama mantığını bir beceri olarak sararak senkron message/send yöntemini uyguluyoruz. Kart bir sözleşmedir, meta etiket değil.

Tek kural: destekleyemeyeceğiniz bir sinyal yayımlamayın

Bir denetimi yeşile çevirmek için boş bir ajan kartı bırakmak veya sahte form açıklamaları eklemek cazip gelebilir. Yapmayın. Kartınızı getirip ölü bir uç noktayı çağıran — ya da hiçbir şey yapmayan bir aracı çağıran — bir ajan, bundan sonra size daha az güvenir. Buradaki her sinyal gerçek bir şeye bağlı olmalıdır. Bu nedenle bu validator, bir WebMCP veya A2A sinyalini yalnızca çalışan bir uygulama desteklediğinde «mevcut» olarak raporlar.

Her katmanı nasıl doğrularsınız

Okumaya devam edin

llms.txt dosyanızı doğrulayın →