暗黒の訪問者

:information_source: 概要 Known Agents サービスを Discourse に統合し、フォーラムを訪れる望ましくないクローラーやスクレイパーを追跡します。
:hammer_and_wrench: リポジトリリンク https://github.com/magicball-network/discourse-darkvisitors
:open_book: インストールガイド Discourse プラグインのインストール方法

:information_source: 2026年2月3日 時点で、Dark Visitors サービスは Known Agents に名称変更されました。Discourse プラグインの名称は変更されていません。

機能

Known Agents は、あなたのウェブサイトを訪れる エージェント(クローラー、スクレイパー、その他の種類のボット)を追跡するサービスです。彼らの主な関心は AI エージェントの分析にあります。

以下の2つのサービスを提供しています:

  • robots.txt の生成と監視
  • エージェント分析

robots.txt サービスは無料です。分析サービスには無料プランがあります。詳細については、公式サイト をご覧ください。

この Discourse プラグインはこれらのすべてのサービスに接続しますが、すべてオプションであり、ある程度設定可能です。

robots.txt の生成

Discourse にはすでに robots.txt を設定するオプションが用意されています。このプラグインはその機能を拡張します。有効化すると、プラグインは異なるカテゴリのエージェントの一覧を取得し(現在サポートされているのは AI カテゴリのみ)、すでに設定済みのエージェントに含まれていないものを追加します。このリストは毎日更新されます。これにより、新しい AI スクレイパーが認識されると、あなたの robots.txt に自動的に追加されます。

この機能は、Discourse が robots.txt を管理しており、手動で上書きしていない場合のみ動作します。プラグインは Blocked crawler user agents 設定を変更せず、robots.txt に欠落しているエージェントを追加するだけです。したがって、このリストの管理は引き続き完全にあなたのコントロール下にあります。

サイトの robots.txt を訪問すると、最後に更新された時刻を示す先頭のコメントと、Known Agents から返されたエージェントの数を確認できます。まだ設定されていないエージェントはリストの末尾に追加されます。それらは Googlebot とサイトマップ指示の間(設定されている場合)にあるべきです。

エージェント分析

すべての訪問者に対して有効にするか、認証されていない訪問者のみに限定するかを選択できます。

サーバーサイドの分析レポートでは、Known Agents に 追跡された訪問 を報告します。リクエストパス、訪問者のリモートアドレス、User-Agent ヘッダー、およびその他のブラウザヘッダーが送信されます。

どのリクエストを報告するかに関する追加の設定項目があります(以下を設定参照)。デフォルトでは、Discourse がビューとして追跡するようにマークしたリクエストのみが追跡されます。以下の Discourse へのリクエストは決して報告されません:

  • Admin セクションへのリクエスト
  • バックグラウンドおよび API リクエスト

追跡されたすべてのリクエストは、支払いプランに影響を与えるイベント数にカウントされます。

設定

このプラグインを使用するには、Known Agents に登録する必要があります。無料プランでは、月に10万件のイベントまで利用できます。この上限に達すると、分析画面で新しいイベントが表示されなくなりますが、新しい情報の送信や robots.txt サービスの利用は継続できます。

登録後、プロジェクト(つまり、追跡対象のサイト)を作成する必要があります。これにより、robots.txt およびサーバーサイド分析機能に必要な アクセストークン が提供されます。

robots.txt 機能を有効にしても、更新されるまで少し時間がかかります。https://yoursite/robots.txt を訪問して、正常に動作しているか確認してください。上部にコメントがあるはずです。

# Augmented by Dark Visitors on 2025-05-07T12:46:00+00:00 with 28 agents

サーバーサイド分析を有効にした場合は、Known Agents のプロジェクト設定から テスト訪問 をリクエストすることで、動作を確認できます。数秒かかる場合があります。結果は Known Agents の Realtime ページに表示されるはずです。

設定項目

名前 説明
darkvisitors enabled プラグイン全体を有効にするグローバルフラグ
darkvisitors access token robots.txt およびサーバーサイド分析において Known Agents と通信するために必要な秘密アクセストークン。これは Known Agents のプロジェクト内の settings で確認できます。
darkvisitors robots txt enabled 有効にすると、Discourse の robots.txt に追加のエージェントが加えられます
darkvisitors robots txt agents robots.txt に追加するエージェントの種類。
darkvisitors robots txt path エージェントのアクセスを拒否するパス。通常は / のままで、サイト全体へのアクセスを拒否するのが最善です。
darkvisitors server analytics サーバーサイド分析を有効にします。匿名ユーザーのみを対象にすることを推奨します。
darkvisitors server analytics include 追跡する追加のリクエスト。アップロードされたファイルへのリクエストや、404 Not Found リクエストなども追跡できます。
darkvisitors server analytics ignore 無視する User-Agent 中の部分文字列(大文字小文字を区別)。アップタイム監視ツールを使用している場合は、その識別用 User-Agent をこのリストに含めることを強くお勧めします。
「いいね!」 5

elmuerteさん、ありがとうございます!設定が完了し、正常に動作しています。

プラグインの設定では、robots.txt で除外できるエージェントの種類は次のとおりです。

  • AI Data Scraper [デフォルトで選択]
  • Undocumented AI Agent [デフォルトで選択]
  • AI Agent
  • AI Assistant
  • AI Search Crawler

しかし、Dark Visitors のエージェントの種類の完全なリストは次のとおりです。
(太字 = 追加)

Crawlers & Scrapers…

  • AI Assistant
  • AI Data Scraper
  • AI Search Crawler
  • Archiver
  • Developer Helper
  • Fetcher
  • Intelligence Gatherer
  • Scraper
  • Search Engine Crawler
  • Security Scanner
  • SEO Crawler
  • Uncategorized Agent
  • Undocumented AI Agent

AI Agents…

  • AI Agent
  • Headless Agent

これらのエージェントの種類のすべてがブロックしたいものではありませんが、Scraper、AI Data Scraper、SEO Crawler などを含めたいと考えています。

これらの追加のエージェントの種類は、プラグインよりも新しいものですか?設定.yml の現在の選択リストに追加できますか?

robots.txt は単なるリクエストにすぎません。ボットがそれに従うか従わないかです。停止させる唯一の方法はファイアウォールです。

はい、それは理解していますが、Dark Visitorsはrobots.txtのみで機能するため、できる限りうまく機能させたいのです。

(現在、Nginxリバースプロキシを使用した実際のブロックについていくつか投稿を読んでいますが、そこまで行く必要があるかどうかはまだわかりません。)

それは少しハードコアですね。しかし、Dark VisitorはDiscourseの禁止リストで役立つはずです。もちろん、これにより、OpenAIなどをrobots.txtに従うように手動で追加する必要がなくなります。

今年の5月3日にDark Visitorsに連絡したところ、「現時点では」という返答でした。しかし、現在のドキュメントにはさらに多くのタイプがリストされているようです。

現在、Dark Visitors APIでサポートされているタイプは次のとおりです。

Discourseの設定は、追加するだけで追加のエージェントタイプで拡張できることを確認しました。

新しいタイプを追加して設定を保存すると、robots.txtはすべての新しいエージェントですぐに更新されるはずです。

「いいね!」 1

OMG、「検索または作成」フィールドを見逃していました。私のテーマはそこでコントラストが非常に低く、見逃してしまいました。明確化していただきありがとうございます!