惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Schneier on Security
F
Fortinet All Blogs
博客园_首页
The GitHub Blog
The GitHub Blog
V
Visual Studio Blog
D
DataBreaches.Net
aimingoo的专栏
aimingoo的专栏
爱范儿
爱范儿
B
Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
N
Netflix TechBlog - Medium
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
D
Docker
Engineering at Meta
Engineering at Meta
大猫的无限游戏
大猫的无限游戏
The Cloudflare Blog
罗磊的独立博客
云风的 BLOG
云风的 BLOG
Microsoft Azure Blog
Microsoft Azure Blog
T
The Exploit Database - CXSecurity.com
博客园 - 三生石上(FineUI控件)
量子位
The Last Watchdog
The Last Watchdog
MyScale Blog
MyScale Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
The Blog of Author Tim Ferriss
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
小众软件
小众软件
Cloudbric
Cloudbric
博客园 - 司徒正美
H
Help Net Security
人人都是产品经理
人人都是产品经理
Application and Cybersecurity Blog
Application and Cybersecurity Blog
L
LangChain Blog
Latest news
Latest news
M
MIT News - Artificial intelligence
T
Threat Research - Cisco Blogs
博客园 - Franky
S
Security Affairs
W
WeLiveSecurity
F
Full Disclosure
Know Your Adversary
Know Your Adversary
Google DeepMind News
Google DeepMind News
The Hacker News
The Hacker News
Cyberwarzone
Cyberwarzone
美团技术团队
PCI Perspectives
PCI Perspectives
C
Check Point Blog
Spread Privacy
Spread Privacy

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python) The Hidden Cost of AI Systems Nobody Talks About. undefined vs undeclared, and how typeof behaves Switching from file-based jobs to NATS/Kafka in Rust without changing code io_uring Adventures: Rust Servers That Love Syscalls Why Agentic AI is Killing the Traditional Database The POUR principles of web accessibility for developers and designers Quantum Neural Network 3D — A Deep Dive into Interactive WebGL Visualization How To Install Caveman In Codex On macOS And Windows Automation Pipeline Reliability: Why Your Workflow Breaks When Nobody Is Watching I Built an 'Open World' AI Coding Agent — It Works From ANY Folder From Freelancing to Product: A Tech Service Company's SaaS Transformation China's AI Giants: Adding Tencent Hunyuan & ByteDance Doubao to AI University (74 Providers) On the Vibe Coders and Their Lies clerk: Auto-Summarize Your Claude Code Sessions AI Weekly — 2026/04/10–04/17 | The Model Lockdown Is Here, but the Toolchain Is the Real Battleground AI 週報 — 2026/04/10–2026/04/17 模型封鎖潮來了,但工具鏈才是真戰場 Maybe this is how Open-Source apps are born... 🚀 Fine-Tune LLMs with LoRA and QLoRA: 2026 Guide tRPC v11 + Next.js App Router: End-to-End Type Safety Without the Boilerplate ShadCN UI in 2026: Why I Stopped Installing Component Libraries and Started Owning My Components SaaS Billing in React Server Components: Stripe + Supabase Without a Single `useEffect` Join our DEV Weekend Challenge — $1,000 in Prizes Across TEN winners! Submissions Due April 20 at 6:59 AM UTC. Implementing FSRS Spaced Repetition in Flutter + Supabase — Adding Memory Science to an AI Learning App "I Texted My Localhost From the Train — Claude Code Fixed the Bug Before I Got Home" I Built a Sales Prep AI and It Went Deeper Than Expected Design to Code #2: One JSON, Eleven Outputs Solving the 100M-Row Problem: A Summary Table Pattern for High-Volume Push Notification Logs Flutter Web With Wasm: What Actually Changes For Developers I Built 50 Royalty-Free Soundtracks for My Side Project in a Weekend Using AI Music Generation The Vibe Coding Security Checklist: 7 Things to Check Before You Ship Stop Letting Googlebot Guess Fix Your React App's SEO Right Desconstruindo o Streaming do LinkedIn: Como Criar um Engine de Extração de Vídeo de Alta Performance com HLS e FFmpeg (EDA Part-1) EDA (Exploratory Data Analysis) Explained With Real Life — Why Looking at Your Data Is the Most Important Step in Machine Learning Brand Relationship Management at Scale: Our 4-Touch Outreach System for 200+ Brands Why String.fromEnvironment() Might Return an Empty String in Dart JGuardrails 1.0.0 — Hardening Java LLM Apps Against Jailbreaks, Toxicity, and Prompt Injection Plan and Schedule a Full Week of Threads Content From One Claude Conversation Coding Cat Oran Ep3, Five Tables Changed Everything Updated: BFF Pattern I'm done watching freelancers get buried by 200 proposals. So I'm building the alternative. This is my first post BFS Algorithm in Java Step by Step Tutorial with Examples Tracking LLM Pricing Monthly: An Open Dataset for 22 AI Models How We Measure Content ROI on a Comparison Site: Revenue Attribution Without Perfect Data Introducing Nova AI Ops: The AI-Native Operating System for SRE Teams I built a free desktop video downloader for Windows — Grabbit How Talkie OCR Helps Vision-Impaired & Dyslexic Users Read the World Around Them VRCFaceTracking安装和iPhone面捕配置教程,有bug Even CrowdStrike Can't See Your Agents The Automation Gold Rush: What n8n Workflows and Claude Are Opening Up for Developers Right Now
llms.txt for AI Discoverability: Should You Add It?
Iurii Rogulia · 2026-06-19 · via DEV Community

You put a robots.txt on your site to tell search crawlers what to ignore. You add a sitemap.xml to help them find everything. These standards work because crawlers visit your site repeatedly — on a schedule, automatically, indefinitely. Instructions you leave in files become part of an ongoing conversation between your server and the crawler.

llms.txt doesn't work like that. That's the thing most articles about it miss, and it's the reason the standard is simultaneously more limited and more interesting than it sounds.

What llms.txt Is

llms.txt is a proposed standard — not officially adopted by any major AI provider — created by Jeremy Howard from Answer.AI. The idea: place a Markdown file at your domain root (yourdomain.com/llms.txt) that describes your site and lists your important pages with brief descriptions. Clean, human-readable, structured for AI consumption rather than HTML parsing.

A minimal example:

# Iurii Rogulia — IT Partner for Business

> Senior developer helping businesses build MVPs, integrate APIs,
> and escape broken projects. Based in Finland, working across Europe.

## Services

- [MVP Development](https://iurii.rogulia.fi/services/mvp-development): End-to-end MVP builds in 6–12 weeks
- [API Integrations](https://iurii.rogulia.fi/services/api-integrations): Connecting third-party services and internal systems
- [Fractional CTO](https://iurii.rogulia.fi/services/fractional-cto): Technical leadership without a full-time hire

## Blog

- [Blog](https://iurii.rogulia.fi/blog): Technical articles on Next.js, Node.js, automation, and architecture

## Contact

- [Contact](https://iurii.rogulia.fi/contact): Project inquiries

The format is intentionally minimal. No schema.org, no JSON-LD, no semantic HTML — just structured Markdown that describes who you are and what matters on your site.

How AI Systems Actually Interact with Your Site

Here's what changes how you should think about llms.txt: AI systems interact with your site in three distinct ways, and llms.txt is potentially relevant to all of them.

Googlebot visits your site on a schedule. It reads robots.txt on every visit. Instructions you add today take effect from today's crawl. The relationship is continuous and ongoing.

Base model training works differently. A training crawl happens at a specific point in time, data is collected, the model is trained. After that — the base model doesn't come back. What it knows about your site is frozen from whenever that crawl happened, and it stays frozen until the next training run, which might be six months or two years later. A file present on your domain at crawl time may be included in training corpora — if it's downloaded, retained, and not filtered out. None of that is guaranteed, but the file costs you nothing to place.

Runtime AI systems are a separate layer. Perplexity, Bing Copilot, and similar systems retrieve web content during inference — they're not frozen snapshots. In practice this often means search API snippets and cached content rather than a full site crawl, but the direction of travel is toward richer context retrieval. If they eventually start parsing llms.txt (none currently does by default), having a structured description means your site context is immediately legible without parsing navigation, sidebars, and boilerplate.

There's also a third category: AI agents — autonomous systems that browse sites to complete tasks. These are crawlers by design, and structured context files are exactly the kind of signal they're built to consume. Of the three scenarios, agents are the most plausible near-term use case for llms.txt; the training data angle is more speculative.

The practical implication: llms.txt could be useful across all three access patterns. None is guaranteed. That's fine — the cost of placing the file is low enough that you don't need high confidence to justify it.

What the Data Actually Shows

The honest numbers first. In one 30-day log analysis of roughly 1,000 domains, GPTBot (OpenAI), ClaudeBot (Anthropic), and PerplexityBot registered zero requests specifically for llms.txt. No major AI provider has officially announced support for the standard. A Google engineer publicly compared it to the meta keywords tag — a standard once considered essential, now completely ignored by every major search engine.

The spec has no RFC. No formal adoption process. It's a community proposal that gained momentum because it arrived at the right moment — when everyone is rethinking AI visibility — not because there's a concrete implementation roadmap with committed parties.

This is the part that most llms.txt evangelism skips. Current support is essentially zero.

Why You Should Add It Anyway

The argument for adding llms.txt isn't that it works today. It's about asymmetric cost and benefit:

The effort is fifteen minutes. Create a Markdown file, write a clear description of your site, list your important pages. Done. No server configuration, no deployment scripts, no ongoing maintenance. You write it once.

The downside is minimal. A public Markdown file is unlikely to harm performance, crawl budget, Core Web Vitals, or existing SEO signals. The main risk is publishing inaccurate, overpromising, or strategically sensitive information — which is a content problem, not a format problem.

The upside could be years of compounding benefit. If any major AI provider adopts the standard and begins parsing llms.txt during training crawls, your structured description is already there — placed years before your competitors thought to add it. If AI-powered web agents (which do crawl sites actively, not just at training time) start reading it for context, you're already covered.

Some optional standards eventually matter — but only after platforms commit to them. Canonical tags had Google's explicit support from day one. JSON-LD got traction because search engines documented exactly how they used it. llms.txt has no committed consumer yet. The analogy is aspirational, not predictive.

What it does share with those standards: low cost of early adoption. The question isn't whether llms.txt will succeed — it's whether the cost of betting on it justifies the potential upside. Low probability. High upside if it lands. Near-zero cost regardless.

How to Create One

In Next.js, create public/llms.txt — it's automatically served at /llms.txt:

# Site or Person Name

> One sentence: what you do and who you serve.

## Core Pages

- [Page Title](https://iurii.rogulia.fi/path): What this page is for
- [Page Title](https://iurii.rogulia.fi/path): What this page is for

## Key Content

- [Section](https://iurii.rogulia.fi/path): What readers find here

## Contact

- [Contact](https://iurii.rogulia.fi/contact): How to reach you

Guidelines that actually matter:

  • One sentence per link. Describe the page's purpose, not its title. "End-to-end MVP builds with fixed scope and timeline" is more useful to an AI than "MVP Development."
  • List pages that define what you do, not every URL. Skip paginated archives, tag indexes, and boilerplate.
  • Write for the version of your site that's true for the next 12–24 months. For base model training, accuracy at crawl time matters more than frequent updates — models won't re-read it until the next cycle. For live systems, stability beats churn.
  • Update it when your core offering changes, not when you publish a new post.

An extended variant, llms-full.txt, can contain your full documentation or page content as raw text — for AI systems that want complete context rather than a structured index. Link to it from llms.txt if you create it:

# Site Name

> Description.

## Full Content

- [Complete site content](https://iurii.rogulia.fi/llms-full.txt): Full text of all pages for AI systems

## Key Pages

- ...

Verify it's accessible after deploying:

curl -I https://yourdomain.com/llms.txt
# Expect: HTTP/2 200, Content-Type: text/plain

slug="seo-audit"
text="Want a review of your structured data, llms.txt, robots.txt, and AI discoverability setup? Fixed-fee Technical SEO Audit — schema, sitemap, hreflang, indexing, Core Web Vitals, broken links, and per-market keyword research. Written report in 5 working days."
/>

What Actually Works for AI Visibility Today

Since llms.txt support is minimal right now, be clear about what genuinely affects how AI systems represent your site:

  • Schema.org JSON-LD — one of the most widely supported structured signals in traditional search; AI systems may benefit from it indirectly via search indexes and retrieval pipelines, but it should not be treated as a guaranteed AI visibility signal
  • Clean semantic HTML<article>, <section>, proper heading hierarchy makes content parseable without JS execution
  • Content that directly answers specific questions — AI surfaces answers, not just links; paragraph-level relevance matters
  • robots.txt AI directives — blocking GPTBot or ClaudeBot is respected today; check your existing robots.txt

One more honest note: modern AI systems already extract structure from HTML reasonably well. <article>, <h1>, <nav> — these give models enough signal to understand what a page is about without a dedicated hints file. llms.txt is an optimization for cases where clean structure matters and parsing overhead is worth reducing. It's not a necessity, and it won't compensate for thin content or missing structured data.

llms.txt complements the list above. It doesn't replace any of it, and it belongs last in the priority order — not first.

The Honest Summary

No confirmed adoption from major AI providers. Zero observed crawl requests in real data. A Google engineer dismissed it. No formal backing.

Add it anyway. Fifteen minutes, zero ongoing cost, low probability of payoff, high upside if it lands. That math works even with pessimistic assumptions.

The deeper point is about how AI and search crawlers differ. robots.txt is an ongoing instruction to a system that visits on a schedule. llms.txt spans three access patterns: base model training (snapshot, frozen until next cycle), live inference systems (Perplexity, Copilot, RAG pipelines), and autonomous agents that browse by design. It doesn't behave like robots.txt or sitemap.xml — it's a structured introduction that can be consumed once and relied on later, or referenced repeatedly by runtime systems. Write it accordingly: stable, accurate, and worth being "frozen in time" if a model or system sees it once and relies on it later.


If you're building technical infrastructure that needs to stay visible across both traditional search and emerging AI systems — structured data, semantic HTML, proper crawl architecture — that's part of the work I do on every project. I covered the server-side foundations in the pikkuna.fi build: 30 languages, correct canonical tags, and structured data that survives localization. For MVP development or a Technical SEO Audit of your discoverability stack — get in touch if you need a developer who builds this in by default rather than bolts it on at the end.


Further reading: