FirecrawlBrowser 類別
FirecrawlBrowser 類別提供由 Firecrawl Browser Sandbox 支援的瀏覽器自動化功能。它會透過 Firecrawl API 建立遠端瀏覽器工作階段,並使用 Chrome DevTools Protocol (CDP) 連線。
FirecrawlBrowser 擴充了 AgentBrowser,並提供相同的確定性 Tool 集。想使用託管瀏覽器工作階段,而非在本機安裝 Chromium 時,請使用它。如需本機自動化,請參閱 AgentBrowser。如需使用自然語言的 AI 互動,請參閱 StagehandBrowser。
使用範例使用範例 的直接連結
src/mastra/agents/index.ts
import { Agent } from '@mastra/core/agent'
import { FirecrawlBrowser } from '@mastra/browser-firecrawl'
const browser = new FirecrawlBrowser({
apiKey: process.env.FIRECRAWL_API_KEY,
firecrawl: {
ttl: 600,
},
})
export const browserAgent = new Agent({
id: 'browser-agent',
name: 'Browser Agent',
instructions: `You can browse the web. Use browser_snapshot to see the page structure,
then interact with elements using their refs (e.g., @e5).`,
model: 'openai/gpt-5.6-sol',
browser,
})
建構函數參數建構函數參數 的直接連結
FirecrawlBrowser 接受所有 AgentBrowser 建構函數參數,以及以下參數:
apiKey?:
string
Firecrawl API 金鑰。未有提供時,會改用 FIRECRAWL_API_KEY 環境變數。如兩者均未設定,建構函數便會拋出錯誤。
apiUrl?:
string
自行託管 Firecrawl API 的基礎 URL。
firecrawl?:
FirecrawlBrowserSessionOptions
建立 Sandbox 工作階段時,傳遞至 Firecrawl browser() API 的工作階段選項。
FirecrawlBrowserSessionOptions
ttl?:
number
工作階段的最長存續時間(秒)。
activityTtl?:
number
Sandbox 回收工作階段前的閒置逾時時間(秒)。
streamWebView?:
boolean
設為 true 時,Firecrawl 可串流遠端工作階段的 WebView 畫面。
profile?:
{ name: string; saveChanges?: boolean }
具名的 Firecrawl Sandbox 設定檔。設置 saveChanges: true,可在工作階段結束時保留 Cookie 和登入狀態;單純為設定檔命名並不會儲存變更。這與最上層的 AgentBrowser profile 選項不同,後者是本機 Playwright 使用者資料目錄的路徑。
integration?:
string
供 Firecrawl 分析及路由使用的整合標籤。
origin?:
string
Firecrawl 瀏覽器工作階段的來源提示。
工作階段生命週期工作階段生命週期 的直接連結
工作階段的建立方式取決於從 AgentBrowser 繼承的 scope 選項:
'thread'(預設):每個對話執行緒都有自己的 Firecrawl Sandbox 工作階段。工作階段會在首次使用時建立,並在該執行緒的瀏覽器工作階段銷毀時刪除。'shared':瀏覽器啟動時會建立一個 Firecrawl Sandbox 工作階段,供所有執行緒共用。瀏覽器關閉時,工作階段亦會刪除。
無論是哪種情況,瀏覽器關閉時,FirecrawlBrowser 都會刪除遠端 Firecrawl 工作階段;即使建立工作階段或連線期間發生失敗,亦會如此。
ToolTool 的直接連結
FirecrawlBrowser 提供與 AgentBrowser 相同的 Tool 集,包括 browser_goto、browser_snapshot、browser_click、browser_type 及 browser_screenshot。如需完整清單及 Tool 參數,請參閱 AgentBrowser Tool 參考。