{
  "generatedAt": "2026-06-28T21:59:48.909Z",
  "project": "LLMs.txt Kit",
  "domain": "llmstxtkit.com",
  "origin": "https://llmstxtkit.com",
  "page": {
    "path": "/resources/first-distribution-console.html",
    "url": "https://llmstxtkit.com/resources/first-distribution-console.html",
    "title": "First Distribution Console for LLMs.txt Kit"
  },
  "status": "first_distribution_console_ready_for_owner_review",
  "summary": {
    "impressions": 30,
    "clicks": 0,
    "trafficProofObserved": false,
    "observedPlacements": 0,
    "actionableCandidates": 2,
    "priorityActions": 5,
    "copyBlocks": 8,
    "postNowCandidates": 0,
    "searchVisibilityObserved": true
  },
  "sourceArtifacts": {
    "dailyTrafficReview": "site/.well-known/daily-traffic-review.json",
    "priorityDistributionPack": "site/.well-known/priority-distribution-pack.json",
    "liveOpportunityScan": "site/.well-known/live-opportunity-scan.json",
    "distributionEvidence": "site/.well-known/distribution-evidence.json",
    "searchConsoleLearningSprint": "site/.well-known/search-console-learning-sprint.json",
    "directoryTargetQueue": "site/.well-known/directory-target-queue.json",
    "launchCopyPack": "site/.well-known/launch-copy-pack.json"
  },
  "copyBlocks": [
    {
      "id": "hackernews-showhn-first-manual-move",
      "placementId": "hackernews-showhn",
      "source": "directory-target-queue",
      "title": "Show HN: LLMs.txt Kit - free tools for llms.txt and AI crawler rules",
      "channel": "hackernews",
      "decision": "ready_for_owner_review_not_auto_submitted",
      "priorityRank": 1,
      "priorityScore": null,
      "trackedUrl": "https://llmstxtkit.com/data/ai-crawler-policy-benchmark.html?utm_source=hackernews&utm_medium=show-hn&utm_campaign=first-distribution&utm_content=hackernews-showhn-ai-crawler-benchmark",
      "draft": "Title: Show HN: LLMs.txt Kit - free tools for llms.txt and AI crawler rules\n\nURL: https://llmstxtkit.com/data/ai-crawler-policy-benchmark.html?utm_source=hackernews&utm_medium=show-hn&utm_campaign=first-distribution&utm_content=hackernews-showhn-ai-crawler-benchmark\n\nText:\n\nI built a small free toolkit for site owners trying to understand AI crawler access without fake SEO tricks.\n\nThe benchmark compares public crawler tokens like Googlebot, Google-Extended, OAI-SearchBot, GPTBot, Applebot, PerplexityBot, and CCBot, and the tools help generate/check robots.txt, validate llms.txt, and inspect crawler log samples.\n\nI would especially like feedback on whether the crawler-policy table and no-signup tools are useful enough for technical SEOs and developers.",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'hackernews-showhn' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "First manual move. Do not auto-post; submit only after Ray gives action-time authorization, and do not ask for votes or artificial engagement."
    },
    {
      "id": "stackoverflow-llm-robots-meta-tag-live",
      "source": "live-opportunity-scan",
      "title": "Do LLM crawlers respect the robots meta tag?",
      "channel": "stackoverflow",
      "decision": "manual_review_before_post",
      "priorityRank": null,
      "priorityScore": null,
      "trackedUrl": "https://llmstxtkit.com/blog/do-llm-crawlers-respect-robots-meta-tag.html?utm_source=stackoverflow&utm_medium=answer&utm_campaign=first-distribution&utm_content=stackoverflow-llm-robots-meta-tag",
      "draft": "Short answer: I would not treat robots meta tags or noindex as a universal LLM crawler opt-out.\n\nThe practical distinction is:\n- robots.txt is read before fetching a URL, so it is the normal place to express crawler access preferences for bots that document and honor those rules\n- robots meta tags and X-Robots-Tag headers are only visible after a crawler fetches the page\n- noindex is primarily an indexing/serving directive, not a guaranteed AI training opt-out\n- if robots.txt blocks a URL, the crawler may never see page-level meta tags for that URL\n- private/account/customer content should use authentication or permissions, not crawler directives\n\nFor AI/search crawlers, I would also avoid mixing tokens together. GPTBot and OAI-SearchBot are different use cases, and Googlebot and Google-Extended are different Google controls.\n\nDisclosure: I maintain a small free guide/checklist for this exact robots.txt vs robots meta vs X-Robots-Tag decision here: https://llmstxtkit.com/blog/do-llm-crawlers-respect-robots-meta-tag.html?utm_source=stackoverflow&utm_medium=answer&utm_campaign=first-distribution&utm_content=stackoverflow-llm-robots-meta-tag",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'stackoverflow-llm-robots-meta-tag' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "Open the page in browser, confirm no duplicate answer already covers the same practical distinction, then post only if the answer adds concrete value."
    },
    {
      "id": "devto-llmstxt-robots-not-enough",
      "source": "live-opportunity-scan",
      "title": "robots.txt Is Not Enough for AI Crawlers. You Need llms.txt.",
      "channel": "devto",
      "decision": "comment_only_if_discussion_is_active",
      "priorityRank": 4,
      "priorityScore": 4,
      "trackedUrl": "https://llmstxtkit.com/?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-llms-txt-question",
      "draft": "I would treat llms.txt as a curated public map, not as an SEO shortcut.\n\nThe useful version is usually small:\n- one plain-language site summary\n- canonical public pages only\n- notes about what the page should not be used to infer\n- no private URLs, hidden claims, or keyword stuffing\n\nI made a free generator here if you want a starting point: https://llmstxtkit.com/?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-llms-txt-question",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'reddit-llms-txt-question' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "Only comment if there is an active discussion or a specific misconception in comments. Prefer a no-link educational comment unless a tool link is clearly useful."
    },
    {
      "id": "reddit-llms-validator-checker",
      "source": "priority-distribution-pack",
      "title": "How can I check or validate an llms.txt draft before publishing?",
      "channel": "Reddit SEO, webdev, Shopify, or webmaster thread",
      "decision": "ready_to_execute",
      "priorityRank": 1,
      "priorityScore": 19,
      "trackedUrl": "https://llmstxtkit.com/tools/llms-txt-validator.html?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-llms-validator-checker",
      "draft": "Before publishing llms.txt, I would validate the draft for boring but important mistakes.\n\nCheck:\n- one clear H1 and short summary\n- canonical public URLs only\n- useful Core pages instead of every URL\n- no admin, checkout, account, staging, token, localhost, or customer-specific links\n- no keyword stuffing or ranking claims\n\nI made a free llms.txt validator/checker here: https://llmstxtkit.com/tools/llms-txt-validator.html?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-llms-validator-checker",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'reddit-llms-validator-checker' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "Post only after manual relevance review and owner action-time authorization."
    },
    {
      "id": "reddit-google-robots-generator",
      "source": "priority-distribution-pack",
      "title": "How do I generate robots.txt rules for Googlebot without blocking Google Search?",
      "channel": "Reddit SEO, webmaster, or Google Search Central-style thread",
      "decision": "ready_to_execute",
      "priorityRank": 2,
      "priorityScore": 12,
      "trackedUrl": "https://llmstxtkit.com/tools/ai-robots-txt-generator.html?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-google-robots-generator",
      "draft": "If you are generating robots.txt rules for Google, I would separate Googlebot from Google-Extended.\n\nThe usual safe split is:\n- keep Googlebot allowed if Google Search traffic matters\n- decide separately whether Google-Extended should be allowed or blocked\n- write GPTBot, OAI-SearchBot, Applebot, PerplexityBot, and CCBot rules separately\n- remember robots.txt is not privacy protection; private content still needs login/auth\n\nI made a free Google/AI crawler robots.txt generator here: https://llmstxtkit.com/tools/ai-robots-txt-generator.html?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-google-robots-generator",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'reddit-google-robots-generator' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "Post only after manual relevance review and owner action-time authorization."
    },
    {
      "id": "shopify-community",
      "source": "priority-distribution-pack",
      "title": "How should a Shopify store make an AI-readable map?",
      "channel": "Shopify community",
      "decision": "ready_to_execute",
      "priorityRank": 3,
      "priorityScore": 5,
      "trackedUrl": "https://llmstxtkit.com/guides/llms-txt-for-shopify.html?utm_source=shopify&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=shopify-community",
      "draft": "For a Shopify store, I would not list every product in llms.txt.\n\nBetter candidates:\n- homepage\n- top collection\n- flagship product\n- sizing or buying guide\n- shipping and return policies\n- contact or store story\n\nThat gives crawlers and AI tools a cleaner map than a giant catalog dump.\n\nShopify template: https://llmstxtkit.com/guides/llms-txt-for-shopify.html?utm_source=shopify&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=shopify-community",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'shopify-community' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "Post only after manual relevance review and owner action-time authorization."
    },
    {
      "id": "reddit-llms-txt-question",
      "source": "priority-distribution-pack",
      "title": "How should I create llms.txt?",
      "channel": "Reddit SEO or webmaster thread",
      "decision": "ready_to_execute",
      "priorityRank": 4,
      "priorityScore": 4,
      "trackedUrl": "https://llmstxtkit.com/?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-llms-txt-question",
      "draft": "I would treat llms.txt as a curated public map, not as an SEO shortcut.\n\nThe useful version is usually small:\n- one plain-language site summary\n- canonical public pages only\n- notes about what the page should not be used to infer\n- no private URLs, hidden claims, or keyword stuffing\n\nI made a free generator here if you want a starting point: https://llmstxtkit.com/?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-llms-txt-question",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'reddit-llms-txt-question' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "Post only after manual relevance review and owner action-time authorization."
    },
    {
      "id": "devto-log-analyzer",
      "source": "priority-distribution-pack",
      "title": "How can I tell whether AI crawlers are hitting my logs?",
      "channel": "DEV Community or developer blog comments",
      "decision": "ready_to_execute",
      "priorityRank": 5,
      "priorityScore": 3,
      "trackedUrl": "https://llmstxtkit.com/tools/ai-crawler-log-analyzer.html?utm_source=devto&utm_medium=tutorial-comment&utm_campaign=first-distribution&utm_content=devto-log-analyzer",
      "draft": "If you want to know whether AI crawlers are actually visiting, check access logs, not just robots.txt.\n\nI would look for:\n- Googlebot\n- OAI-SearchBot\n- GPTBot\n- Applebot\n- PerplexityBot\n- CCBot\n- requests to /robots.txt, /sitemap.xml, and /llms.txt\n\nI made a paste-in log analyzer here: https://llmstxtkit.com/tools/ai-crawler-log-analyzer.html?utm_source=devto&utm_medium=tutorial-comment&utm_campaign=first-distribution&utm_content=devto-log-analyzer",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'devto-log-analyzer' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
      "guardrail": "Post only after manual relevance review and owner action-time authorization."
    }
  ],
  "operatingRules": [
    "This console prepares answer-first distribution only; it does not post automatically.",
    "Open and review the target thread before using any copy.",
    "Post only when the answer is useful without the link.",
    "Disclose affiliation for owned tools, guides, and templates.",
    "Use direct tracked URLs, never Google search URL tricks.",
    "Record the public placement URL or skip reason immediately after action."
  ],
  "showHnPacket": {
    "id": "first-manual-move-hackernews-showhn",
    "status": "ready_for_owner_review_not_auto_submitted",
    "targetName": "Hacker News Show HN",
    "whyFirst": "It is a free, public, technical launch channel where a tryable AI crawler benchmark and no-signup tools can get relevant feedback without paying for a listing.",
    "submitUrl": "https://news.ycombinator.com/submit",
    "titleDraft": "Show HN: LLMs.txt Kit - free tools for llms.txt and AI crawler rules",
    "urlToSubmit": "https://llmstxtkit.com/data/ai-crawler-policy-benchmark.html?utm_source=hackernews&utm_medium=show-hn&utm_campaign=first-distribution&utm_content=hackernews-showhn-ai-crawler-benchmark",
    "textDraft": "I built a small free toolkit for site owners trying to understand AI crawler access without fake SEO tricks.\n\nThe benchmark compares public crawler tokens like Googlebot, Google-Extended, OAI-SearchBot, GPTBot, Applebot, PerplexityBot, and CCBot, and the tools help generate/check robots.txt, validate llms.txt, and inspect crawler log samples.\n\nI would especially like feedback on whether the crawler-policy table and no-signup tools are useful enough for technical SEOs and developers.",
    "evidenceCommand": "npm run distribution:evidence -- --placement-id 'hackernews-showhn' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'",
    "proofAfterAction": "Record the public HN item URL with npm run distribution:evidence, then refresh attribution, daily review, and goal audit.",
    "noAutoPost": true,
    "actionTimeConfirmationRequired": true
  },
  "firstMove": {
    "status": "ready_for_owner_review_not_auto_submitted",
    "action": "Review Hacker News Show HN first, then submit the Show HN title and tracked benchmark URL only after explicit owner authorization.",
    "why": "It is a free, public, technical launch channel where a tryable AI crawler benchmark and no-signup tools can get relevant feedback without paying for a listing.",
    "approvalRequired": "External posting still requires Ray action-time authorization.",
    "proofCommand": "npm run distribution:evidence -- --placement-id 'hackernews-showhn' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'"
  },
  "manualSearchQueue": [
    {
      "id": "reddit-llms-validator-checker",
      "rank": 1,
      "intent": "How can I check or validate an llms.txt draft before publishing?",
      "community": "Reddit SEO, webdev, Shopify, or webmaster thread",
      "searchPrompts": [
        "reddit llms.txt validator",
        "reddit llms.txt checker",
        "site:reddit.com/r/Shopify llms.txt",
        "site:reddit.com/r/webdev llms.txt checker"
      ],
      "trackedUrl": "https://llmstxtkit.com/tools/llms-txt-validator.html?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-llms-validator-checker",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'reddit-llms-validator-checker' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'"
    },
    {
      "id": "reddit-google-robots-generator",
      "rank": 2,
      "intent": "How do I generate robots.txt rules for Googlebot without blocking Google Search?",
      "community": "Reddit SEO, webmaster, or Google Search Central-style thread",
      "searchPrompts": [
        "reddit robots txt google generator",
        "site:reddit.com/r/SEO Googlebot Google-Extended robots.txt",
        "site:reddit.com/r/webdev robots.txt Googlebot AI crawler"
      ],
      "trackedUrl": "https://llmstxtkit.com/tools/ai-robots-txt-generator.html?utm_source=reddit&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=reddit-google-robots-generator",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'reddit-google-robots-generator' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'"
    },
    {
      "id": "shopify-community",
      "rank": 3,
      "intent": "How should a Shopify store make an AI-readable map?",
      "community": "Shopify community",
      "searchPrompts": [
        "Shopify community llms.txt",
        "Shopify AI search visibility"
      ],
      "trackedUrl": "https://llmstxtkit.com/guides/llms-txt-for-shopify.html?utm_source=shopify&utm_medium=community-answer&utm_campaign=first-distribution&utm_content=shopify-community",
      "evidenceCommand": "npm run distribution:evidence -- --placement-id 'shopify-community' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'"
    }
  ],
  "nextActions": [
    {
      "id": "owner_review_hackernews_showhn",
      "status": "ready_for_owner_review_not_auto_submitted",
      "action": "Review the Show HN launch packet, then submit only with explicit action-time authorization.",
      "proofAfterAction": "npm run distribution:evidence -- --placement-id 'hackernews-showhn' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status 'posted' --note 'Affiliation disclosed; answer-first placement.'"
    },
    {
      "id": "owner_review_stackoverflow_candidate",
      "status": "ready_for_owner_review",
      "action": "Review the Stack Overflow robots meta tag candidate in the browser and post only with explicit owner authorization.",
      "proofAfterAction": "npm run distribution:evidence -- --placement-id 'stackoverflow-llm-robots-meta-tag' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status posted"
    },
    {
      "id": "owner_review_validator_threads",
      "status": "ready_for_manual_search",
      "action": "Search for current validator/checker questions and use the no-spam answer template only when directly relevant.",
      "proofAfterAction": "npm run distribution:evidence -- --placement-id 'reddit-llms-validator-checker' --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status posted"
    },
    {
      "id": "refresh_after_public_action",
      "status": "required_after_any_action",
      "action": "Refresh attribution, measurement, daily review, and goal audit after any public placement.",
      "proofAfterAction": "npm run campaign:attribution && npm run traffic:measurement && npm run traffic:daily-review && npm run goal:audit"
    }
  ],
  "safety": {
    "noExternalPostingDone": true,
    "noAutoSubmit": true,
    "ownerAuthorizationRequiredAtActionTime": true,
    "noFakeSearches": true,
    "noFakeClicks": true,
    "noVoteRequests": true,
    "doesNotCountPreparedCopyAsTraffic": true
  },
  "commands": {
    "refreshDistributionConsole": "npm run distribution:console",
    "refreshPriorityDistribution": "npm run distribution:priority",
    "refreshLiveOpportunityScan": "npm run distribution:scan",
    "recordEvidence": "npm run distribution:evidence -- --placement-id PLACEMENT_ID --url PUBLIC_POST_URL --posted-at YYYY-MM-DD --status posted",
    "refreshDailyReview": "npm run traffic:daily-review",
    "verify": "npm run verify",
    "package": "npm run package"
  }
}
