okineadev/vitepress-plugin-llms

📜 A VitePress plugin for generating LLM-friendly documentation

何がこれか

vitepress‑plugin‑llms は、ビルド時にあなたのドキュメントの LLMフレンドリーな バージョンを自動的に生成する VitePress プラグインです。プレーンテキストの Markdown ファイル(llms.txt にはセクションリンク付き、llms‑full.txt にはサイト全体が含まれる)と、訪問者がページをコピーまたは Markdown としてダウンロードできるようにするオプションの UI ヘルパーを生成します。

なぜ使いたいか

大規模言語モデル(LLM)は、クリーンで軽量なテキストで最も効果的に動作します。従来の VitePress の出力には HTML、ナビゲーション、UI専用のマークアップが含まれており、LLM を混乱させる可能性があります。このプラグインは、元の Markdown を抽出し、細かい制御のためのオプションタグ(<llm‑only> / <llm‑exclude>)を追加し、llmstxt.org v2 標準に準拠することで、あなたのドキュメントを後続の AI ツール(例:リトリーバー拡張生成、インデックス作成、ファインチューニング)に適した状態にします。

使い始め方

npm install vitepress-plugin-llms --save-dev

.vitepress/config.ts にプラグインを追加します:

import { defineConfig } from 'vitepress'
import llmstxt from 'vitepress-plugin-llms'

export default defineConfig({
  vite: { plugins: [llmstxt()] },
})

オプションで、ユーザーに「Markdown としてコピー」/「Markdown としてダウンロード」ボタンを提供するバンドルされた Vue コンポーネントを登録します:

import DefaultTheme from 'vitepress/theme'
import CopyOrDownloadAsMarkdownButtons from 'vitepress-plugin-llms/vitepress-components/CopyOrDownloadAsMarkdownButtons.vue'

export default {
  extends: DefaultTheme,
  enhanceApp({ app }) { app.component('CopyOrDownloadAsMarkdownButtons', CopyOrDownloadAsMarkdownButtons) },
}

その後、Markdown 変換器を有効にします:

import { copyOrDownloadAsMarkdownButtons } from 'vitepress-plugin-llms'

export default defineConfig({
  markdown: { config(md) { md.use(copyOrDownloadAsMarkdownButtons) } },
})

カスタム UI を好む場合は、composable useCopyOrDownloadAsMarkdownButtons を使用することもできます。

UI テキストのカスタマイズ

ラベルは themeConfig.llms(または locales.<locale>.themeConfig.llms でローカライズごとに)から読み込まれます。すべてのキーはオプションです:

キー デフォルト
copyText Copy page
copiedText Copied
viewMarkdownText View as Markdown
openInAIText Open in {provider}

LLM専用または LLM除外コンテンツ用の特別なマークアップ

  • <llm-only> – このタグ内のコンテンツは、生成された llms.txt ファイルに 含められますが、人間の読者には 非表示 です。
  • <llm-exclude> – このタグ内のコンテンツは、人間の読者には 表示されますが、LLM ファイルには 含まれません。

検証

デプロイ後、ヘルパーツール llms‑txt‑check を使って生成された llms.txt の URL が正しく解決するか確認できます:

npx llms-txt-check https://your-docs-site.com

リストされた URL のいずれかが破損している場合、非ゼロのコードで終了します。

主な機能(要約)

  • ✅ VitePress へのゼロコンフィグ統合
  • ⚙️ VitePress テーマ設定で完全にカスタマイズ可能
  • 🤖 ページごとの LLMフレンドリーな Markdown と 2 つのインデックスファイル(llms.txt, llms‑full.txt)を生成
  • 📋 オプションの「Markdown としてコピー/ダウンロード」UI コンポーネント
  • 🏷️ 細かいコンテンツ制御のための <llm-only> / <llm-exclude> タグ
  • 📦 Bun で構築、oxc でフォーマット、自動 CI テスト済み

使っている人

README には、Vite、Vue.js、Vitest、Rolldown などの有名プロジェクトと、すでに llms.txt と llms‑full.txt を公開している数名の早期採用者リストが記載されています。

ライセンスと貢献

MIT ライセンス。貢献はリンクされた CONTRIBUTING.md を通じて歓迎され、GitHub でのスポンサーシップも受け付けています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト