इंस्टॉल गाइड

आपकी साइट पर दो चीज़ें सक्रिय होनी चाहिए: वह सूचना जो आपके आगंतुक देखते हैं, और एक छोटी सार्वजनिक फ़ाइल जो आपके एआई उपयोग की घोषणा करती है (yoursite.com/.well-known/ai-disclosure.json)। स्निपेट टैग एक बार चिपकाया जाता है, हर पृष्ठ पर समान होता है, और आपकी घोषणा तय करती है कि कौन-सी सूचनाएँ कहाँ दिखाई देती हैं। नीचे अपना प्लेटफ़ॉर्म चुनें; अधिकांश पर लगभग दस मिनट लगते हैं।

1 · सूचनाएँ दिखाएँ

बैनर और एआई लेबल जो आपके आगंतुक पृष्ठ पर देखते हैं।

2 · अपनी घोषणा प्रकाशित करें

ai-disclosure.json, एक सार्वजनिक फ़ाइल जो आपके अपने डोमेन से पठनीय है।

आपका काम तब पूरा होता है जब

चेकर स्तर 2 · प्रस्तुत दिखाता है।

अपना प्लेटफ़ॉर्म चुनें

WordPress

  1. प्लगइन इंस्टॉल करें

    अपने WordPress एडमिन में: Plugins → Add New → Upload Plugin, नीचे डाउनलोड की गई फ़ाइल चुनें, फिर Activate क्लिक करें।

    AIDisclose प्लगइन डाउनलोड करें (.zip)

  2. इसे दोनों काम करने दें

    प्लगइन सूचनाएँ दिखाता है और आपकी घोषणा फ़ाइल स्वचालित रूप से प्रकाशित करता है। किसी भी पोस्ट या छवि पर उसके "AI content" टॉगल से एआई सामग्री चिह्नित करें। कोई कोड संपादन नहीं।

  3. सत्यापित करें

    तब पूरा जब चेकर स्तर 2 · प्रस्तुत दिखाता है।

    चेकर चलाएँ

सत्यापित करें

चेकर चलाएँ। यह तीन चीज़ों की पुष्टि करता है: आपकी घोषणा फ़ाइल मान्य है, स्निपेट चल रहा है, और सूचनाएँ वास्तव में पृष्ठ पर दिखाई देती हैं। (इंजीनियरों के लिए: जाँच C1, C3, और C4 से C6।)

चेकर चलाएँ

यदि आपकी साइट हमारे चेकर (AIDiscloseBot) को अवरुद्ध करती है

स्कैन और साक्ष्य कैप्चर AIDiscloseBot/1.0 से आते हैं। यह केवल सार्वजनिक पृष्ठ पढ़ता है: यह कभी साइन इन नहीं करता, कभी फ़ॉर्म सबमिट नहीं करता, और robots.txt का पालन करता है। यदि आपकी robots.txt या बॉट सुरक्षा अज्ञात क्रॉलर को अवरुद्ध करती है, तो इसे स्पष्ट रूप से अनुमति दें:

robots.txt
User-agent: AIDiscloseBot
Allow: /

क्या इसे अनुमति देना एक जोखिम है? नहीं। robots.txt अनुमति कोई पहुँच नहीं देती। यह केवल विनम्र बॉट्स को बताती है कि वे उन पृष्ठों को पढ़ सकते हैं जो पहले से सार्वजनिक हैं। कोई भी User-Agent स्ट्रिंग नकली बना सकता है, लेकिन एक नकलची को वह कुछ नहीं मिलता जो आपके सार्वजनिक पृष्ठ पहले से नहीं देते।

यदि आप किसी WAF या बॉट प्रबंधक से ट्रैफ़िक नियंत्रित करते हैं, तो कभी भी केवल User-Agent पर अनुमति न दें। इसे स्रोत सत्यापन के साथ जोड़ें। हम अपनी क्रॉलर पहचान, और एग्रेस IP श्रेणियाँ जैसे-जैसे वे प्रावधानित होती हैं, यहाँ प्रकाशित करते हैं: aidisclose.io/bot.json.

चेकर चलाएँ

उन्नत

Theming with CSS variables, custom copy, single-page-app setup, and the full option reference are in the snippet reference.

स्क्रिप्ट को एक सटीक संस्करण पर लॉक करें (SRI)

स्क्रिप्ट टैग में एक इंटीग्रिटी हैश ब्राउज़र को संशोधित फ़ाइल चलाने से मना कर देता है। संस्करण-युक्त URL पिन करें और आप जो सटीक फ़ाइल तैनात करते हैं उससे हैश उत्पन्न करें:

shell
curl -sO https://cdn.aidisclose.io/v1/aidisclose.js
openssl dgst -sha384 -binary aidisclose.js | openssl base64 -A
फ़ाइल स्वयं परोसें (nginx / Apache)

अपने नियंत्रण वाले सर्वरों के लिए, डाउनलोड की गई ai-disclosure.json सीधे परोसें:

nginx
location = /.well-known/ai-disclosure.json {
  alias /var/www/site/ai-disclosure.json;
  default_type application/json;
  add_header Cache-Control "max-age=3600";
}
Apache
Alias "/.well-known/ai-disclosure.json" "/var/www/site/ai-disclosure.json"
<Files "ai-disclosure.json">
  ForceType application/json
</Files>
डैशबोर्ड-होस्ट की गई फ़ाइल को अपने ही डोमेन से परोसें

आपका सर्वर उस एक पते के अनुरोधों को हमें अग्रेषित करता है: आप डैशबोर्ड में फ़ाइल संपादित करते हैं, और यह फिर भी आपके डोमेन से परोसी जाती है। डैशबोर्ड इन्हें आपकी साइट कुंजी के साथ पहले से भरा हुआ दिखाता है।

nginx
location = /.well-known/ai-disclosure.json {
  proxy_pass https://cdn.aidisclose.io/v1/hosted-manifest/YOUR_SITE_KEY;
  proxy_set_header Host cdn.aidisclose.io;
  proxy_ssl_server_name on;
}
Cloudflare Worker
export default {
  async fetch(request) {
    const url = new URL(request.url);
    if (url.pathname === "/.well-known/ai-disclosure.json") {
      return fetch("https://cdn.aidisclose.io/v1/hosted-manifest/YOUR_SITE_KEY");
    }
    return fetch(request);
  }
};
सिंगल-पेज ऐप और स्टैटिक होस्ट

हर रूट को index.html पर दोबारा लिखने वाले फ्रेमवर्क, और कुछ स्टैटिक होस्ट, /.well-known/ai-disclosure.json को रोक लेते हैं और आपके ऐप का HTML 200 स्थिति के साथ लौटा देते हैं। फ़ाइल कमिट की हुई दिखती है, लेकिन चेकर मैनिफ़ेस्ट के बजाय HTML पढ़ता है। दो समाधान हैं: /.well-known/ को कैच-ऑल रीराइट से बाहर रखें ताकि स्टैटिक फ़ाइल application/json प्रकार के साथ परोसी जाए, या script टैग में data-aidisclose="YOUR_SITE_KEY" जोड़ें ताकि AIDisclose द्वारा होस्ट किया गया मैनिफ़ेस्ट लोड हो और फ़ाइल परोसने की ज़रूरत ही न पड़े।

netlify.toml / vercel.json
# netlify.toml: serve the real file before the SPA fallback
[[redirects]]
  from = "/*"
  to = "/index.html"
  status = 200
  force = false   # a real file at the path wins over this fallback

# vercel.json: rewrite everything EXCEPT /.well-known to the app
{ "rewrites": [
  { "source": "/((?!\.well-known/).*)", "destination": "/index.html" }
] }