しくみと注意点

askai-button がAIサービスに何を渡すのか、プライバシーの扱い、各AIサービスのURLの形式が非公式であること、サービスごとの違い、AIがサイトを読めない場合の対処、URLの長さの上限、商標とライセンスを説明します。

URLだけを渡すしくみ

askai-button は、AIのAPIを呼びません。行うのは、次の2つだけです。

  1. 訪問者の質問と、サイトのURLを含む短い文面を組み立てる。
  2. その文面を付けたURLで、訪問者が選んだAIサービスのページを別のタブで開く。

標準の文面は次のとおりです。

{question}

この質問について、以下のURLを参照して回答してください。
{site_url}

渡すのはサイトのURLだけで、ページの本文は渡しません。URLを受け取ったAIサービスが、その場でサイトを読みに行き、内容をもとに回答する、という使い方を想定しています。実際に読みに行くかどうか、どのページをどこまで読むか、どのように答えるかは、AIサービス側の動作によって決まり、このボタンからは制御できません。

サイトのURLとは、サイトのトップ、つまりページのオリジン(https://example.com/ など)です。複数の言語があるサイトでも、どのページでも同じです(/en/... のページも https://example.com/ を渡します)。言語ごとのトップページを渡したい場合は、その言語のページで data-site-url を指定します。「リファレンス」を参照してください。WordPress プラグインには、Polylang または WPML を使っているサイト向けに、このための設定があります。「WordPress」を参照してください。

回答を生成するのはAIサービスです。回答の内容が正しいかどうかは、サイトの運営者にもこのボタンにも保証できません。パネルにも「回答はAIサービスが生成します」と表示しています。

プライバシー

ボタン自体がしないこと

  • 外部と通信しません。読み込むファイルは askai-button.min.js の1つだけで、このファイルがほかのファイルを読み込むこともありません(この1つのファイルをどこから読み込むかは、サイトの運営者が選びます。下の「ファイルをどこから読み込むか」を参照してください)。
  • 質問を保存・送信・計測しません。
  • Cookie を使いません。
  • ブラウザーに保存するのは、訪問者が最後に選んだAIサービスの id だけです(localStorage のキー askai-button:provider)。次にパネルを開いたときに、同じサービスを選んだ状態にするためです。

ここまでは JavaScript ライブラリの説明で、標準の設定の WordPress プラグインにも当てはまります。プラグインには、標準ではオフの機能が1つあります。クリックの月ごとの合計を、サイト自身のデータベースに保存する機能です。オンにすると、ボタンと送信ボタンのクリックが、クリックの種類とサービスの id としてサイト自身にだけ送られます。質問の内容、ページ、訪問者に関する情報は含みません。「利用回数の記録」を参照してください。

ファイルをどこから読み込むか

askai-button.min.js の読み込みは、ページのほかのスクリプトと同じ、通常のリクエストです。その送り先は、ファイルの置き場所によって決まります。

  • 自分のサーバーに置く場合(npm パッケージや WordPress プラグインを使う場合も同じ):リクエストは自分のサイトに送られます。第三者は関係しません。
  • 公開 CDN(jsDelivr、unpkg など)から読み込む場合:訪問者のブラウザーが、CDN の運営者(第三者)にファイルを取りに行きます。CDN の運営者には、ブラウザーが通常のリクエストで送る情報(IPアドレスや、ページのリファラーの設定によってはサイトのURL)が伝わります。質問はこのリクエストに含まれません。ファイルの取得はページを開いたときに行われ、その時点ではまだ何も入力されていないためです。

どちらの場合も、ファイルの内容は同じで、ファイル自体は何も送りません。詳しくは、導入方法のページの「CDN から読み込む」をご覧ください。

送信ボタンを押したときに起きること

訪問者が送信ボタンを押すと、訪問者のブラウザーが、選ばれたAIサービスを別のタブで開きます。訪問者が入力した内容がページの外に出るのは、訪問者がこの操作をしたときだけです。

  • 開くURLには、AIに渡す文面(質問、定型文、サイトのURL)が含まれます。クエリテンプレートを変更している場合は、テンプレートに書いた内容(表示中のページのURL、ページのタイトル、サイト名など)が含まれます。
  • 通常のリンクと同じように、ブラウザーがページを開くときに送る情報(IPアドレス、そのサービスの Cookie、リンク元の情報など)も、AIサービスに送られます。
  • 質問の渡し方を「コピーして開く」(copy_and_open)にしたサービスでは、文面は訪問者のクリップボードにコピーされ、サービスは文面なしで開きます。

質問をAIサービスがどう扱うかは、各サービスの利用規約とプライバシーポリシーによります。訪問者は、自分のアカウントや設定でそのサービスを使うことになります。

サイトの運営者が知っておくこと

  • サイトのサーバーは、質問を受け取りません。
  • askai:send イベントと onSend で、送信があったこと(AIサービスの id、質問の例か自由入力か、ページのURL)を知ることはできますが、質問の本文は渡されません。ボタン自体は、これをどこにも送りません。

URLの形式は非公式です

質問をURLで渡すために、各サービスのURLの q パラメータを使っています。

AIサービス標準のURLテンプレート
ChatGPThttps://chatgpt.com/?q={query}
Claudehttps://claude.ai/new?q={query}
Google AIモードhttps://www.google.com/search?udm=50&q={query}

これらは、各サービスが仕様として公開・保証しているものではありません。予告なく変わったり、使えなくなったりすることがあります。また、訪問者の地域、アカウント、端末(スマートフォンのアプリが開く場合など)によって、動作が変わることがあります。

そのため、URLテンプレートは固定せず、すべて設定で変えられるようにしています。

  • URLテンプレートを変える:サービスごとの urlTemplate を書き換えます。
  • コピーして開く方式に切り替える:method: 'copy_and_open' にすると、文面をクリップボードにコピーしてからサービスを開き、「貼り付けて送信してください」と案内します。URLで質問を渡せなくなったときの代わりの手段です。
  • サービスを外す:providers から取り除きます。

設定のしかたは「リファレンス」、WordPress では「設定画面」をご覧ください。

AIサービスごとの違い

パネルでは、選んだAIサービスに応じて、次の注記を表示します。

AIサービスパネルに表示する注記
ChatGPT質問は自動で送信されます。
Claude質問が入力された状態で開きます。送信はご自身で押してください(ログインが必要です)。
Google AIモードGoogle 検索の AIモードで開きます。AIモードを使えない地域・アカウントでは、通常の検索結果になることがあります。

これらは目安です。実際の動作は各サービスが決めるもので、変わることがあります。とくに Google AIモードは、利用できる地域やアカウントが限られることがあり、その場合は AI による回答ではなく、通常の検索結果が表示されることがあります。

注記の文言は、labels の note.chatgpt などで変更できます。

AIがサイトを読めない場合

渡すのはURLだけなので、AIサービスがそのURLを読めなければ、サイトの内容に基づいた回答は得られません。次のような場合です。

  • robots.txt や WAF(ファイアウォール)で、AIサービスのクローラーを遮断している。
  • ログインや Basic 認証が必要なページである。
  • localhost、社内ネットワーク、ステージング環境など、インターネットから届かない場所にある。

この場合のために、パネルには「AIがこのサイトを読めない場合」という折りたたみがあります。開くと「質問とURLをコピー」ボタンがあり、訪問者は質問とURLをコピーして、AIの入力欄に自分で貼り付けられます。必要なら、ページの本文も一緒に貼り付けて質問できます。

サイトの運営者は、AIサービスに読ませたいページを、robots.txt などで遮断していないか確認してください。

URLの長さの上限

質問はURLに含めて渡すため、長い質問は長いURLになります。日本語の文字は、URLの中では1文字が9文字(%E3%81%82 のような形)になるので、英数字よりもずっと長くなります。

  • できあがったURLが maxUrlLength(標準は 8,000 文字)を超えると、送信ボタンは押せなくなり、「質問が長すぎます」と表示します。
  • 質問の文字数は maxLength(標準は 500 文字)までです。標準の設定では、日本語で 500 文字の質問でも、URLは 8,000 文字に収まります。
  • 受け付けるURLの長さは、AIサービスやブラウザーによって異なります。長い質問がうまく渡らない場合は、maxLength や maxUrlLength を小さくするか、そのサービスを「コピーして開く」方式にしてください。

商標

ChatGPT、Claude、Google は、各社の商標です。本プロジェクトは、OpenAI、Anthropic、Google のいずれとも提携しておらず、各社の公認や後援を受けたものでもありません。

各AIサービスのロゴは使用していません。パネルでは、サービスを名称の文字で表示します。

ライセンス

  • JavaScript ライブラリ(askai-button、npm パッケージは @elephancube/askai-button):MIT License
  • WordPress プラグイン(Elephancube Ask AI Button):GPL-2.0-or-later。同梱しているライブラリのファイルは MIT License です。

Copyright (c) 2026 Elephancube Inc.

ソースコードとライセンスの全文は、GitHub リポジトリにあります。無料で使え、有料版はありません。サポートは可能な範囲で行っています。不具合の報告は、リポジトリの Issues で受け付けています。