firecrawl/firecrawl-interact
|
This is a copy. The original lives at aiskillstore/firecrawl-interact.
npx skills add https://github.com/firecrawl/cli --skill 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.
scrape failed because content is behind JavaScript interactionsearch instead# 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 [email protected]"
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
| 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 |
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 [email protected] 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
interact requires a scrape ID from a previous firecrawl scrape call--scrape-id for subsequent interact callsfirecrawl interact stop to free resources when done--scrape-idTake firecrawl/firecrawl-interact from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npx.
Without those the skill loads but fails at the first command.