llms.txt ジェネレーター
LLM クローラー (ChatGPT / Claude / Gemini など) にサイト構造を伝える llms.txt を、入力フォームから生成。llmstxt.org 仕様準拠、サイトマップ XML からの一括取り込みも対応。
カテゴリ (H2 セクション)
sitemap.xml から一括取り込み
※ <loc> URL のみ抽出します。タイトルは URL の最後のセグメントから推測
llms.txt
⬇ llms.txt生成されたファイルをサイトのルートに置く: https://example.com/llms.txt
📖 つまずきやすいポイント
llmstxt.org が提唱する形式に沿って、サイトの内容を LLM 向けの Markdown 目次にまとめます。sitemap.xml からの一括取り込みにも対応しています。これは提案されている書式であって、W3C や IETF の標準ではありません — 置いたからといって、どのクローラーが読むかは誰も保証していません。効果を期待して作るものというより、「自分のサイトの中身を 1 枚で説明できる文書」を持っておく作業と考えるのが実態に近いです。
| ケース | 何が起きるか | どうする |
|---|---|---|
| sitemap から取り込んだらタイトルがスラッグのまま | sitemap.xml には <loc> つまり URL しか入っていないので、タイトルは URL の最後の区切りから機械的に推測するしかありません。/tools/cidr/ は cidr になります。ここで生まれるのが本質的な問題で、説明が無く URL の羅列になった llms.txt は、目次としてほとんど価値がありません — 読み手 (人でも LLM でも) が「どれを見ればいいか」を判断できないからです。それなら sitemap.xml をそのまま渡すのと変わりません。 |
各行に「そのページで何ができるか」を 1 文で書いてください — [CIDR 計算](/tools/cidr/): サブネットのホスト数とアドレス範囲を計算 のように、タイトルだけでは分からない情報を足すのがこの形式の要点です。そして全ページを載せる必要はありません。むしろ入り口になる 20〜50 本に絞ったほうが目次として機能します — 1,000 行のリストは読み手にとって「全部読め」と言われているのと同じで、優先順位の情報がゼロになるからです。載せる基準は「これを読めばサイトの守備範囲が分かる」かどうかです。 |
| 置いたのに読まれている気配が無い | まず効果が見えないのは普通です — llms.txt を読むかどうかはクローラー側の任意で、読んだことを知らせる仕組みもありません。ただしその前に、そもそも配信できていないケースがかなりあります。よくあるのは、SPA のフォールバックで /llms.txt にも index.html が返っている、CDN が拡張子 .txt を想定していなくて 404 になる、Content-Type が application/octet-stream になっていてダウンロード扱いされる、といったものです。ブラウザで開いて中身が見えたことと、クローラーが取得できることは別です。 |
curl -I https://example.com/llms.txt で確認してください — 200 であること、Content-Type が text/plain か text/markdown であること、この 2 点です。curl -s ... | head -5 で中身が HTML でないことも見てください (SPA のフォールバックはここで一発で分かります)。あわせて robots.txt でルート直下を広くブロックしていないかも確認します。ブラウザではキャッシュや Service Worker が挟まるので、判断は必ず curl で行ってください。 |
| robots.txt の代わりになると思っている | llms.txt はアクセス制御ではありません。「読んでほしいものを示す目録」であって、書かなかったページがブロックされるわけでも、書いたページの学習利用に同意したことになるわけでもありません。逆方向の誤解もよくあります — llms.txt を置いたから AI に読まれるようになった、あるいは置かないから読まれない、というどちらも成り立ちません。クローラーは従来どおり robots.txt と実際のリンク構造を見ています。 |
AI クローラーを制御したいなら robots.txt に書いてください — User-agent: GPTBot / ClaudeBot / PerplexityBot / Google-Extended といった名前で個別に指定できます。この 2 つは目的が完全に別なので、両方を置くのが正しい構成です (「クロールしてよい範囲」を robots.txt で、「その中で何を見てほしいか」を llms.txt で示す)。なお、ボット名は増え続けるので、書いた時点のリストは必ず古くなります — 定期的な見直しを前提にしてください。 |
llms.txt と llms-full.txt は別物です。前者は目次 (URL とその 1 行説明)、後者は各ページの本文まで含めた全文版で、規模によっては数 MB になります。まず作るべきは前者で、全文版は「本当に読み込ませたい技術ドキュメントがある」場合に限って検討してください。運用上いちばん現実的な問題は陳腐化です — 手で書いた目次は必ず腐り、リンク切れだらけの llms.txt は無いより悪い (読み手に間違った地図を渡すことになるため)。sitemap.xml から生成する処理を CI に入れ、説明文だけを人間が管理する形にしておくのが唯一続く運用です。あわせて、デプロイのたびにリンク切れを検査してください — 生成しているからといって正しいとは限らず、統合や削除をしたページはリンクだけが残ります。
📖 使い方
-
1
サイトメタを入力サイト名 (H1) と要旨を書く。長文説明は任意
-
2
カテゴリ・リンクを追加「Docs」「Examples」「Optional」など意味のある H2 グルーピング。各リンクは [Title](URL): description 形式
-
3
ダウンロードしてサイトルートに配置https://example.com/llms.txt が 200 で読めれば LLM クローラーが認識
❓ よくある質問
llms.txt とは?
llms-full.txt とどう違う?
robots.txt とは別?
🐛 このツールで問題が発生しましたか?
完全無料・登録不要。再現手順だけでも結構です。届いたご報告は運営者に直接届き、修正の参考にします。
ご報告ありがとうございます!
運営者に届きました。改善の参考にさせていただきます。