> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ja/llms.txt # BrowserProvider `BrowserProvider` は、パッケージが [`MastraEditor`](https://mastra.zisheng.pro/ja/reference/editor/mastra-editor) にブラウザーを登録するために実装するインターフェースです。Editor は Agent のハイドレーション時に `createBrowser(config)` を呼び出します。その際、`provider` ID を検索キーとして保存済みの [`StorageBrowserRef`](https://mastra.zisheng.pro/ja/reference/editor/storage-browser-ref) から取得します。 組み込みの Browser Provider はありません。Agent Builder で `browser` 機能を使用するには、Provider パッケージ(`@mastra/stagehand` など)を登録します。 ## 使用例 ```typescript import { MastraEditor } from '@mastra/editor' import { stagehandBrowserProvider } from '@mastra/stagehand' new MastraEditor({ browsers: { [stagehandBrowserProvider.id]: stagehandBrowserProvider, }, }) ``` ## プロパティ **id** (`string`): 一意の Provider 識別子(例: "stagehand")。この Provider を使用するすべての保存済み Agent で、StorageBrowserConfig.provider と一致する必要があります。 **name** (`string`): UI に表示する、人が読める名前。 **description** (`string`): Agent Builder のブラウザー選択欄に表示される簡潔な説明。 **configSchema** (`Record`): Provider 固有の構成を記述する JSON Schema。UI で構成フォームをレンダリングするために使用されます。 **createBrowser** (`(config: TConfig) => MastraBrowser | Promise`): 保存済みの構成から、実行時の MastraBrowser インスタンスを作成します。Agent のハイドレーションごとに一度呼び出され、生成されたインスタンスは Agent とともにキャッシュされます。 ## Provider の実装 ```typescript import type { BrowserProvider, MastraBrowser } from '@mastra/core/editor' export const myBrowserProvider: BrowserProvider<{ apiKey: string }> = { id: 'my-browser', name: 'My Browser', description: 'Headless browser for agent use.', configSchema: { type: 'object', properties: { apiKey: { type: 'string' }, }, required: ['apiKey'], }, async createBrowser(config): Promise { // construct and return a MastraBrowser instance return createMastraBrowser({ apiKey: config.apiKey }) }, } ``` 登録後、管理者は [`BuilderAgentDefaults.browser`](https://agent-builder.mastra.ai/reference/builder-agent-defaults) を介して、この Provider を Builder のデフォルトとして固定できます。 ```typescript new MastraEditor({ browsers: { [myBrowserProvider.id]: myBrowserProvider }, builder: { enabled: true, configuration: { agent: { browser: { type: 'inline', config: { provider: 'my-browser' } }, }, }, }, }) ``` ## 関連項目 - [Browser](https://agent-builder.mastra.ai/browser): 概念と実践的な例。 - [StorageBrowserRef](https://mastra.zisheng.pro/ja/reference/editor/storage-browser-ref): `createBrowser` が使用する保存済み構成。 - [MastraEditor クラス](https://mastra.zisheng.pro/ja/reference/editor/mastra-editor): Provider レジストリ。