F

firecrawl-interact

by @firecrawlv
4.6(25)

Interacts with crawled pages in a real-time browser session, supporting clicks, form filling, navigation, and data extraction.

data-extractionweb-scrapingautomationdata-analysisinformation-retrievalGitHub
Installation
npx skills add firecrawl/cli --skill firecrawl-interact
compare_arrows

Before / After Comparison

1
Before

Manually operate the browser, fill out forms, click buttons, navigate through pages to view content, copy data item by item. A complex website can take several hours.

After

Automatically execute browser interactions, intelligently fill out forms and navigate, extract structured data. Complete the same task in 30 minutes.

SKILL.md

firecrawl-interact

firecrawl interact

Interact with scraped pages in a live browser session. Scrape a page first, then use natural language prompts or code to click, fill forms, navigate, and extract data.

When to use

  • Content requires interaction: clicks, form fills, pagination, login

  • scrape failed because content is behind JavaScript interaction

  • You need to navigate a multi-step flow

  • Last resort in the workflow escalation pattern: search → scrape → map → crawl → interact

  • Never use interact for web searches — use search instead

Quick start

# 1. Scrape a page (scrape ID is saved automatically)
firecrawl scrape "<url>"

# 2. Interact with the page using natural language
firecrawl interact --prompt "Click the login button"
firecrawl interact --prompt "Fill in the email field with test@example.com"
firecrawl interact --prompt "Extract the pricing table"

# 3. Or use code for precise control
firecrawl interact --code "agent-browser click @e5" --language bash
firecrawl interact --code "agent-browser snapshot -i" --language bash

# 4. Stop the session when done
firecrawl interact stop

Options

Option Description

--prompt <text> Natural language instruction (use this OR --code)

--code <code> Code to execute in the browser session

--language <lang> Language for code: bash, python, node

--timeout <seconds> Execution timeout (default: 30, max: 300)

--scrape-id <id> Target a specific scrape (default: last scrape)

-o, --output <path> Output file path

Profiles

Use --profile on the scrape to persist browser state (cookies, localStorage) across scrapes:

# Session 1: Login and save state
firecrawl scrape "https://app.example.com/login" --profile my-app
firecrawl interact --prompt "Fill in email with user@example.com and click login"

# Session 2: Come back authenticated
firecrawl scrape "https://app.example.com/dashboard" --profile my-app
firecrawl interact --prompt "Extract the dashboard data"

Read-only reconnect (no writes to profile state):

firecrawl scrape "https://app.example.com" --profile my-app --no-save-changes

Tips

  • Always scrape first — interact requires a scrape ID from a previous firecrawl scrape call

  • The scrape ID is saved automatically, so you don't need --scrape-id for subsequent interact calls

  • Use firecrawl interact stop to free resources when done

  • For parallel work, scrape multiple pages and interact with each using --scrape-id

See also

Weekly Installs2.4KRepositoryfirecrawl/cliGitHub Stars271First Seen4 days agoSecurity AuditsGen Agent Trust HubPassSocketWarnSnykWarnInstalled onclaude-code2.4Kcodex2.4Kgemini-cli2.4Kcursor2.4Kkimi-cli2.4Kopencode2.4K

User Reviews (0)

Write a Review

Effect
Usability
Docs
Compatibility

No reviews yet

Statistics

Installs28.7K
Rating4.6 / 5.0
Version
Updated2026年5月23日
Comparisons1

User Rating

4.6(25)
5
56%
4
32%
3
8%
2
4%
1
0%

Rate this Skill

0.0

Compatible Platforms

🔧Claude Code

Timeline

Created2026年4月14日
Last Updated2026年5月23日