[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fqbcpI4oVZC0ANBcygi2i9-J0sjRlqZW4_-aclbLvbiQ":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":35,"analysis":125,"fingerprints":236},"serve-md","Serve Markdown","1.0","Azey","https:\u002F\u002Fprofiles.wordpress.org\u002Fakumarjain\u002F","\u003Cp>AI agents from ChatGPT, Claude, Perplexity, and others read your content to generate answers — but they parse through HTML, JavaScript, and navigation just to reach it. Serve Markdown gives them a direct path: clean Markdown with structured metadata. When a crawler requests it — via an \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode> header or a \u003Ccode>.md\u003C\u002Fcode> URL — your site responds instantly. No noise, no guesswork.\u003C\u002Fp>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Cp>Serve Markdown adds three capabilities to your WordPress site:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>1. Content Negotiation\u003C\u002Fstrong>\u003Cbr \u002F>\nWhen an AI crawler sends \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode>, your site returns Markdown instead of HTML — no URL changes needed.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>2. .md URL Suffix\u003C\u002Fstrong>\u003Cbr \u002F>\nAppend \u003Ccode>.md\u003C\u002Fcode> to any post or page URL (e.g. \u003Ccode>example.com\u002Fmy-article.md\u003C\u002Fcode>) to get the Markdown version directly.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>3. Markdown Auto-Discovery\u003C\u002Fstrong>\u003Cbr \u002F>\nEvery page includes a \u003Ccode>\u003Clink rel=\"alternate\" type=\"text\u002Fmarkdown\">\u003C\u002Fcode> tag in the HTML head so crawlers can find your Markdown automatically.\u003C\u002Fp>\n\u003Ch4>What the Markdown Output Looks Like\u003C\u002Fh4>\n\u003Cp>Every Markdown response includes YAML frontmatter with structured metadata followed by your post content. Here is a real example:\u003C\u002Fp>\n\u003Cpre>\n---\nurl: 'https:\u002F\u002Fakumarjain.com\u002Ftextexpander-year-in-review-2025\u002F'\ntitle: TextExpander Year in Review 2025\nauthor:\n  name: Ajay\n  url: 'https:\u002F\u002Fakumarjain.com\u002Fauthor\u002Fakumarjain\u002F'\ndate: '2026-01-05T09:05:00+05:30'\nmodified: '2026-01-10T14:30:06+05:30'\ntype: post\ncategories:\n  - 2025\n  - Year in Review\ntags:\n  - '#ToolsIUse'\n  - Productivity\n  - Remote Work\nimage: 'https:\u002F\u002Fakumarjain.com\u002Fwp-content\u002Fuploads\u002Ftext-expander-year-in-review-2025.webp'\npublished: true\n---\n\n# TextExpander Year in Review 2025\n\nIn my daily work, I need to type the same words and phrases repeatedly...\n\u003C\u002Fpre>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Content Serving\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Content negotiation via \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode> header\u003C\u002Fli>\n\u003Cli>\u003Ccode>.md\u003C\u002Fcode> URL suffix on any post or page\u003C\u002Fli>\n\u003Cli>Auto-discovery \u003Ccode>\u003Clink rel=\"alternate\">\u003C\u002Fcode> tag in page head\u003C\u002Fli>\n\u003Cli>Each feature can be toggled independently\u003C\u002Fli>\n\u003Cli>Choose which post types are exposed (posts, pages, custom post types)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Frontmatter and Metadata\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>YAML frontmatter with title, author, date, categories, tags, featured image, and more\u003C\u002Fli>\n\u003Cli>Toggle individual metadata fields on or off\u003C\u002Fli>\n\u003Cli>Add custom static key-value pairs (e.g., \u003Ccode>license\u003C\u002Fcode>, \u003Ccode>language\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>Map WordPress custom fields (post meta) into the frontmatter\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Access Control\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Per-post opt-out via a sidebar checkbox in the editor\u003C\u002Fli>\n\u003Cli>Exclude entire categories from Markdown serving\u003C\u002Fli>\n\u003Cli>Exclude entire tags from Markdown serving\u003C\u002Fli>\n\u003Cli>Only published posts are served — drafts and private posts are never exposed\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Crawler Insights\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Request log showing every Markdown request with timestamp, URL, bot name, and method\u003C\u002Fli>\n\u003Cli>Automatic bot detection: ClaudeBot, GPTBot, ChatGPT, OAI-SearchBot, PerplexityBot, Googlebot, Bingbot, Cohere, Meta AI, Bytespider, Applebot, and more\u003C\u002Fli>\n\u003Cli>Stats dashboard: total requests, requests today, unique bots\u003C\u002Fli>\n\u003Cli>Filter log by individual bot\u003C\u002Fli>\n\u003Cli>Configurable retention period with automatic pruning\u003C\u002Fli>\n\u003Cli>One-click log clearing\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Editor Integration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“Preview Markdown” button in the post editor sidebar\u003C\u002Fli>\n\u003Cli>“View Markdown” link in the Posts and Pages list table\u003C\u002Fli>\n\u003Cli>Meta box shows on all enabled post types\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Performance\u003C\u002Fh4>\n\u003Cp>Markdown conversion only runs when specifically requested — regular visitors see the same HTML pages they always have. The crawler log uses a lightweight custom table with three safeguards against unbounded growth: time-based retention, a row count cap, and a table size cap.\u003C\u002Fp>\n\u003Ch4>Privacy\u003C\u002Fh4>\n\u003Cp>The crawler log stores IP addresses and user-agent strings from Markdown requests. This data stays in your WordPress database and is never sent to external services. You can disable logging entirely, configure a retention period, or clear the log at any time from the settings page.\u003C\u002Fp>\n","Serve Markdown versions of your posts and pages to AI agents and crawlers. Content negotiation, .md URLs, auto-discovery, and crawler logging.",0,56,"2026-03-15T12:22:00.000Z","6.9.4","6.5","8.1",[18,19,20,21,22],"ai","content-negotiation","crawlers","markdown","seo","https:\u002F\u002Fgithub.com\u002Fajaykj\u002Fserve-markdown","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fserve-md.1.0.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":30,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},"akumarjain",1,30,94,"2026-04-04T00:37:58.201Z",[36,61,77,94,109],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":46,"num_ratings":47,"last_updated":48,"tested_up_to":14,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":56,"download_link":57,"security_score":58,"vuln_count":59,"unpatched_count":11,"last_vuln_date":60,"fetched_at":27},"better-robots-txt","Better Robots.txt – AI-Ready Crawl Control & Bot Governance","3.0.0","Pagup","https:\u002F\u002Fprofiles.wordpress.org\u002Fpagup\u002F","\u003Cp>Better Robots.txt replaces the default WordPress robots.txt workflow with a smarter, structured version you can configure and preview before publishing.\u003C\u002Fp>\n\u003Cp>Instead of a blank textarea, you get a guided wizard with presets, plain-language explanations, and a final Review & Save step so you can inspect the generated robots.txt before it goes live.\u003C\u002Fp>\n\u003Cp>Built for beginners and advanced users alike, Better Robots.txt helps you control how search engines, AI crawlers, SEO tools, archive bots, bad bots, social preview bots, and other automated agents interact with your site.\u003C\u002Fp>\n\u003Cp>Trusted by thousands of WordPress sites, Better Robots.txt is designed for the AI era without resorting to hype, vague promises, or hidden rules.\u003C\u002Fp>\n\u003Cp>Better Robots.txt is available in Free, Pro, and Premium editions. The free plugin covers the guided workflow and essential crawl control features, while Pro and Premium unlock additional governance, protection, and AI-ready modules. Some screenshots on the plugin page show features from all three editions.\u003C\u002Fp>\n\u003Ch3>A quick overview\u003C\u002Fh3>\n\u003Cp>\u003Ciframe loading=\"lazy\" title=\"Better robots.txt Video — AI-Ready Crawl Control for WordPress\" src=\"https:\u002F\u002Fplayer.vimeo.com\u002Fvideo\u002F1169756981?dnt=1&app_id=122963\" width=\"750\" height=\"372\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\">\u003C\u002Fiframe>\u003C\u002Fp>\n\u003Ch3>Why Better Robots.txt is different\u003C\u002Fh3>\n\u003Cp>Most robots.txt plugins fall into one of three categories:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Simple text editor\u003C\u002Fli>\n\u003Cli>Virtual robots.txt manager\u003C\u002Fli>\n\u003Cli>Single-purpose AI or policy add-on\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Better Robots.txt goes further.\u003C\u002Fp>\n\u003Cp>It gives you a complete, guided crawl control workflow so you can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Choose a preset that matches your goals\u003C\u002Fli>\n\u003Cli>Control major crawler categories without writing everything by hand\u003C\u002Fli>\n\u003Cli>Keep core WordPress protection rules visible and editable\u003C\u002Fli>\n\u003Cli>Clean up low-value crawl paths that waste crawl budget\u003C\u002Fli>\n\u003Cli>Generate a cleaner robots.txt output\u003C\u002Fli>\n\u003Cli>Preview the final result before saving\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>What you can control\u003C\u002Fh3>\n\u003Cp>Better Robots.txt helps you manage:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Search engine visibility\u003C\u002Fli>\n\u003Cli>AI and LLM crawler behavior\u003C\u002Fli>\n\u003Cli>AI usage signals such as search, ai-input, and ai-train preferences\u003C\u002Fli>\n\u003Cli>SEO tool crawlers\u003C\u002Fli>\n\u003Cli>Bad bots and abusive crawlers\u003C\u002Fli>\n\u003Cli>Archive and Wayback access\u003C\u002Fli>\n\u003Cli>Feed crawlers and crawl traps\u003C\u002Fli>\n\u003Cli>WooCommerce crawl cleanup\u003C\u002Fli>\n\u003Cli>CSS, JavaScript, and image crawling rules\u003C\u002Fli>\n\u003Cli>Social media preview crawlers\u003C\u002Fli>\n\u003Cli>ads.txt and app-ads.txt allowance\u003C\u002Fli>\n\u003Cli>llms.txt generation\u003C\u002Fli>\n\u003Cli>Advanced directives such as crawl-delay and custom rules\u003C\u002Fli>\n\u003Cli>Final review before publishing\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Editions\u003C\u002Fh3>\n\u003Cp>Better Robots.txt is available in three editions:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Free – Includes the guided setup, the Essential preset, core crawl control features, and the final Review & Save workflow.\u003C\u002Fli>\n\u003Cli>Pro – Adds more advanced governance and protection modules, including additional AI, crawler, and cleanup controls.\u003C\u002Fli>\n\u003Cli>Premium – Unlocks the most restrictive and advanced protection options, including the Fortress preset and additional high-control modules.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Some options shown in the interface are marked Free, Pro, or Premium so users can immediately understand which modules belong to each edition.\u003C\u002Fp>\n\u003Ch3>Presets\u003C\u002Fh3>\n\u003Cp>Setup starts with four modes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Essential – A clean, practical configuration for most websites that want a better robots.txt without complexity.\u003C\u002Fli>\n\u003Cli>AI-First – For publishers and content sites that want AI-ready governance without shutting down discovery.\u003C\u002Fli>\n\u003Cli>Fortress – For websites that want stronger protection against scraping, archive capture, and unnecessary crawl activity.\u003C\u002Fli>\n\u003Cli>Custom – For users who prefer to configure each module manually.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For many sites, one preset plus a quick review is enough.\u003C\u002Fp>\n\u003Ch3>Built for beginners and experts\u003C\u002Fh3>\n\u003Cp>Beginners get:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>A guided setup instead of a raw robots.txt box\u003C\u002Fli>\n\u003Cli>Preset-based configuration\u003C\u002Fli>\n\u003Cli>Plain-language explanations for important choices\u003C\u002Fli>\n\u003Cli>A safer workflow with a final preview step\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Advanced users get:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Editable core WordPress protection rules\u003C\u002Fli>\n\u003Cli>Fine-grained crawler controls by category\u003C\u002Fli>\n\u003Cli>WooCommerce-oriented cleanup options\u003C\u002Fli>\n\u003Cli>Consolidated output options\u003C\u002Fli>\n\u003Cli>Advanced directives and custom rules\u003C\u002Fli>\n\u003Cli>A final output they can inspect before publishing\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>AI-ready, without hype\u003C\u002Fh3>\n\u003Cp>Better Robots.txt includes features for modern AI-related crawl governance, including:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>AI crawler handling\u003C\u002Fli>\n\u003Cli>Optional llms.txt support\u003C\u002Fli>\n\u003Cli>AI usage signals for compliant systems\u003C\u002Fli>\n\u003Cli>Optional machine-readable governance signals for advanced use cases\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>These features help you express how you want automated systems to use your content.\u003C\u002Fp>\n\u003Cp>However, Better Robots.txt does not claim to control AI by force. Like robots.txt itself, these signals are most useful with compliant systems and good-faith crawlers.\u003C\u002Fp>\n\u003Ch3>What Better Robots.txt is\u003C\u002Fh3>\n\u003Cp>Better Robots.txt is:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>A robots.txt governance plugin for WordPress\u003C\u002Fli>\n\u003Cli>A guided configuration workflow instead of a raw text editor\u003C\u002Fli>\n\u003Cli>A crawl control layer to reduce wasteful crawling\u003C\u002Fli>\n\u003Cli>A practical bridge between SEO, crawl hygiene, and AI-era policy signaling\u003C\u002Fli>\n\u003Cli>A way to keep your crawl policy clearer for humans and machines\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Technical reference for advanced users: Better Robots.txt also maintains a public \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FGautierDorval\u002Fbetter-robots-txt\" rel=\"nofollow noopener noreferrer ugc\">GitHub repository\u003C\u002Fa> with product definition, governance notes, and machine-readable artefacts.\u003C\u002Fp>\n\u003Ch3>What Better Robots.txt is not\u003C\u002Fh3>\n\u003Cp>Better Robots.txt is not:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>A firewall or Web Application Firewall (WAF)\u003C\u002Fli>\n\u003Cli>An anti-scraping enforcement engine\u003C\u002Fli>\n\u003Cli>A legal compliance engine\u003C\u002Fli>\n\u003Cli>A guarantee that every bot will obey your rules\u003C\u002Fli>\n\u003Cli>A replacement for server-level security or access control\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>It helps you publish a clearer crawl policy.\u003C\u002Fp>\n\u003Cp>It does not replace infrastructure-level protection.\u003C\u002Fp>\n\u003Ch3>Typical use cases\u003C\u002Fh3>\n\u003Cp>Use Better Robots.txt if you want to:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Clean up a weak or noisy default robots.txt\u003C\u002Fli>\n\u003Cli>Reduce crawl waste on WordPress or WooCommerce\u003C\u002Fli>\n\u003Cli>Keep major search engines allowed while restricting other bots\u003C\u002Fli>\n\u003Cli>Control whether archive bots can snapshot your site\u003C\u002Fli>\n\u003Cli>Publish AI usage preferences more clearly\u003C\u002Fli>\n\u003Cli>Keep social preview bots allowed while limiting scrapers\u003C\u002Fli>\n\u003Cli>Review the final file before making it live\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Key Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Guided step-by-step wizard\u003C\u002Fli>\n\u003Cli>Preset-based setup: Essential, AI-First, Fortress, Custom\u003C\u002Fli>\n\u003Cli>Search engine visibility controls\u003C\u002Fli>\n\u003Cli>AI and LLM crawler governance\u003C\u002Fli>\n\u003Cli>AI usage signals support\u003C\u002Fli>\n\u003Cli>SEO tool crawler controls\u003C\u002Fli>\n\u003Cli>Bad bot and abusive crawler options\u003C\u002Fli>\n\u003Cli>Archive and Wayback access controls\u003C\u002Fli>\n\u003Cli>Spam, feed, and crawl trap cleanup\u003C\u002Fli>\n\u003Cli>WooCommerce crawl cleanup options\u003C\u002Fli>\n\u003Cli>CSS, JavaScript, and image crawling rules\u003C\u002Fli>\n\u003Cli>Social media preview crawler controls\u003C\u002Fli>\n\u003Cli>ads.txt and app-ads.txt allowance\u003C\u002Fli>\n\u003Cli>Optional llms.txt generation\u003C\u002Fli>\n\u003Cli>Consolidated output option\u003C\u002Fli>\n\u003Cli>Core WordPress protection rules remain visible and editable\u003C\u002Fli>\n\u003Cli>Final Review & Save preview screen\u003C\u002Fli>\n\u003C\u002Ful>\n","Replace the default WordPress robots.txt workflow with a smarter, structured version you can preview before publishing, with Free, Pro, and Premium ed &hellip;",6000,305034,90,102,"2026-03-10T18:33:00.000Z","5.0","7.4",[52,53,54,55,22],"ai-crawlers","bot-blocker","llms-txt","robots-txt","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbetter-robots-txt.3.0.0.zip",99,2,"2023-02-14 00:00:00",{"slug":62,"name":63,"version":64,"author":65,"author_profile":66,"description":67,"short_description":68,"active_installs":69,"downloaded":70,"rating":25,"num_ratings":71,"last_updated":72,"tested_up_to":14,"requires_at_least":49,"requires_php":50,"tags":73,"homepage":75,"download_link":76,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"ai-content-signals","AI Content Signals","1.0.1","Fernando Tellado","https:\u002F\u002Fprofiles.wordpress.org\u002Ffernandot\u002F","\u003Cp>AI Content Signals allows you to easily implement the Content Signals Policy in your WordPress site’s robots.txt file. This gives you more control over how AI crawlers and large language models (LLMs) can use your content.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What are Content Signals?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Content Signals is an extension to the robots.txt standard created by Cloudflare that lets you specify three types of permissions for AI crawlers:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>search\u003C\u002Fstrong> – Allow or deny search indexing and traditional search results\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ai-input\u003C\u002Fstrong> – Allow or deny using your content for real-time AI responses (RAG, AI Overviews)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ai-train\u003C\u002Fstrong> – Allow or deny using your content for training AI models\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Key Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Easy-to-use settings page in WordPress admin\u003C\u002Fli>\n\u003Cli>Set global defaults for all crawlers\u003C\u002Fli>\n\u003Cli>Configure specific settings for individual AI bots (GPTBot, ClaudeBot, PerplexityBot, etc.)\u003C\u002Fli>\n\u003Cli>Add custom bot User-Agents\u003C\u002Fli>\n\u003Cli>Supports both physical and virtual robots.txt files\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Option to create physical robots.txt with basic WordPress rules\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Preview generated Content Signals before applying\u003C\u002Fli>\n\u003Cli>Optional legal text with EU Directive reference\u003C\u002Fli>\n\u003Cli>Works with existing robots.txt from SEO plugins\u003C\u002Fli>\n\u003Cli>Automatic sitemap detection and inclusion\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Supported Bots\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The plugin includes predefined settings for major AI crawlers:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>OpenAI GPTBot and ChatGPT-User\u003C\u002Fli>\n\u003Cli>Anthropic ClaudeBot and Claude-Web\u003C\u002Fli>\n\u003Cli>Perplexity Bot\u003C\u002Fli>\n\u003Cli>Google Extended (Bard\u002FGemini)\u003C\u002Fli>\n\u003Cli>Common Crawl Bot\u003C\u002Fli>\n\u003Cli>Meta\u002FFacebook Bot\u003C\u002Fli>\n\u003Cli>And many more…\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Important Notice\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Content Signals is a declarative standard – it expresses your preferences but does not technically enforce them. AI companies are not legally required to respect these signals, though the plugin includes legal text referencing EU copyright directives.\u003C\u002Fp>\n\u003Cp>This plugin works best when combined with other protection measures like traditional robots.txt rules and server-level bot management.\u003C\u002Fp>\n","Add Content Signals to your robots.txt to control how AI crawlers can use your content.",200,605,3,"2025-12-28T17:52:00.000Z",[18,74,20,55,22],"cloudflare","https:\u002F\u002Fservicios.ayudawp.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fai-content-signals.1.0.1.zip",{"slug":78,"name":79,"version":80,"author":81,"author_profile":82,"description":83,"short_description":84,"active_installs":25,"downloaded":85,"rating":25,"num_ratings":31,"last_updated":86,"tested_up_to":14,"requires_at_least":87,"requires_php":88,"tags":89,"homepage":92,"download_link":93,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"coding-bunny-llms-generator","CodingBunny LLMs.txt Generator","1.2.2","CodingBunny","https:\u002F\u002Fprofiles.wordpress.org\u002Fcodingbunny\u002F","\u003Cp>CodingBunny LLMs.txt Generator creates an advanced llms.txt file to help AI systems discover and understand your content with rich semantic metadata.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>AI Metadata\u003C\u002Fstrong>: Schema.org types, canonical URLs, related content, differentiated licenses\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smart Filtering\u003C\u002Fstrong>: Decorative image detection, featured-only option, configurable limits\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Crawler Control\u003C\u002Fstrong>: Allow\u002FDisallow directives, AI bot allowlist, SEO noindex integration\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Rich YAML\u003C\u002Fstrong>: Title, category, type, date, summary, author, language, tags, priority\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automation\u003C\u002Fstrong>: Daily\u002Fweekly scheduling, immediate on-publish, generation history\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Developer-Friendly\u003C\u002Fstrong>: 20+ hooks\u002Ffilters, WooCommerce support, multilingual ready\u003C\u002Fli>\n\u003Cli>Schema.org auto-detection (Article, Product, ContactPage, FAQPage, etc.)\u003C\u002Fli>\n\u003Cli>Canonical URLs (Yoast\u002FRankMath compatible)\u003C\u002Fli>\n\u003Cli>Related URLs (parent\u002Fchild pages, related posts\u002Fproducts)\u003C\u002Fli>\n\u003Cli>Differentiated licenses (content vs. media)\u003C\u002Fli>\n\u003Cli>HTML entity fixes and improved text normalization\u003C\u002Fli>\n\u003C\u002Ful>\n","Advanced llms.txt generator with AI metadata, Schema.org types, canonical URLs, and differentiated licenses for optimal LLM indexing.",895,"2026-02-26T11:40:00.000Z","6.0","8.0",[18,20,90,22,91],"llms","sitemap","https:\u002F\u002Fcoding-bunny.com\u002Fllms-generator\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcoding-bunny-llms-generator.1.2.2.zip",{"slug":95,"name":96,"version":97,"author":98,"author_profile":99,"description":100,"short_description":101,"active_installs":25,"downloaded":102,"rating":11,"num_ratings":11,"last_updated":103,"tested_up_to":14,"requires_at_least":49,"requires_php":104,"tags":105,"homepage":107,"download_link":108,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"jumpsuitai-llms-txt","JumpsuitAI – llms.txt + Markdown Endpoints","1.1.4","Brad Phillips","https:\u002F\u002Fprofiles.wordpress.org\u002Fbradphillips\u002F","\u003Cp>JumpsuitAI – llms.txt + Markdown Endpoints automatically publishes:\u003C\u002Fp>\n\u003Cp>Plugin website: https:\u002F\u002Fjumpsuitai.com\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u002Fllms.txt\u003C\u002Fstrong> — a structured list of links to your public content\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u002Fllms-full.txt\u003C\u002Fstrong> — the entire documentation in a single file (optional, enable in settings)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>.md endpoints\u003C\u002Fstrong> — request a public URL with \u003Cstrong>.md\u003C\u002Fstrong> appended to get a lightweight Markdown representation\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>It also includes a simple \u003Cstrong>Groups & Content\u003C\u002Fstrong> screen to keep your output organized with sensible defaults (Pages and Posts), plus per-item controls like \u003Cstrong>Hide from LLMs\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch4>Pro (separate plugin)\u003C\u002Fh4>\n\u003Cp>JumpsuitAI – llms.txt + Markdown Endpoints Pro adds:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Custom groups and manual ordering\u003C\u002Fli>\n\u003Cli>Per-item short descriptions\u003C\u002Fli>\n\u003Cli>Optional section support\u003C\u002Fli>\n\u003Cli>Custom intro text and blockquote customization\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin uses Freemius for plugin updates and (optional) usage analytics. Any data collection is opt-in.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Service: Freemius\u003C\u002Fli>\n\u003Cli>Terms: https:\u002F\u002Ffreemius.com\u002Fterms\u002F\u003C\u002Fli>\n\u003Cli>Privacy: https:\u002F\u002Ffreemius.com\u002Fprivacy\u002F\u003C\u002Fli>\n\u003C\u002Ful>\n","Generate \u002Fllms.txt, \u002Fllms-full.txt & .md endpoints for AI\u002FLLMs in WordPress. Works with Yoast SEO, Rank Math, SEOPress & All in One SEO.",653,"2026-02-17T01:43:00.000Z","7.2",[18,106,54,21,22],"content-discovery","https:\u002F\u002Fjumpsuitai.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fjumpsuitai-llms-txt.1.1.4.zip",{"slug":110,"name":111,"version":112,"author":113,"author_profile":114,"description":115,"short_description":116,"active_installs":117,"downloaded":118,"rating":11,"num_ratings":11,"last_updated":119,"tested_up_to":14,"requires_at_least":120,"requires_php":50,"tags":121,"homepage":56,"download_link":124,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"markdown-for-ai-agents","Markdown for AI Agents","1.0.0","Selvakumar Duraipandian","https:\u002F\u002Fprofiles.wordpress.org\u002Fselvasudar\u002F","\u003Cp>Markdown for AI Agents is a lightweight WordPress plugin that enables HTTP content negotiation for your site’s content. When a client (like an AI agent or a custom script) requests a page with the \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode> header, the plugin intercepts the request and returns a clean, structured Markdown representation of the post or page content.\u003C\u002Fp>\n\u003Cp>This is ideal for AI crawlers, RAG (Retrieval-Augmented Generation) systems, and non-browser clients that prefer machine-friendly text over complex HTML.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Important note:\u003C\u002Fstrong> This plugin is primarily a developer\u002Fintegration tool. Human visitors browsing your site will never see any difference — the Markdown output is only served when explicitly requested via the \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode> HTTP header. Normal browser requests always receive the standard HTML page.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Automatically detects \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode> headers.\u003C\u002Fli>\n\u003Cli>Converts HTML content to clean Markdown using the League HTMLToMarkdown library.\u003C\u002Fli>\n\u003Cli>Strips away theme layout, navigation, headers, footers, and sidebars — serving only the main content.\u003C\u002Fli>\n\u003Cli>Adds useful HTTP response headers: \u003Ccode>Content-Type: text\u002Fmarkdown\u003C\u002Fcode>, \u003Ccode>Vary: Accept\u003C\u002Fcode>, and \u003Ccode>X-Markdown-Word-Count\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Respects WordPress visibility rules and filters.\u003C\u002Fli>\n\u003Cli>No configuration required — works out of the box for posts, pages, and custom post types.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How It Works\u003C\u002Fh3>\n\u003Cp>This plugin uses a standard web technique called \u003Cstrong>HTTP content negotiation\u003C\u002Fstrong>. The same URL on your site can serve different representations of the same content depending on what the client asks for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>A regular browser sends \u003Ccode>Accept: text\u002Fhtml\u003C\u002Fcode> \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> receives your normal HTML page.\u003C\u002Fli>\n\u003Cli>An AI agent sends \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode> \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> receives a clean Markdown version of the same page.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>No extra URLs, no duplicate content, no configuration needed. The plugin hooks into WordPress’s \u003Ccode>template_redirect\u003C\u002Fcode> action, detects the \u003Ccode>Accept\u003C\u002Fcode> header, captures the rendered HTML, converts it to Markdown, and returns it with appropriate headers.\u003C\u002Fp>\n\u003Ch3>Why Markdown for AI Agents?\u003C\u002Fh3>\n\u003Cp>When building RAG (Retrieval-Augmented Generation) applications or AI pipelines that ingest web content, HTML is extremely noisy. A typical WordPress page contains thousands of tokens worth of HTML tags, inline styles, navigation menus, scripts, and layout markup — none of which carries meaning for an AI model.\u003C\u002Fp>\n\u003Cp>Serving clean Markdown instead can reduce token consumption by up to 60%, which means:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Lower API costs\u003C\u002Fstrong> — fewer tokens ingested when loading pages into vector stores or LLM pipelines.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Faster processing\u003C\u002Fstrong> — less text for the model to parse, filter, and discard.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Better retrieval accuracy\u003C\u002Fstrong> — higher signal-to-noise ratio improves the quality of RAG results.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Simpler pipelines\u003C\u002Fstrong> — no need for custom HTML stripping logic on the client side; the plugin handles it server-side.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Any AI agent, crawler, or ingestion script that sends \u003Ccode>Accept: text\u002Fmarkdown\u003C\u002Fcode> in its request header will automatically receive the clean Markdown version — no extra URLs, no separate endpoints, no changes to your content workflow.\u003C\u002Fp>\n","Serve clean Markdown versions of WordPress content to AI agents using HTTP content negotiation.",10,142,"2026-03-09T01:32:00.000Z","6.9",[18,19,122,21,123],"llm","rag","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmarkdown-for-ai-agents.1.0.0.zip",{"attackSurface":126,"codeSignals":182,"taintFlows":204,"riskAssessment":232,"analyzedAt":235},{"hooks":127,"ajaxHandlers":178,"restRoutes":179,"shortcodes":180,"cronEvents":181,"entryPointCount":11,"unprotectedCount":11},[128,134,138,142,146,152,155,158,161,165,168,171,173],{"type":129,"name":130,"callback":131,"file":132,"line":133},"action","admin_menu","add_settings_menu","includes\\class-serve-md-admin.php",24,{"type":129,"name":135,"callback":136,"file":132,"line":137},"admin_init","register_settings",25,{"type":129,"name":139,"callback":140,"file":132,"line":141},"admin_enqueue_scripts","enqueue_admin_assets",26,{"type":129,"name":143,"callback":144,"file":132,"line":145},"admin_post_serve_md_clear_log","handle_clear_log",27,{"type":147,"name":148,"callback":149,"file":150,"line":151},"filter","query_vars","register_query_vars","includes\\class-serve-md-core.php",23,{"type":147,"name":153,"callback":154,"file":150,"line":133},"request","resolve_md_url",{"type":129,"name":156,"callback":157,"priority":31,"file":150,"line":137},"template_redirect","handle_markdown_request",{"type":129,"name":159,"callback":160,"file":150,"line":141},"wp_head","add_markdown_discovery_link",{"type":129,"name":162,"callback":163,"file":164,"line":151},"add_meta_boxes","register_meta_box","includes\\class-serve-md-metabox.php",{"type":129,"name":166,"callback":167,"priority":117,"file":164,"line":133},"save_post","save_meta",{"type":147,"name":169,"callback":170,"priority":117,"file":164,"line":137},"post_row_actions","add_markdown_row_action",{"type":147,"name":172,"callback":170,"priority":117,"file":164,"line":141},"page_row_actions",{"type":129,"name":174,"callback":175,"file":176,"line":177},"plugins_loaded","instance","serve-markdown.php",33,[],[],[],[],{"dangerousFunctions":183,"sqlUsage":184,"outputEscaping":197,"fileOperations":11,"externalRequests":11,"nonceChecks":59,"capabilityChecks":71,"bundledLibraries":203},[],{"prepared":133,"raw":185,"locations":186},4,[187,191,193,196],{"file":188,"line":189,"context":190},"includes\\class-serve-md-logger.php",62,"$wpdb->query() with variable interpolation",{"file":188,"line":192,"context":190},173,{"file":194,"line":195,"context":190},"uninstall.php",21,{"file":194,"line":145,"context":190},{"escaped":198,"rawEcho":31,"locations":199},89,[200],{"file":150,"line":201,"context":202},146,"raw output",[],[205,224],{"entryPoint":206,"graph":207,"unsanitizedCount":11,"severity":223},"render_log_tab (includes\\class-serve-md-admin.php:395)",{"nodes":208,"edges":220},[209,214],{"id":210,"type":211,"label":212,"file":132,"line":213},"n0","source","$_GET",399,{"id":215,"type":216,"label":217,"file":132,"line":218,"wp_function":219},"n1","sink","echo() [XSS]",492,"echo",[221],{"from":210,"to":215,"sanitized":222},true,"low",{"entryPoint":225,"graph":226,"unsanitizedCount":11,"severity":223},"\u003Cclass-serve-md-admin> (includes\\class-serve-md-admin.php:0)",{"nodes":227,"edges":230},[228,229],{"id":210,"type":211,"label":212,"file":132,"line":213},{"id":215,"type":216,"label":217,"file":132,"line":218,"wp_function":219},[231],{"from":210,"to":215,"sanitized":222},{"summary":233,"deductions":234},"The 'serve-md' plugin v1.0 demonstrates a strong security posture based on the provided static analysis and vulnerability history. The complete absence of unprotected entry points (AJAX handlers, REST API routes, shortcodes, cron events) and the minimal number of flows analyzed in taint analysis indicate a small and well-controlled attack surface. Furthermore, the code exhibits good practices with a high percentage of SQL queries using prepared statements and nearly all output properly escaped. The presence of nonce and capability checks, even with a limited number of entry points, is a positive sign of security awareness.\n\nWhile the static analysis reveals no immediate critical or high-severity issues, the data does not suggest any significant concerns. The plugin has no recorded vulnerabilities or CVEs, which is a very positive indicator of its stability and security over time. The lack of dangerous functions and file operations further strengthens its security profile.\n\nIn conclusion, 'serve-md' v1.0 appears to be a securely developed plugin. Its strengths lie in its minimal attack surface, robust use of prepared statements and output escaping, and a clean vulnerability history. There are no apparent weaknesses or specific risks identified in the provided data that would warrant significant deductions. The plugin is likely to be a low-risk addition to a WordPress site.",[],"2026-03-17T06:47:06.667Z",{"wat":237,"direct":243},{"assetPaths":238,"generatorPatterns":240,"scriptPaths":241,"versionParams":242},[239],"\u002Fwp-content\u002Fplugins\u002Fserve-md\u002Fassets\u002Fadmin.css",[],[],[],{"cssClasses":244,"htmlComments":247,"htmlAttributes":248,"restEndpoints":249,"jsGlobals":250,"shortcodeOutput":251},[245,246],"serve-md-wrap","serve-md-tabs",[],[],[],[],[]]