브라우저 제공자
BrowserProvider브라우저를 등록하기 위해 패키지가 구현하는 인터페이스입니다.MastraEditor. 편집자가 전화함createBrowser(config)Agent 수화 시간에 다음을 사용하여provider저장된 이드에서StorageBrowserRef조회 키로 사용됩니다.
내장 브라우저 Provider는 없습니다. Agent Builder에서 browser 기능을 사용하려면 Provider 패키지(예: @mastra/stagehand)를 등록하세요.
사용예사용예에 대한 직접 링크
src/mastra/index.ts
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<string, unknown>
Provider별 구성을 설명하는 JSON Schema입니다. UI에서 구성 양식을 렌더링하는 데 사용됩니다.
createBrowser:
(config: TConfig) => MastraBrowser | Promise<MastraBrowser>
저장된 구성으로 런타임
MastraBrowser 인스턴스를 생성합니다. Agent 하이드레이션마다 한 번 호출되며, 생성된 인스턴스는 Agent와 함께 캐시됩니다.공급자 구현공급자 구현에 대한 직접 링크
src/providers/my-browser.ts
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<MastraBrowser> {
// construct and return a MastraBrowser instance
return createMastraBrowser({ apiKey: config.apiKey })
},
}
등록되면 관리자는 다음을 통해 공급자를 빌더 기본값으로 고정할 수 있습니다.BuilderAgentDefaults.browser:
new MastraEditor({
browsers: { [myBrowserProvider.id]: myBrowserProvider },
builder: {
enabled: true,
configuration: {
agent: {
browser: { type: 'inline', config: { provider: 'my-browser' } },
},
},
},
})
관련된관련된에 대한 직접 링크
- 브라우저: 개념 및 작업 사례.
- 스토리지브라우저참조: 저장된 구성은 다음에서 사용됩니다.
createBrowser. - MastraEditor 클래스: 공급자 레지스트리.