組み込みツールリファレンス
Agentには、会話中にAIが自動呼び出しする組み込みツールセットが付属しています。これらのツールは永続的な会話でデフォルトで利用可能です。スクリプト開発者は通常、直接呼び出す必要はありません — AIはユーザーの意図に基づいて適切なツールを選択します。
これらのツールが何ができるかを理解することは、より良いシステムプロンプトとカスタムツールを作成するのに役立ちます。
Webデータ取得
web_fetch
URLの内容を取得し、HTMLからテキストへの抽出とLLM要約をサポートします。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
url | string | はい | 対象URL(http/httpsのみ) |
prompt | string | いいえ | 要約プロンプト(提供された場合、LLMを使用して内容を要約) |
max_length | number | いいえ | 最大文字数 |
動作詳細:
- 30秒のリクエストタイムアウト
- HTMLコンテンツは本文テキストを自動的に抽出(ナビゲーション、サイドバーなどを除去)
- JSONレスポンスは自動的にパース
- プレーンテキストはそのまま返却
promptが提供された場合、取得した内容はLLMに送信されて要約されます
返り値:
{
"url": "https://example.com",
"content_type": "text/html",
"content": "抽出された本文...",
"truncated": false,
"final_url": "https://example.com/redirected"
}
web_search
検索エンジンにクエリを送信し、構造化された検索結果を返します。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
query | string | はい | 検索キーワード |
max_results | number | いいえ | 最大結果数(デフォルト5、上限10) |
サポートする検索エンジン:
| エンジン | 説明 | 必要な設定 |
|---|---|---|
| DuckDuckGo | デフォルトエンジン | なし |
| Bing | Microsoft Bing検索 | APIキーが必要 |
| Baidu | 百度検索 | APIキー不要 |
| Googleカスタム検索 | Googleカスタム検索 | APIキー + CSE IDが必要 |
検索エンジンは管理ページ → Agent → 設定で設定します。
返り値:
[
{
"title": "検索結果のタイトル",
"url": "https://example.com/result",
"snippet": "結果の要約テキスト..."
}
]
get_tab_content
指定されたタブのレンダリング済みページコンテンツを読み込み、CSSセレクタでアノテートされた構造化Markdownに変換します。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
tab_id | number | はい | タブID |
selector | string | いいえ | CSSセレクタ;一致する部分のみ抽出 |
prompt | string | いいえ | 要約プロンプト |
max_length | number | いいえ | 最大文字数 |
web_fetchとの違い:get_tab_contentはページをブラウザが既にレンダリングした状態で読み込みます(動的なJSコンテンツを含む)。一方、web_fetchは新しいHTTPリクエストを行います。
返り値:
{
"tab_id": 123,
"url": "https://example.com",
"title": "ページタイトル",
"content": "構造化されたコンテンツ...",
"truncated": false,
"used_selector": "main"
}
タブ管理
list_tabs
タブをクエリし、いくつかのフィルタ条件をサポートします。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
url_pattern | string | いいえ | URL正規表現マッチ |
title_pattern | string | いいえ | タイトル正規表現マッチ |
active | boolean | いいえ | アクティブなタブのみ返す |
window_id | number | いいえ | 指定されたウィンドウ |
audible | boolean | いいえ | 現在オーディオを再生しているタブのみ返す |
open_tab
新しいタブを開くか、既存のタブをナビゲートします。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
url | string | はい | 対象URL |
tab_id | number | いいえ | 既存タブのID(提供された場合、そのタブをナビゲート;否则新しいタブを開く) |
active | boolean | いいえ | 有効にするかどうか(デフォルトtrue) |
window_id | number | いいえ | 指定されたウィンドウ |
wait_until_loaded | boolean | いいえ | ページの読み込み完了を待つかどうか(デフォルトtrue) |
close_tab
タブを閉じます。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
tab_id | number | はい | タブID |
activate_tab
タブを有効にし、所属するウィンドウにフォーカスします。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
tab_id | number | はい | タブID |
ファイルシステム(OPFS)
opfs_write
ワークスペースにファイルを書き込みます。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
path | string | はい | ファイルパス |
content | string | はい | ファイル内容(Data URLバイナリ対応) |
opfs_read
ワークスペースからファイルを読み込みます。デフォルトではファイルタイプは自動検出されます:テキストファイルは内容を返し、バイナリファイルはblob URLを返します。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
path | string | はい | ファイルパス |
mode | string | いいえ | "text" / "blob" / "auto"(デフォルト)— 特定の返却モードを強制 |
offset | number | いいえ | 開始行番号(1から開始)、テキストモードのみ |
limit | number | いいえ | 読み込む行数、テキストモードのみ(テキストが200行を超えるとページネーションが必要) |
opfs_list
ディレクトリの内容を一覧します。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
path | string | いいえ | ディレクトリパス(デフォルトはルートディレクトリ) |
opfs_delete
ファイルまたはディレクトリを削除します。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
path | string | はい | ファイル/ディレクトリパス |
ユーザーインタラクション
ask_user
ユーザーに質問をし、フリーフォーム入力または構造化された選択をサポートします。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
question | string | はい | 質問内容 |
options | string[] | いいえ | 選択肢リスト(提供された場合、多肢選択問題になる) |
multiple | boolean | いいえ | 複数選択を許可するかどうか(デフォルトfalse) |
タイムアウト: 5分間応答がない場合、{ answer: null, reason: "timeout" }を返します。
返り値:
{ "answer": "ユーザーの回答テキスト" }
execute_script
ページまたはサンドボックスでJavaScriptコードを実行します。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
code | string | はい | JavaScriptコード |
target | string | はい | "page"または"sandbox" |
tab_id | number | いいえ | targetがpageの場合の対象タブ(デフォルトは現在のアクティブタブ);サンドボックスでは無視 |
実行環境の比較:
| 環境 | DOM | ページJS | 拡張機能blob URL | 最適用途 |
|---|---|---|---|---|
target: "page"(常にMAIN世界) | はい | はい | いいえ | DOMの読み書き、ページ関数の呼び出し、ページ変数の読み取り |
target: "sandbox" | いいえ | いいえ | いいえ | 純粋な計算 |
pageモードは常にページのMAIN世界で実行され、ページとwindowを共有します — したがって、拡張機能自身のblob URL(例:opfs_readがblobモードで返すアドレス)にはアクセスできません。blob URLで作業する必要がある場合はSkillScriptを使用してください。
サブエージェント
agent
複雑なサブタスクを処理するために、独立したサブエージェントを生成します。
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
prompt | string | はい | サブタスクの説明 |
description | string | いいえ | 短いラベル(数語、UI表示用) |
type | string | いいえ | サブエージェントタイプ(以下参照)、デフォルトは"general" |
tab_id | number | いいえ | サブエージェントに渡すタブID;サブエージェントはそのタブを操作 |
サブエージェントタイプ:
| タイプ | 説明 | 利用可能なツール |
|---|---|---|
researcher | 情報検索(読み取り専用) | web_search、web_fetch、ページコンテンツ読み取り |
page_operator | ブラウザ自動化 | タブ管理、DOM操作、ページインタラクション |
general | 汎用(デフォルト) | すべてのツール |
特徴:
- サブエージェントは独自の独立した会話コンテキストを持ちます
ask_userやagentは使用できません(再帰防止)- サブエージェントのイベントは
sub_agent_eventを介して親会話に渡されます
タスク管理
このツールグループは会話内の一時的なタスクリストを管理します(メモリ内、永続化されません)。
create_task
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
subject | string | はい | タスクタイトル |
description | string | いいえ | 詳細な説明 |
update_task
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
task_id | string | はい | タスクID |
status | string | いいえ | "pending" / "in_progress" / "completed" |
subject | string | いいえ | 新しいタイトル |
description | string | いいえ | 新しい説明 |
list_tasks
パラメータなし;すべてのタブの簡単な一覧を返します。
タスク管理ツールは、複雑なマルチステップタスクを処理する際にAIが自身の進捗を追跡するためのものです。タスクデータは永続化されません。