«کاوش منبع عاملی» (ARD) مشخصهای برای فهرستبندی منابع عاملی است. مانیفست ard.json منابع عاملگرا را در یک دامنه، مانند سرورهای MCP، عاملهای A2A، و مهارتهای عامل، توصیف میکند تا عاملهای هوش مصنوعی و ثبتها بتوانند آنها را پیدا کنند.
نحوه عملکرد ممیزی Lighthouse
فرایند کاوش: حسابرسی براساس سازوکارهای کاوش در مشخصات ARD (§5.1) بهدنبال مانیفست میگردد:
- درحال بررسی دستورالعمل
Agentmap:درrobots.txt. - درحال اسکن کردن HTML برای برچسبهای
<link rel="ard" href="...">. - درحال بازرسی برای پاسخ سرایند HTTP
Link: <...>; rel="ard". - درحال واکشی از نقطه پایانی شناختهشده
/.well-known/ard.json.
اگر اکتشاف اولیه ناموفق باشد، Lighthouse مسیرهای قدیمی (مانند
rel="ai-catalog" یا /.well-known/ai-catalog.json) را بررسی میکند. اگرچه محتوای یافتشده در اینجا
همچنان اعتبارسنجی میشود، اما هشداری صادر میشود زیرا مشتریان استاندارد ARD
ملزم به پشتیبانی از مسیرهای منسوخشده نیستند.
قوانین اعتبارسنجی: درستیسنجی بااستفاده از درگاه جاوا اسکریپت ARD v0.91 مجموعه انطباق انجام میشود، و معیارهای زیر را آزمایش میکند:
خطاهای انطباق و اعتبارسنجی:
- نحو و طرحواره: مانیفست JSON معتبر است و با طرحواره مانیفست ARD مطابقت دارد، و هر ورودی با طرحواره ورودی ARD مطابقت دارد. Lighthouse
مصنوعی را که نقطه ورودی به آن اشاره میکند (برای مثال، کارت سرور MCP در
url) واکشی یا اعتبارسنجی نمیکند. - فیلدهای الزامی: مانیفست حاوی آرایه
entriesاست و هر ورودی حاویidentifier،displayName، وtypeاست. - نام منبع یکسان لنگرانداخته در دامنه: هر
identifierاز قالبurn:air:<publisher>:<namespace>:<name>پیروی میکند. - تعریف مکان: هر ورودی دقیقاً یکی از
urlیا درونخطیdataرا تعریف میکند، هرگز هر دو یا هیچکدام را تعریف نمیکند. - ساختار مانیفست اعتماد: وقتی
trustManifestاضافه میشود، شیئی با ویژگیidentityاست.
هشدارهای روال مطلوب:
- پُرسمانهای نمونه: هر ورودی دارای یک آرایه
representativeQueriesبا ۲ تا ۵ پُرسمان نمونه است. ثبتها نمایه جستجوی خود را از اینها میسازند، بنابراین ورودی بدون آنها در نتایج جستجو ظاهر نخواهد شد. (درصورت وجود، باید آرایهای از رشتهها باشد؛ هر چیز دیگری خطا است.) - نوع رسانه:
typeباید نوع رسانه خوشساخت باشد. Lighthouse درباره انواع منسوخشده (برای مثال،application/mcp-server+jsonبهapplication/mcp-server-card+json)، انواع استاندارد با پارامترهای مفقود یا اضافی، و انواع ناشناخته خارج ازapplication/*هشدار میدهد. سفارشیapplication/*نوع مجاز است. - مجموعهها: فیلد
collectionsسطح بالا را پرچمگذاری میکند. دیگر بخشی از ARD نیست و نادیده گرفته میشود؛ درعوض، سلسلهمراتب مدل درentriesاست. - نقاط پایانی قدیمی: مانیفستهایی را پرچمگذاری میکند که فقط ازطریق مکانهای قدیمی
ai-catalogپیدا میشوند. - مکانهای تبلیغشده خراب: هر مکان تبلیغشدهای (پیوند
Agentmap:،rel="ard"، یاrel="ai-catalog"، یا سرایندLink) را که هنگام پیدا شدن مانیفست در جای دیگری بار نشد پرچمگذاری میکند.
الزامی نیست:
specVersionو دیگر فیلدهای سطح بالای اضافی بر امتیاز تأثیری ندارند.-
capabilitiesاختیاری است و امتیازی ندارد. اگر منبع شما ابزارها یا مهارتهای نامگذاریشده را افشا میکند، آنها را فهرست کنید (برای مثال،["WeatherTool", "ForecastTool"]) تا دفاتر ثبت بتوانند بدون واکشی کامل آرتیفکت، آنها را فیلتر کنند. اگر گنجانده شود، باید آرایهای از رشتهها باشد.
درحال خواندن جدول نتایج
ستون «عنصر» Root را برای مشکلات مربوط به مانیفست بهطور کلی نشان میدهد. برای
مشکلات مربوط به ورودی، displayName ورودی را نشان میدهد و اگر دردسترس نباشد، به
identifier یا Entry #n برمیگردد. یک مشکل طرحواره ممکن است دو بار ظاهر شود، یک بار در Root و یک بار در ورودی، که با خروجی آزمون رسمی مطابقت دارد.
درک امتیاز
نتایج ممیزی به روشهای زیر منعکس میشود:
- قبول (۱): مانیفست پیدا شد و هیچ خطا یا هشداری ندارد.
- امتیاز جزئی (۰٫۹): مانیفست معتبر است اما حداقل یک هشدار رویه بهینه دارد.
- ناموفق (۰): هرگونه خطای انطباق، مانند JSON بدشکل، نقض طرحواره، URN نامعتبر، یا هر دو یا هیچکدام از
url/data. اگر مانیفست تبلیغ شده باشد (ازطریقrobots.txt، پیوندrel="ard"یاrel="ai-catalog"، یا سرصفحهLink) اما بار نشود، ممیزی ناموفق خواهد بود. - نامربوط: هیچ مانیفستی با هیچ روشی پیدا نشد. این کار بر امتیاز Lighthouse شما تأثیری ندارد.
نحوه رفع کردن
برای قبولی در ممیزی، این مراحل اجرایی را دنبال کنید:
- مانیفست خود را در
/.well-known/ard.jsonارائه دهید یا باrel=ardبه آن پیوند دهید. اگر ازai-catalog.jsonیاrel=ai-catalogاستفاده میکنید، به نامهای جدید بروید. - هرگونه خطای فهرستشده در جدول ممیزی را برطرف کنید تا مانیفست با طرحواره ARD مطابقت داشته باشد.
- به هر ورودی یک شناسه
urn:air:...و دقیقاً یکی ازurlیاdataبدهید. - از نوع رسانه ARD استاندارد در
typeاستفاده کنید، درصورت وجود. - برای دریافت امتیاز کامل، ۲ تا ۵
representativeQueriesبه هر ورودی اضافه کنید.