All skills
firecrawl avatar

/firecrawl-interact

@509dd9c official
by firecrawlfirecrawl/cli643 stars
110

Drive a live browser on a scraped page: click, fill forms, log in, paginate, infinite-scroll. Use when content requires interaction or a scrape failed or returned incomplete content.

Use this Skill: https://skilld.dev/gh/firecrawl/cli/firecrawl-interact

This session only. Nothing lands on disk.

SKILL.md

≈51 tokens always: the name and description. ≈665 when used: this file.

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. For web searches, use search — interact is for acting on a specific page.

Quick start

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

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

# A UUID first argument is auto-detected as the scrape ID
firecrawl interact "<scrape-id>" "Extract the pricing table"

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

# 4. Stop the session when done
firecrawl interact stop

Run firecrawl interact --help for the full option list.

Done when: the requested content or action result is captured and the session is stopped with firecrawl interact stop.

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 can omit --scrape-id for subsequent interact calls. Saved sessions may expire after about 10 minutes; re-scrape if the CLI warns that the session is stale
  • Use firecrawl interact stop to free resources when done
  • For parallel work, scrape multiple pages and interact with each using --scrape-id

See also

Source: SKILL.md on GitHub

2 warnings17d4 checks · Risk SAFE
  • Gen Agent Trust Hub17d

    The skill is generally safe but possesses an inherent threat surface for indirect prompt injection since it is designed to scrape and interact with untrusted external web content.

  • Socket5mo

    1 alert: gptAnomaly

  • Snyk17d

    Risk: MEDIUM · 1 issue

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 509dd9c. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 17 hours ago.

Activeupdated last month
What it can do
Runs commands
All 2 allowed tools
Bash(firecrawl *)Bash(npx firecrawl-cli *)
  • CLI
  • firecrawl
  • web-scraping
  • browser-automation
  • form-filling
  • pagination
  • javascript
  • authentication

README badge

README badge for firecrawl/cli/firecrawl-interact

Interact with live browser sessions on scraped pages using natural language prompts or code — click buttons, fill forms, navigate multi-step flows, and extract data. Use when scraping alone fails due to JavaScript interactions, login walls, pagination, or infinite scroll. Part of the Firecrawl CLI workflow; always scrape first, then escalate to interact only when needed.

Generated from the current SKILL.md.

Do I need to scrape a page before using interact?
Yes. Always call `firecrawl scrape` first to create a scrape ID, then use `interact` to control that live browser session.
Can I use interact for web searches?
No. Use `firecrawl search` for web searches. Reserve `interact` for clicking, filling forms, and navigating flows on already-scraped pages.
How do I keep a user logged in across multiple interact commands?
Use the `--profile` flag on `firecrawl scrape` to persist browser state (cookies, localStorage). Subsequent scrapes and interact calls with the same profile name will reuse the authenticated session.
Can I run interact commands in different languages?
Yes. Use `--code` with `--language bash`, `python`, or `node` to execute precise browser control code instead of natural language prompts.
What should I do after finishing an interact session?
Call `firecrawl interact stop` to free browser resources and end the session.

Generated from the current SKILL.md. These answers refresh after source changes.