# 🤖 Discourse llms.txt ジェネレータープラグイン

**URL:** https://meta.discourse.org/t/discourse-llms-txt-generator-plugin/388170
**Category:** Plugin
**Tags:** ai, security-issue
**Created:** [2025 年 11 月 11 日午後 6:45 UTC](https://meta.discourse.org/t/discourse-llms-txt-generator-plugin/388170 "2025-11-11T18:45:19Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![kaktak](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/kaktak/32/529093_2.png) [@kaktak](https://meta.discourse.org/u/kaktak)
#### Post date: [2025 年 11 月 11 日午後 6:45 UTC](https://meta.discourse.org/t/discourse-llms-txt-generator-plugin/388170/1 "2025-11-11T18:45:19Z")

</div>

# Discourse llms.txt 生成器

| | | |
| --- | --- | --- |
| ℹ | **概要** | ChatGPT、Claude、その他の AI システムなどの大規模言語モデル（LLM）がフォーラムコンテンツを発見できるようにする、llms.txt ファイルを自動的に生成します |
| 🛠 | **リポジトリリンク** | [GitHub - kaktaknet/discourse-llms-txt-generator: 🤖 Discourse llms.txt Generator Plugin. Automatically generates llms.txt and llms-full.txt files for your Discourse forum to optimize content discovery by Large Language Models (LLMs) and AI systems. · GitHub](https://github.com/kaktaknet/discourse-llms-txt-generator) |
| 📖 | **インストールガイド** | [Discourse へのプラグインのインストール方法](https://meta.discourse.org/t/install-plugins-in-discourse/19157) |
|   
 | | |

### 機能

このプラグインは、ウェブサイトから LLM 友好型のコンテンツを提供するための提案された規約である [llms.txt 標準](https://llmstxt.org/)を実装しています。これは、フォーラムのコンテンツが AI 生成の回答に表示されるのを助ける「AI 向けの robots.txt」と考えてください。

**詳細な機能ドキュメントについては** 、[README.md](https://github.com/kaktaknet/discourse-llms-txt-generator/blob/main/README.md) を参照してください。

**技術ドキュメントと開発については** 、[CONTRIBUTING.md](https://github.com/kaktaknet/discourse-llms-txt-generator/blob/main/CONTRIBUTING.md) を参照してください。

この動画は Discourse やそのプラグインに関するものではありませんが、フォーラムにとって llms.txt ファイルがなぜ重要なのかを非常に良く説明しています。

[![](https://global.discourse-cdn.com/meta/original/4X/d/c/b/dcb9be2515b281f84e594c2d9c01c0d96419b3f8.jpeg "How to Create an llms.txt File for Your Website") ](https://www.youtube.com/watch?v=goc1f9zPJgM)

世界中の最大かつ最も権威のあるテクノロジー企業の多くを含む、何千ものサイトがすでに独自のドメインで llms.txt 標準を実装しています。例を挙げると以下の通りです：

- ✅ Amazon AWS — `https://docs.aws.amazon.com/llms.txt`
- ✅ Cloudflare — `https://developers.cloudflare.com/llms.txt`
- ✅ Stripe — `https://stripe.com/llms.txt`
- ✅ Angular — `https://angular.dev/llms.txt`
- ✅ Redis — `https://redis.io/llms.txt`
- ✅ Docker — `https://docs.docker.com/llms.txt`
- ✅ Model Context Protocol — `https://modelcontextprotocol.io/llms-full.txt`

業界の巨人が「公式」になる遥か前に、大規模でこの標準を採用することは、llms.txt が現実的で緊急の課題を解決しているという明確なシグナルです。このような企業は、サイト全体のイニシアチブを軽々しく展開することはありません。常に確固たる戦略的理由があります。テクノロジー業界全体で llms.txt が急速かつ大規模に受け入れられていることは、AI 向けの構造化されたコンテンツがいかに重要になっているかを示しており、業界自体が公式の標準化機関よりも早くこの採用を推進していることを意味します。

**主な機能：**

1. **メインナビゲーションファイル** (`/llms.txt`)

2. **完全コンテンツインデックス** (`/llms-full.txt`)

3. **動的リソース別ファイル**

4. **サイトマップインデックス** (`/sitemaps.txt`)

5. **SEO 保護**

6. **スマートキャッシング**

7. **ボット制御**

8. **プライバシーとセキュリティ**

**フォーラムへのメリット：**

- **可視性の向上** ：コンテンツが ChatGPT、Claude、その他の AI の回答に表示されます
- **直接帰属表示** ：AI システムがフォーラムを引用し、リンクを貼り返します
- **トラフィック増加** ：AI 駆動型検索による発見性の向上
- **GEO の改善** ：AI システム向けの生成エンジン最適化
- **メンテナンス不要** ：自動生成と更新

### 設定

プラグインをインストールした後、 **管理 → 設定 → プラグイン → discourse-llms-txt-generator** に移動します。

**ステップ 1：プラグインの有効化**

`llms_txt_enabled` を `true` に設定します（デフォルトで有効）。

**ステップ 2：インデックス作成の設定**

`llms_txt_allow_indexing` を `true` に設定して、AI クローラーのアクセスを許可します（デフォルトで有効）。

この設定は、llms.txt ファイルが robots.txt で許可されるか禁止されるかを制御します。

**ステップ 3：コンテンツフィルタの設定**

フォーラムのサイズに応じてこれらの設定を構成します：

- `llms_txt_min_views`：含めるトピックの最小ビュー数（デフォルト：50）
- `llms_txt_posts_limit`：含めるトピック数
  - `small`：500 トピック（大規模フォーラムにおすすめ）
  - `medium`：2,500 トピック（ほとんどのフォーラムにおすすめ）
  - `large`：5,000 トピック
  - `all`：すべてのトピック（大規模フォーラムでは注意して使用）

**ステップ 4：オプション - カスタム説明の追加**

フォーラムの目的とコミュニティを説明する 2〜4 文を `llms_txt_full_description` に記入します。これにより、AI システムがフォーラムについてより正確な情報を提供できるようになります。

例：

```plaintext
このフォーラムは、Web 開発、データサイエンス、機械学習に焦点を当てた Python プログラミングの議論に専念しています。私たちのコミュニティには、初心者から経験豊富な開発者までが含まれており、実践的な解決策やベストプラクティスを共有しています。

```

**ステップ 5：オプション - 特定のボットのブロック**

特定の AI クローラーをブロックしたい場合は、`llms_txt_blocked_user_agents` にユーザーエージェント名をカンマ区切りで入力します：

例：`Omgilibot, ChatGPT-User, CCBot`

**ステップ 6：インストールの確認**

フォーラムの以下の URL にアクセスして確認します：

- `/llms.txt` - メインナビゲーションファイル
- `/llms-full.txt` - 完全コンテンツインデックス
- `/sitemaps.txt` - 完全サイトマップ

`/robots.txt` を確認して、統合が正しく行われているか確認してください。

### 設定項目

| 名前 | デフォルト | 説明 |
| --- | --- | --- |
| `llms_txt_enabled` | `true` | プラグインの有効/無効 |
| `llms_txt_allow_indexing` | `true` | AI クローラーが llms.txt ファイルにアクセスすることを許可（robots.txt に影響） |
| `llms_txt_blocked_user_agents` | `""` | llms.txt ファイルからブロックするボットのユーザーエージェントのカンマ区切りリスト |
| `llms_txt_intro_text` | カスタムテキスト | メインの llms.txt ファイルに表示される導入テキスト |
| `llms_txt_full_description` | `""` | AI がフォーラムの文脈を理解するための llms-full.txt のカスタム説明 |
| `llms_txt_min_views` | `50` | llms-full.txt に含めるために必要な最小トピックビュー数 |
| `llms_txt_posts_limit` | `medium` | トピック数の制限：`small`（500）、`medium`（2,500）、`large`（5,000）、または `all` |
| `llms_txt_include_excerpts` | `false` | llms-full.txt に投稿抜粋を含める（ファイルサイズが大幅に増加します） |
| `llms_txt_post_excerpt_length` | `500` | 抜粋が有効な場合の最大抜粋長さ（文字数：100〜5000） |
| `llms_txt_latest_topics_count` | `50` | メインの llms.txt ファイルに表示する最新トピックの数 |
| `llms_txt_cache_minutes` | `60` | ナビゲーションファイルのキャッシュ期間（分） |

**重要な注意点：**

- `llms_txt_posts_limit` を `all` に設定した状態で `llms_txt_include_excerpts` を有効にすると、大規模フォーラムでは極めて大きなファイルサイズ（10〜100+ MB になる可能性あり）と高いサーバー負荷を引き起こす可能性があります
- プライベートカテゴリは、すべての llms.txt ファイルから自動的に除外されます
- 動的リソース別ファイル（カテゴリ、トピック、タグ）はキャッシュされず、オンデマンドで生成されます
- このプラグインは robots.txt 統合のためにビューコネクタを使用します。robots.txt を手動で編集する必要はありません

### 技術詳細

**アーキテクチャ：**

- 事前生成されたファイルなしでのオンデマンド生成
- 時間ごとのバックグラウンドチェックによるスマートキャッシング
- Discourse Guardian を使用した権限対応
- プライベートコンテンツのための SQL レベルのセキュリティフィルタリング
- SEO ペナルティを防止するための HTTP ヘッダー内の正規 URL

**パフォーマンス：**

- ナビゲーションファイルは 60 分間キャッシュされます（設定可能）
- 完全コンテンツファイルはオンデマンドで生成されます
- スマートキャッシュは新コンテンツが存在する場合にのみ再生成されます
- キャッシュされたコンテンツのレスポンス時間は 50ms 未満

**互換性：**

- Discourse 2.7.0+
- Ruby 2.7+
- Discourse 3.6.0.beta3 でテスト済み

**標準準拠：**

- llms.txt 標準（[https://llmstxt.org/）](https://llmstxt.org/%EF%BC%89)
- RFC 3986（国際文字の URL エンコーディング）
- RFC 6596（正規リンクヘッダー）

### 使用事例

**コミュニティフォーラム：**  
ユーザーが AI アシスタントに関連する質問をした際、ディスカッションや解決策が表示され、質の高いトラフィックがフォーラムに戻ってきます。

**ドキュメントサイト：**  
AI システムがドキュメントやチュートリアルを参照し、適切な帰属表示とともに正確な情報を提供できます。

**サポートフォーラム：**  
ユーザーは AI アシスタントを通じて知識ベースから直接回答を得られ、完全なディスカッションへのリンクも提供されます。

**技術コミュニティ：**  
開発者が AI 駆動型コーディングアシスタントを通じてフォーラムのコンテンツを発見し、コミュニティのエンゲージメントが高まります。

### メンテナンス

このプラグインは最小限のメンテナンスで済みます：

- キャッシュは自動的に 1 時間ごとに更新されます
- 投稿の作成/編集時にコンテンツ更新が自動的に発生します
- 手動でのファイル生成は不要です
- オプションの rake タスクが利用可能です：`llms_txt:refresh` および `llms_txt:check`

### トラブルシューティング

**ファイルにアクセスできない場合：**

- `llms_txt_enabled` が `true` であることを確認してください
- `llms_txt_allow_indexing` が `true` であることを確認してください
- 管理 → プラグインでプラグインがインストールされているか確認してください

**コンテンツが空の場合：**

- 十分なビュー数を持つ公開トピックがあることを確認してください（`llms_txt_min_views` 設定を確認）
- カテゴリが公開（読み取り制限なし）であることを確認してください
- `llms_txt_posts_limit` 設定を確認してください

**robots.txt 統合が機能しない場合：**

- robots.txt キャッシュをクリア：`Rails.cache.delete('robots_txt')`
- rake タスクを使用：`bundle exec rake llms_txt:refresh`
- Discourse を再起動：`./launcher restart app`

### サポート

- GitHub Issues: [Issues · kaktaknet/discourse-llms-txt-generator · GitHub](https://github.com/kaktaknet/discourse-llms-txt-generator/issues)

### ライセンス

MIT ライセンス - 無料でオープンソースのソフトウェア

### クレジット

- Standard Answer.AI: [llms.txt by Jeremy Howard (Answer.AI)](https://llmstxt.org/)
- GitHub Answer.AI: [GitHub - AnswerDotAI/llms-txt: The /llms.txt file, helping language models use your website · GitHub](https://github.com/AnswerDotAI/llms-txt)
- プラットフォーム: [Discourse](https://www.discourse.org/)

---

_[View the full topic](https://meta.discourse.org/t/discourse-llms-txt-generator-plugin/388170)._
