テック技報最新号へ →
AIコーディング

AI のクローラーには User-Agent を見て Markdown 版のページを返す

User-Agent が AI ボットなら index.html の代わりに index.md を返し、ページ内のリンクも .md に向ける。作者の観察では、狙いどおり .md をたどってクロールしていった。

@shimarin · 投稿 2026-04-26
#ai-coding#markdown#クローラー#aio#web

どんな問題を解決する?

  • HTML は装飾やスクリプトが多く、LLM が読むとトークンの無駄が多い
  • エージェントに自分のサイトやドキュメントを正確に読んでほしい(SEO ではなく、AI 向けの最適化)

やり方

  1. 各ページの Markdown 版を用意する(静的サイトなら元の Markdown をそのまま公開するのが簡単)
  2. Web サーバーかエッジ(Cloudflare Workers など)で User-Agent を判定し、AI ボットなら同じパスの .md を返す
  3. Markdown 内のリンクも .md 版に向けて、たどった先も Markdown になるようにする
  4. 人間向けには HTML を返し続ける
ts
// 例: Cloudflare Workers(静的アセット付き)のイメージ
const AI_BOTS = /GPTBot|ClaudeBot|PerplexityBot|Google-Extended/i;
if (AI_BOTS.test(request.headers.get("user-agent") ?? "")) {
  const mdUrl = new URL(request.url);
  mdUrl.pathname = mdUrl.pathname.replace(/\/$/, "/index").replace(/(\.html)?$/, ".md");
  return env.ASSETS.fetch(new Request(mdUrl, request)); // 自分自身を再帰呼び出ししないよう ASSETS から返す
}

注意点

出典

X の元の投稿を開く