Aller au contenu principal

StorageBrowserRef

StorageBrowserRef est la configuration de navigateur intégrée associée à un Agent enregistré. L’ID provider est résolu lors de l’hydratation par rapport au BrowserProvider enregistré dans MastraEditor.browsers.

Il s’agit du type utilisé par BuilderAgentDefaults.browser et par les enregistrements d’Agents stockés.

Exemple d’utilisation
Lien direct vers Exemple d’utilisation

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
Lien direct vers Type

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

Aucune variante { type: 'id' } n’est disponible pour les navigateurs : leur configuration est toujours intégrée.

Propriétés
Lien direct vers Propriétés

type:

'inline'
Discriminant. Doit être le littéral "inline".

config:

StorageBrowserConfig
ID du fournisseur et configuration du navigateur propre à l’instance. Consultez la section ci-dessous.

StorageBrowserConfig
Lien direct vers storagebrowserconfig

Structure intégrée sous config. Définie dans @mastra/core/storage.

provider:

string
Identifiant du fournisseur (par exemple, "stagehand"). Il doit correspondre à un BrowserProvider.id enregistré dans MastraEditor.browsers. Aucun fournisseur intégré n’est disponible.

headless?:

boolean
= true
Exécute le navigateur en mode headless, sans interface utilisateur visible.

viewport?:

{ width: number; height: number }
Dimensions de la zone d’affichage du navigateur. Contrôle la taille de la fenêtre et le rendu des pages.

timeout?:

number
= 10000
Délai d’expiration par défaut, en millisecondes, pour les opérations du navigateur.

screencast?:

ScreencastOptions
Options de screencast permettant de diffuser les frames du navigateur vers l’interface utilisateur.
ScreencastOptions

format?:

'jpeg' | 'png'
Format de l’image.

quality?:

number
Qualité JPEG de 0 à 100.

maxWidth?:

number
Largeur maximale en pixels.

maxHeight?:

number
Hauteur maximale en pixels.

everyNthFrame?:

number
Capture une frame toutes les N frames.

Hydratation
Lien direct vers Hydratation

StorageBrowserRef est résolu de manière différée lors de l’appel de mastra.editor.agent.getById(). L’Editor recherche config.provider dans MastraEditor.browsers et appelle provider.createBrowser(config). Si le fournisseur n’est pas enregistré, l’Editor consigne un avertissement et renvoie undefined : l’Agent est tout de même chargé, mais sans navigateur.

  • Browser : concept et exemples détaillés.
  • BrowserProvider : interface du fournisseur destinée aux personnes qui l’implémentent.
  • BuilderAgentDefaults : emplacement où ce type est défini comme valeur par défaut du Builder.
  • StorageWorkspaceRef : type de référence analogue pour la configuration du Workspace.