llms.txt とは:書き方と検証方法を解説
llms.txt は、サイトが何であり、どのページが重要かを言語モデルに伝える短い Markdown ファイルです。提案が定めるフォーマット、誰が読むのかについての現実的な見方、3種類のサイト向けの例、検証に失敗したファイルの修正手順を紹介します。
Searvia · 2026/10/24 · 読了目安:2分

要点: llms.txt は、
/llms.txtに置く Markdown ファイルとして提案されているもので、言語モデルにサイトの簡単な地図を渡します。# サイト名のタイトル(唯一の必須要素)、>引用ブロックによる任意の一行要約、そして最も役立つページを Markdown リンクで並べた##セクションで構成されます。クロールを制御するものではなく、Google のランキングシグナルでもなく、主要な AI クローラーが読み取りを公式に説明しているわけでもありません。それでも公開コストは低く、サイトを指定されたツールやエージェントには役立ちます。10分で書き、ステータス 200 のプレーンテキストとして配信し、検証しましょう。
これほど注目を集めながら、効果がほとんど確認されていない Web ファイルは珍しいでしょう。プラグインはワンクリックで llms.txt を追加し、「ChatGPT に載せる」と約束するガイドもあり、何を書くべきか分からないまま公開しているサイト運営者も多くいます。本ガイドでは、提案が定義している内容、AI 各社が述べていること・述べていないこと、そして正しく実用的なファイルの書き方に絞って解説します。無料の llms.txt チェッカー が何を検証するのか、報告された各問題をどう直すのかも説明します。
llms.txt とは
llms.txt の提案は、Jeremy Howard 氏が 2024年9月3日に公開しました。提案自身は「エージェントがウェブサイトを利用する際に役立つ情報を提供するため、/llms.txt ファイルの利用を標準化する提案」と説明しており、ページには現在バージョン2で、コミュニティからの意見を受け付けていると記されています。
発想はこうです。HTML ページにはナビゲーションやスクリプト、レイアウトが多く含まれ、モデルの限られたコンテキストを無駄にします。人が書いた短い Markdown ファイルなら、サイトが何であり、役立つコンテンツがどこにあるかをモデルに伝えられます。提案によると、llms.txt は「主にトレーニングではなく推論時に役立つ」ものです。つまり、モデルやエージェントが質問に答えるために、サイトをリアルタイムで読む場面を想定しています。
フォーマットをセクションごとに見る
提案では、セクションの順序が固定されています。
| 順序 | セクション | 必須 | 内容 |
|---|---|---|---|
| 1 | H1(# 名前) | はい。唯一の必須セクション | サイトまたはプロジェクトの名前 |
| 2 | 引用ブロック(> ...) | いいえ | 重要な情報をまとめた短い要約 |
| 3 | 自由記述 | いいえ | 詳細を述べる段落やリスト。見出しは不可 |
| 4 | H2 セクション(## Docs) | いいえ | 「ファイルリスト」:主要ページへの Markdown リンク |
| 5 | ## Optional | いいえ | コンテキストが足りないときにツールが省略できる二次的なリンク |
ファイルリストの各項目は Markdown のリスト項目で、リンク [名前](url) は必須です。その後ろにコロンとページの補足を続けることもできます。提案では、個別ページの Markdown 版を、同じ URL の末尾に .md を付けて(例:page.html.md)、または拡張子を置き換えて(page.md)提供することも勧めています。
ファイルは通常サイトのルートに置きますが、提案では任意のパスに置くことも認められており、そのパス配下のページを対象とします。/docs/ 配下にあるドキュメントに適した方法です。たとえば Next.js のドキュメントは、/docs/llms.txt のインデックスを案内しています。
llms.txt ではないもの
- アクセス制御ではありません。 RFC 9309 で定義された robots.txt は、クローラーが取得してよいものを示します。llms.txt は何も許可も禁止もしません。提案自身も、両者は「目的が異なる」とし、llms.txt は robots.txt を補完しうると述べています。
- サイトマップではありません。 サイトマップは、検索エンジン向けにインデックス可能なすべての URL を列挙します。llms.txt は、厳選した少数のページを文脈付きで示します。提案は、サイトマップは llms.txt の「代わりにはならない」としています。
- Google の要件ではありません。 Google の AI 機能に関するガイダンスには、「これらの機能に表示されるために、新しい機械可読ファイルや AI 向けテキストファイル、マークアップを作成する必要はありません」とあります。
- 主要な AI クローラーのドキュメントには記載がありません。 OpenAI、Anthropic、Perplexity のクローラー関連ドキュメントは、robots.txt のトークンや IP レンジを説明していますが、2026年10月時点で、これらのページに llms.txt への言及はありません。
それでも公開する理由
誇張なしに成り立つ理由は3つあります。
- サイトを指定されたとき、エージェントやコーディングアシスタントが読みます。 開発者があなたのドキュメント URL をアシスタントに貼り付けた場合、Markdown リンクの整ったインデックスは、レンダリングされたナビゲーションより扱いやすいものです。ドキュメントプラットフォームが最初に採用したのもこのためで、llmstxt.org には Mintlify、GitBook、Yoast SEO、AIOSEO、Wix などのジェネレーターが掲載されています。
- 有益な編集作業になります。 事業内容を一文で書き、重要な10ページを選ぶ作業は、トップページを人にも、AI の回答に実際に情報を提供する検索クローラーにも分かりやすくする作業と同じです。
- ほとんどコストがかかりません。 静的ファイルであり、リンクを最新に保つ以外に継続的なメンテナンスは不要です。
ただし、AI クローラーが到達できないサイトを直すことはできません。OAI-SearchBot がファイアウォールで 403 を受け取るなら、テキストファイルでは何も変わりません。まず AI クローラーチェッカー でアクセスを確認し、詳細は AI クローラーガイド をご覧ください。
そのまま使える llms.txt の例
ソフトウェア製品
# Tallyboard
> Tallyboard is time tracking and invoicing software for agencies of 5 to 200 people. Plans start at $12 per user per month; a 14-day trial needs no card.
Tallyboard runs in the browser and on iOS and Android, and integrates with QuickBooks, Xero and Slack.
## Product
- [Features](https://www.example.com/features): timers, timesheets, approvals, invoicing
- [Pricing](https://www.example.com/pricing): plans, limits and annual discount
- [Integrations](https://www.example.com/integrations): QuickBooks, Xero, Slack, Jira
## Help
- [Getting started](https://www.example.com/help/getting-started): set up a workspace in 10 minutes
- [API reference](https://www.example.com/docs/api.md): REST API, authentication and rate limits
## Optional
- [Changelog](https://www.example.com/changelog)
- [Company](https://www.example.com/about)
地域のお店
# North Street Bakery
> Family bakery in Springfield, Illinois, baking sourdough, pastries and custom cakes since 2009. Open Monday to Saturday.
## Visit
- [Location and hours](https://www.example.com/visit): 120 North Street, opening hours, parking
- [Contact](https://www.example.com/contact): phone, email and order form
## Order
- [Custom cakes](https://www.example.com/cakes): flavors, sizes, prices and lead time
- [Catering](https://www.example.com/catering): office breakfast boxes
ドキュメントサイト
# Lumen SDK
> Lumen is an open-source JavaScript SDK for building offline-first apps. MIT license.
## Docs
- [Quick start](https://docs.example.com/quick-start.md): install and first sync in five minutes
- [Configuration](https://docs.example.com/config.md): every option with defaults
- [Conflict resolution](https://docs.example.com/conflicts.md): how merges work
## Examples
- [Todo app](https://docs.example.com/examples/todo.md)
## Optional
- [Architecture notes](https://docs.example.com/internals.md)
実用的なファイルにするためのルール:要約は事実(何を、誰向けに、どこで、いくらで)として書く。200 を返す正規ページの絶対 URL を使う。補足は短くする。Markdown 版があればそちらにリンクする。
Searvia の llms.txt チェッカーの仕組み
llms.txt チェッカー は、ウェブサイト SEO チェッカー と同じエンジンで動作します。ドメインまたはページのアドレスを入力すると、そのページ(ドメインのみの場合はトップページ)と周辺のサイトファイルを読み込み、約20秒で38項目のチェックを実行し、このツールの主題である3つのチェックを先頭に表示します。それぞれの内容は次のとおりです。
llms.txt ファイル(優先度:低)。 チェッカーはページの最終アドレスまで追跡し、そのホストの /llms.txt をリダイレクトも含めてリクエストします。次の条件をすべて満たす場合にのみ、ファイルが存在するとみなします。
- ステータス 200 で応答する
- HTML ページではない(
text/htmlの Content-Type、または<!doctypeや<html>で始まる本文は、サーバーが Web ページ、多くは「見つかりません」ページやトップページを返したことを意味します) - 空ではない
ファイルの先頭が、任意のバイトオーダーマーク(BOM)と先頭の空白を除いて # で始まっていれば、チェックに合格します。これは提案が必須とする H1 です。レポートでは [text](url) 形式の Markdown リンクの数も数えます。llms.txt は任意のため、ファイルがない場合やタイトルがない場合は、失敗ではなく警告になります。
チェッカーは、引用ブロック、セクションの順序、リンク先ページの存在は検証せず、ホストのルートだけを見て /docs/llms.txt は見ません。llms-full.txt も探しません。
AI クローラーのアクセス(優先度:高)。 同じレポートでは、robots.txt が 10 種類の AI・検索クローラーと 2 つの AI トレーニングオプトアウトトークンによるページ取得を許可しているか、またファイアウォールが GPTBot を名乗るリクエストを拒否していないかを示します(リクエストが OpenAI のアドレスから来ていないため、証明ではなく警告です)。クローラーが到達できない llms.txt は意味がないため、このツールの重点項目に入っています。
XML サイトマップ(優先度:中)。 チェッカーは robots.txt の Sitemap: 行、次に /sitemap.xml と /sitemap_index.xml を、最大4つのアドレスまで試します。<urlset> または <sitemapindex> をルートとして 200 で応答した最初のものに合格を付け、見つかった <loc> エントリ数を報告します。サイトマップと llms.txt は役割が異なり、両方が必要です。
A+ から F までの総合グレードは、優先度で重み付けした38項目すべてが対象で、レポートはリンクで共有できます。
結果の読み方
| メッセージ | 意味 | 対処 |
|---|---|---|
| llms.txt is present with N links. | 見つかり、テキストとして配信され、H1 で始まっている | 内容とリンク数を見直す |
| llms.txt exists but does not start with a "# " title. | 見つかり正しく配信されているが、1行目が H1 ではない | 下記のステップ2 |
| No llms.txt file was found. | 404、エラー、空ファイル、またはそのアドレスで HTML ページが返されている | 下記のステップ1またはステップ3 |
リンク数0で合格した場合は、タイトルはあるものの Markdown リンクがなく、ツールがたどるものがありません。リンク数300で合格した場合は、サイトマップを貼り付けてしまったということなので、重要なページだけに絞り込みましょう。
llms.txt のあらゆる問題の直し方
1. No llms.txt file was found
- 上の例のいずれかを使ってファイルを書きます。UTF-8 のプレーンテキストで、名前は小文字の
llms.txtちょうどで保存します。 - サーバーがサイトのルートとして配信する場所に置きます。
- 静的サイトとほとんどのフレームワーク:
public/またはstatic/フォルダ(Next.js、Vite、Astro、Nuxt、Hugo はいずれもこのフォルダをルートで配信します)。 - WordPress: Yoast SEO や AIOSEO でファイルを生成できます。そうでなければ、
wp-config.phpと同じ WordPress のルートフォルダにアップロードします。 - Shopify: ルートにファイルをアップロードできないため、アプリを使うか、ファイルを Files にアップロードして
/llms.txtからそこへの URL リダイレクトを作成します。チェッカーはリダイレクトを追跡するため、転送先がテキストとして配信されていれば機能します。 - Wix: llmstxt.org は Wix をこのファイルに対応するプラットフォームとして挙げています。サイトの SEO 設定を確認してください。
- 静的サイトとほとんどのフレームワーク:
- プライベートウィンドウで
https://yourdomain.com/llms.txtを開き、Web サイトではなく生の Markdown が表示されることを確認します。 - llms.txt チェッカー を再実行します。
2. llms.txt exists but does not start with a "# " title
空白以外の最初の文字は、# とそれに続く半角スペースでなければなりません。よくある原因は次のとおりです。
- ファイルが要約や空のリストで始まっている。1行目に
# サイト名を追加します。 - 見出しが、スペースなしの
#Nameや、Nameの下に===を付けた形になっている。# Nameを使います。 - ファイルの先頭に見えないバイトオーダーマーク(BOM)がある。当チェッカーは無視しますが、他のパーサーでは
#が先頭の文字として認識されないことがあります。念のため、エディターで「BOM なし UTF-8」として保存してください。 - プラグインがタイトルの上にコメントや「生成元」の行を追加している。タイトルの下に移すか、削除します。
3. アドレスがファイルではなく Web ページを返している
ファイルをアップロードしたのにチェッカーがまだ「見つからない」と言う場合は、ヘッダーを確認します。
curl -I https://yourdomain.com/llms.txt
- ステータス 200 で
Content-Type: text/html: アプリのキャッチオールルートが、未知の URL すべてにトップページ、またはステータス 200 の「見つかりません」ページを返しています。アプリのルーティングより前にファイルを配信するか、静的ファイルハンドラーを設定してください。 - ステータス 404: サーバーが探す場所にファイルがありません。フォルダとファイル名を確認します。
- ステータス 301 または 302 でトップページへ: リダイレクトルールが未知のパスを捕捉しています。例外を追加します。
- ステータス 403: セキュリティルールが
.txtファイルや未知のパスをブロックしています。/llms.txtを許可します。
そのうえで、コンテンツタイプをプレーンテキストに設定します。Nginx の場合:
location = /llms.txt {
default_type text/plain;
charset utf-8;
}
Apache では、サイト設定または .htaccess に AddType text/plain .txt を記述すれば同じ結果になります。text/markdown でも問題なく、HTML 以外であれば合格します。
4. AI クローラーのアクセスが失敗する、またはサイトマップがない
これらは重要度が高いため、llms.txt のレポートに合わせて表示されます。robots.txt やファイアウォールで AI 検索クローラーがブロックされている場合は、まずそれを直してください。手順は AI クローラーガイド にあります。サイトマップが見つからなかった場合は、インデックス可能なページを載せたサイトマップを公開し、robots.txt に Sitemap: https://www.example.com/sitemap.xml のような行で記載し、Google Search Console と Bing Webmaster Tools に送信します。
最新の状態を保つ
リンク切れのある llms.txt は、ツールをエラーページへ誘導するため、ないより悪い結果になります。正確さを保つ習慣は3つあります。
- 可能ならデータから生成する。 ナビゲーションやドキュメントのインデックスからファイルを書き出すビルド工程があれば、内容がずれません。
- 料金、プラン、製品ラインが変わったら見直す。 要約の行は最も古くなりやすい部分です。
- 正規ページだけにリンクする。 リダイレクトされる URL、トラッキングパラメータ付き URL、noindex ページは避けます。
具体例(仮想)
以下は仮想の例であり、実際のデータではありません。架空のツアー会社 Fernway Travel が、llms.txt を生成するプラグインをインストールします。チェッカーは「No llms.txt file was found.」と表示します。curl -I ではステータス 200 と Content-Type: text/html が返り、サイトのキャッシュ層が新しいアドレスにキャッシュ済みのトップページを返していたことが分かります。キャッシュを削除するとファイルが表示されますが、今度はチェッカーが「exists but does not start with a "# " title」と表示します。プラグインが先頭にコメント行を書き込んでいたためです。チームはプラグインを手動モードに切り替え、ファイルを手で書きます。
# Fernway Travelに続き、要約として、ポルトガルとスペインの少人数ウォーキングツアー、参加者6〜12名、4月から10月まで、と記載します。## Toursに、8つのツアーページと、補足として所要日数と価格帯を記載します。## Plan your tripに、予約条件、含まれるもの、FAQ を記載します。## Optionalに、ブログと会社概要ページを記載します。
チェッカーは14リンクで合格します。同じレポートから、サイトマップが robots.txt に記載されていないことも分かり、チームは Sitemap: 行を追加します。
10分でできる llms.txt チェックリスト
- まず AI クローラーのアクセスを確認する。クローラーがブロックされていれば、llms.txt は役に立ちません。
# 名前、一行の事実ベースの要約、重要リンクの##セクションを2〜3個書く。- 200 を返す絶対 URL の正規ページを使う。
- ルートにアップロードし、プレーンテキストとして配信し、BOM なしで保存する。
- llms.txt チェッカー で検証する。
- 製品や料金が変わったら見直すよう、リマインダーを設定する。
Searvia でできること
無料の llms.txt チェッカー は、ファイルを AI クローラーのアクセスとサイトマップとあわせて、共有可能な1つのレポートで検証します。AI 検索対応チェッカー は同じエンジンで、アシスタントが必要とするすべて(クローラーのアクセス、JavaScript なしで読めるコンテンツ、アイデンティティのマークアップ、回答形式のコンテンツ、鮮度)に重点を置いて確認します。Searvia アカウント内では、AI ビジビリティが顧客の実際の質問を毎週 AI アシスタントに投げかけ、自社が言及・推奨・引用されているかを示します。Check access ボタンでは、AI ボットごとに robots.txt のルール、ファイアウォールのブロック、llms.txt をテストします。こうした取り組みが成果につながっているかを教えてくれるのは、この計測です。より広い戦略については、生成エンジン最適化(GEO)のガイドをご覧ください。
よくあるご質問
- llms.txt とは何ですか?
- llms.txt は、ウェブサイトのルート(/llms.txt)に置く Markdown ファイルとして提案されている標準で、言語モデルにサイトの短いガイドを提供します。構成は、サイト名を示す H1、引用ブロックによる任意の一行要約、そして最も役立つページへのリンクリストを並べた H2 セクションです。提案は Jeremy Howard 氏が 2024年9月3日に公開しました。主な用途は、モデルが質問に答えるときの利用であり、トレーニングではありません。
- llms.txt は SEO や AI での可視性に役立ちますか?
- Google については役立つという証拠はありません。Google は、AI による概要や AI モードに表示されるために、新しい機械可読ファイルや AI 向けテキストファイルを作成する必要はないとしています。OpenAI、Anthropic、Perplexity のクローラー関連ドキュメントにも llms.txt への言及はありません。それでも、ドキュメントを読むコーディングアシスタントなど、サイトを指定されたツールやエージェントには役立つ可能性があります。ランキングを上げる手段ではなく、10分で用意できる気配りのファイルと考えてください。
- llms.txt は robots.txt と同じものですか?
- いいえ。robots.txt は、クローラーが取得してよい URL を示すもので、ルールを守るクローラーはそれに従います。llms.txt は何も許可も拒否もせず、サイトを説明して主要ページへリンクする読み方のガイドです。提案は、両者の目的は異なり、llms.txt は許可されたコンテンツの文脈を示すことで robots.txt を補完しうるとしています。AI クローラーのブロックや許可は、robots.txt とファイアウォールで行います。
- llms-full.txt とは何ですか?
- llms-full.txt は、一部のドキュメントプラットフォームが、すべてのドキュメントページの全文を1つにまとめたファイルとして使っている慣習です。llmstxt.org の llms.txt 提案には含まれておらず、提案が定義するのは /llms.txt のみで、個別ページの URL に .md を付けた Markdown 版を提供することを勧めています。
- llms.txt ファイルはどう作りますか?
- llms.txt という名前のプレーンテキストファイルを作り、先頭を「# サイト名」で始めます。続いて「> 」の引用ブロックで一行要約を書き、「## Products」や「## Docs」などの H2 セクションに「- [ページ名](https://example.com/page): 短い補足」の形式で Markdown リンクを並べます。ドメインのルートにアップロードし、HTML ではなくテキストとしてステータス 200 で配信されることを確認し、チェッカーで検証してください。
ソース
- The /llms.txt file – llmstxt.org
- AI features and your website – Google Search Central
- Overview of OpenAI Crawlers – OpenAI
- Does Anthropic crawl data from the web, and how can site owners block the crawler? – Claude Help Center
- Perplexity Crawlers – Perplexity
- redirects – Next.js documentation
- RFC 9309: Robots Exclusion Protocol – IETF
- Build and submit a sitemap – Google Search Central