メインコンテンツへ移動

StorageBrowserRef

StorageBrowserRef は、保存された Agent に付加するインラインのブラウザー設定です。provider ID はハイドレーション時に、BrowserProvider に対して解決されます。この Provider は MastraEditor.browsers に登録されています。

これは、BuilderAgentDefaults.browser と保存済みの Agent レコードで使用される型です。

使用例
使用例への直接リンク

src/mastra/index.ts
import { MastraEditor } from '@mastra/editor'
import { stagehandBrowserProvider } from '@mastra/stagehand'

new MastraEditor({
browsers: { [stagehandBrowserProvider.id]: stagehandBrowserProvider },
builder: {
enabled: true,
configuration: {
agent: {
browser: {
type: 'inline',
config: {
provider: 'stagehand',
headless: true,
viewport: { width: 1280, height: 720 },
},
},
},
},
},
})

型への直接リンク

type StorageBrowserRef = { type: 'inline'; config: StorageBrowserConfig }

ブラウザーでは { type: 'id' } バリアントを使用できません。ブラウザーは常にインライン化されます。

プロパティ
プロパティへの直接リンク

type:

'inline'
判別用フィールド。リテラル値 "inline" である必要があります。

config:

StorageBrowserConfig
Provider ID とインスタンス単位のブラウザー設定。次のセクションを参照してください。

StorageBrowserConfig
storagebrowserconfigへの直接リンク

config の下に埋め込まれる構造です。@mastra/core/storage で定義されています。

provider:

string
Provider 識別子(例: "stagehand")。MastraEditor.browsers に登録された BrowserProvider.id と一致する必要があります。組み込みの Provider はありません。

headless?:

boolean
= true
ブラウザーをヘッドレスモード(表示される UI なし)で実行します。

viewport?:

{ width: number; height: number }
ブラウザーの viewport の寸法。ウィンドウサイズとページのレンダリング方法を制御します。

timeout?:

number
= 10000
ブラウザー操作のデフォルトタイムアウト(ミリ秒)。

screencast?:

ScreencastOptions
ブラウザーフレームを UI にストリーミングするための Screencast オプション。
ScreencastOptions

format?:

'jpeg' | 'png'
画像形式。

quality?:

number
JPEG 品質(0〜100)。

maxWidth?:

number
最大幅(ピクセル)。

maxHeight?:

number
最大高さ(ピクセル)。

everyNthFrame?:

number
N フレームごとにキャプチャします。

ハイドレーション
ハイドレーションへの直接リンク

StorageBrowserRef は、mastra.editor.agent.getById() の呼び出し時に遅延解決されます。Editor は MastraEditor.browsersconfig.provider を検索し、provider.createBrowser(config) を呼び出します。Provider が登録されていない場合、Editor は警告をログに記録して undefined を返します。Agent は引き続き読み込まれますが、ブラウザーは使用できません。