[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-firecrawl-firecrawl-interact":3,"mdc-10j3lu-key":33,"related-repo-firecrawl-firecrawl-interact":888,"related-org-firecrawl-firecrawl-interact":969},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":29,"sourceUrl":31,"mdContent":32},"firecrawl-interact","interact with scraped web pages","Control and interact with a live browser session on any scraped page — click buttons, fill forms, navigate flows, and extract data using natural language prompts or code. Use when the user needs to interact with a webpage beyond simple scraping: logging into a site, submitting forms, clicking through pagination, handling infinite scroll, navigating multi-step checkout or wizard flows, or when a regular scrape failed because content is behind JavaScript interaction. Also useful for authenticated scraping via profiles. Triggers on \"interact\", \"click\", \"fill out the form\", \"log in to\", \"sign in\", \"submit\", \"paginated\", \"next page\", \"infinite scroll\", \"interact with the page\", \"navigate to\", \"open a session\", or \"scrape failed\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"firecrawl","Firecrawl","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Ffirecrawl.png",[12,16,19,20],{"name":13,"slug":14,"type":15},"Automation","automation","tag",{"name":17,"slug":18,"type":15},"Web Scraping","web-scraping",{"name":9,"slug":8,"type":15},{"name":21,"slug":22,"type":15},"Browser Automation","browser-automation",6,"https:\u002F\u002Fgithub.com\u002Ffirecrawl\u002Ffirecrawl-codex-plugin","2026-06-30T07:01:34.627",null,3,[],{"repoUrl":24,"stars":23,"forks":27,"topics":30,"description":26},[],"https:\u002F\u002Fgithub.com\u002Ffirecrawl\u002Ffirecrawl-codex-plugin\u002Ftree\u002FHEAD\u002Fskills\u002Ffirecrawl-interact","---\nname: firecrawl-interact\ndescription: |\n  Control and interact with a live browser session on any scraped page — click buttons, fill forms, navigate flows, and extract data using natural language prompts or code. Use when the user needs to interact with a webpage beyond simple scraping: logging into a site, submitting forms, clicking through pagination, handling infinite scroll, navigating multi-step checkout or wizard flows, or when a regular scrape failed because content is behind JavaScript interaction. Also useful for authenticated scraping via profiles. Triggers on \"interact\", \"click\", \"fill out the form\", \"log in to\", \"sign in\", \"submit\", \"paginated\", \"next page\", \"infinite scroll\", \"interact with the page\", \"navigate to\", \"open a session\", or \"scrape failed\".\n---\n\n# firecrawl interact\n\nInteract 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.\n\n## When to use\n\n- Content requires interaction: clicks, form fills, pagination, login\n- `scrape` failed because content is behind JavaScript interaction\n- You need to navigate a multi-step flow\n- Last resort in the [workflow escalation pattern](..\u002Ffirecrawl-cli\u002FSKILL.md): search → scrape → map → crawl → **interact**\n- **Never use interact for web searches** — use `search` instead\n\n## Quick start\n\n```bash\n# 1. Scrape a page (scrape ID is saved automatically)\nfirecrawl scrape \"\u003Curl>\"\n\n# 2. Interact with the page using natural language\nfirecrawl interact --prompt \"Click the login button\"\nfirecrawl interact --prompt \"Fill in the email field with test@example.com\"\nfirecrawl interact --prompt \"Extract the pricing table\"\n\n# 3. Or use code for precise control\nfirecrawl interact --code \"agent-browser click @e5\" --language bash\nfirecrawl interact --code \"agent-browser snapshot -i\" --language bash\n\n# 4. Stop the session when done\nfirecrawl interact stop\n```\n\n## Options\n\n| Option                | Description                                       |\n| --------------------- | ------------------------------------------------- |\n| `--prompt \u003Ctext>`     | Natural language instruction (use this OR --code) |\n| `--code \u003Ccode>`       | Code to execute in the browser session            |\n| `--language \u003Clang>`   | Language for code: bash, python, node             |\n| `--timeout \u003Cseconds>` | Execution timeout (default: 30, max: 300)         |\n| `--scrape-id \u003Cid>`    | Target a specific scrape (default: last scrape)   |\n| `-o, --output \u003Cpath>` | Output file path                                  |\n\n## Profiles\n\nUse `--profile` on the scrape to persist browser state (cookies, localStorage) across scrapes:\n\n```bash\n# Session 1: Login and save state\nfirecrawl scrape \"https:\u002F\u002Fapp.example.com\u002Flogin\" --profile my-app\nfirecrawl interact --prompt \"Fill in email with user@example.com and click login\"\n\n# Session 2: Come back authenticated\nfirecrawl scrape \"https:\u002F\u002Fapp.example.com\u002Fdashboard\" --profile my-app\nfirecrawl interact --prompt \"Extract the dashboard data\"\n```\n\nRead-only reconnect (no writes to profile state):\n\n```bash\nfirecrawl scrape \"https:\u002F\u002Fapp.example.com\" --profile my-app --no-save-changes\n```\n\n## Tips\n\n- Always scrape first — `interact` requires a scrape ID from a previous `firecrawl scrape` call\n- The scrape ID is saved automatically, so you don't need `--scrape-id` for subsequent interact calls\n- Use `firecrawl interact stop` to free resources when done\n- For parallel work, scrape multiple pages and interact with each using `--scrape-id`\n\n## See also\n\n- [firecrawl-scrape](..\u002Ffirecrawl-scrape\u002FSKILL.md) — try scrape first, escalate to interact only when needed\n- [firecrawl-search](..\u002Ffirecrawl-search\u002FSKILL.md) — for web searches (never use interact for searching)\n- [firecrawl-agent](..\u002Ffirecrawl-agent\u002FSKILL.md) — AI-powered extraction (less manual control)\n",{"data":34,"body":35},{"name":4,"description":6},{"type":36,"children":37},"root",[38,46,52,59,124,130,419,425,555,561,574,726,731,776,782,840,846,882],{"type":39,"tag":40,"props":41,"children":42},"element","h1",{"id":4},[43],{"type":44,"value":45},"text","firecrawl interact",{"type":39,"tag":47,"props":48,"children":49},"p",{},[50],{"type":44,"value":51},"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.",{"type":39,"tag":53,"props":54,"children":56},"h2",{"id":55},"when-to-use",[57],{"type":44,"value":58},"When to use",{"type":39,"tag":60,"props":61,"children":62},"ul",{},[63,69,81,86,106],{"type":39,"tag":64,"props":65,"children":66},"li",{},[67],{"type":44,"value":68},"Content requires interaction: clicks, form fills, pagination, login",{"type":39,"tag":64,"props":70,"children":71},{},[72,79],{"type":39,"tag":73,"props":74,"children":76},"code",{"className":75},[],[77],{"type":44,"value":78},"scrape",{"type":44,"value":80}," failed because content is behind JavaScript interaction",{"type":39,"tag":64,"props":82,"children":83},{},[84],{"type":44,"value":85},"You need to navigate a multi-step flow",{"type":39,"tag":64,"props":87,"children":88},{},[89,91,98,100],{"type":44,"value":90},"Last resort in the ",{"type":39,"tag":92,"props":93,"children":95},"a",{"href":94},"..\u002Ffirecrawl-cli\u002FSKILL.md",[96],{"type":44,"value":97},"workflow escalation pattern",{"type":44,"value":99},": search → scrape → map → crawl → ",{"type":39,"tag":101,"props":102,"children":103},"strong",{},[104],{"type":44,"value":105},"interact",{"type":39,"tag":64,"props":107,"children":108},{},[109,114,116,122],{"type":39,"tag":101,"props":110,"children":111},{},[112],{"type":44,"value":113},"Never use interact for web searches",{"type":44,"value":115}," — use ",{"type":39,"tag":73,"props":117,"children":119},{"className":118},[],[120],{"type":44,"value":121},"search",{"type":44,"value":123}," instead",{"type":39,"tag":53,"props":125,"children":127},{"id":126},"quick-start",[128],{"type":44,"value":129},"Quick start",{"type":39,"tag":131,"props":132,"children":137},"pre",{"className":133,"code":134,"language":135,"meta":136,"style":136},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# 1. Scrape a page (scrape ID is saved automatically)\nfirecrawl scrape \"\u003Curl>\"\n\n# 2. Interact with the page using natural language\nfirecrawl interact --prompt \"Click the login button\"\nfirecrawl interact --prompt \"Fill in the email field with test@example.com\"\nfirecrawl interact --prompt \"Extract the pricing table\"\n\n# 3. Or use code for precise control\nfirecrawl interact --code \"agent-browser click @e5\" --language bash\nfirecrawl interact --code \"agent-browser snapshot -i\" --language bash\n\n# 4. Stop the session when done\nfirecrawl interact stop\n","bash","",[138],{"type":39,"tag":73,"props":139,"children":140},{"__ignoreMap":136},[141,153,184,193,202,233,261,290,298,307,348,385,393,402],{"type":39,"tag":142,"props":143,"children":146},"span",{"class":144,"line":145},"line",1,[147],{"type":39,"tag":142,"props":148,"children":150},{"style":149},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[151],{"type":44,"value":152},"# 1. Scrape a page (scrape ID is saved automatically)\n",{"type":39,"tag":142,"props":154,"children":156},{"class":144,"line":155},2,[157,162,168,174,179],{"type":39,"tag":142,"props":158,"children":160},{"style":159},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[161],{"type":44,"value":8},{"type":39,"tag":142,"props":163,"children":165},{"style":164},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[166],{"type":44,"value":167}," scrape",{"type":39,"tag":142,"props":169,"children":171},{"style":170},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[172],{"type":44,"value":173}," \"",{"type":39,"tag":142,"props":175,"children":176},{"style":164},[177],{"type":44,"value":178},"\u003Curl>",{"type":39,"tag":142,"props":180,"children":181},{"style":170},[182],{"type":44,"value":183},"\"\n",{"type":39,"tag":142,"props":185,"children":186},{"class":144,"line":27},[187],{"type":39,"tag":142,"props":188,"children":190},{"emptyLinePlaceholder":189},true,[191],{"type":44,"value":192},"\n",{"type":39,"tag":142,"props":194,"children":196},{"class":144,"line":195},4,[197],{"type":39,"tag":142,"props":198,"children":199},{"style":149},[200],{"type":44,"value":201},"# 2. Interact with the page using natural language\n",{"type":39,"tag":142,"props":203,"children":205},{"class":144,"line":204},5,[206,210,215,220,224,229],{"type":39,"tag":142,"props":207,"children":208},{"style":159},[209],{"type":44,"value":8},{"type":39,"tag":142,"props":211,"children":212},{"style":164},[213],{"type":44,"value":214}," interact",{"type":39,"tag":142,"props":216,"children":217},{"style":164},[218],{"type":44,"value":219}," --prompt",{"type":39,"tag":142,"props":221,"children":222},{"style":170},[223],{"type":44,"value":173},{"type":39,"tag":142,"props":225,"children":226},{"style":164},[227],{"type":44,"value":228},"Click the login button",{"type":39,"tag":142,"props":230,"children":231},{"style":170},[232],{"type":44,"value":183},{"type":39,"tag":142,"props":234,"children":235},{"class":144,"line":23},[236,240,244,248,252,257],{"type":39,"tag":142,"props":237,"children":238},{"style":159},[239],{"type":44,"value":8},{"type":39,"tag":142,"props":241,"children":242},{"style":164},[243],{"type":44,"value":214},{"type":39,"tag":142,"props":245,"children":246},{"style":164},[247],{"type":44,"value":219},{"type":39,"tag":142,"props":249,"children":250},{"style":170},[251],{"type":44,"value":173},{"type":39,"tag":142,"props":253,"children":254},{"style":164},[255],{"type":44,"value":256},"Fill in the email field with test@example.com",{"type":39,"tag":142,"props":258,"children":259},{"style":170},[260],{"type":44,"value":183},{"type":39,"tag":142,"props":262,"children":264},{"class":144,"line":263},7,[265,269,273,277,281,286],{"type":39,"tag":142,"props":266,"children":267},{"style":159},[268],{"type":44,"value":8},{"type":39,"tag":142,"props":270,"children":271},{"style":164},[272],{"type":44,"value":214},{"type":39,"tag":142,"props":274,"children":275},{"style":164},[276],{"type":44,"value":219},{"type":39,"tag":142,"props":278,"children":279},{"style":170},[280],{"type":44,"value":173},{"type":39,"tag":142,"props":282,"children":283},{"style":164},[284],{"type":44,"value":285},"Extract the pricing table",{"type":39,"tag":142,"props":287,"children":288},{"style":170},[289],{"type":44,"value":183},{"type":39,"tag":142,"props":291,"children":293},{"class":144,"line":292},8,[294],{"type":39,"tag":142,"props":295,"children":296},{"emptyLinePlaceholder":189},[297],{"type":44,"value":192},{"type":39,"tag":142,"props":299,"children":301},{"class":144,"line":300},9,[302],{"type":39,"tag":142,"props":303,"children":304},{"style":149},[305],{"type":44,"value":306},"# 3. Or use code for precise control\n",{"type":39,"tag":142,"props":308,"children":310},{"class":144,"line":309},10,[311,315,319,324,328,333,338,343],{"type":39,"tag":142,"props":312,"children":313},{"style":159},[314],{"type":44,"value":8},{"type":39,"tag":142,"props":316,"children":317},{"style":164},[318],{"type":44,"value":214},{"type":39,"tag":142,"props":320,"children":321},{"style":164},[322],{"type":44,"value":323}," --code",{"type":39,"tag":142,"props":325,"children":326},{"style":170},[327],{"type":44,"value":173},{"type":39,"tag":142,"props":329,"children":330},{"style":164},[331],{"type":44,"value":332},"agent-browser click @e5",{"type":39,"tag":142,"props":334,"children":335},{"style":170},[336],{"type":44,"value":337},"\"",{"type":39,"tag":142,"props":339,"children":340},{"style":164},[341],{"type":44,"value":342}," --language",{"type":39,"tag":142,"props":344,"children":345},{"style":164},[346],{"type":44,"value":347}," bash\n",{"type":39,"tag":142,"props":349,"children":351},{"class":144,"line":350},11,[352,356,360,364,368,373,377,381],{"type":39,"tag":142,"props":353,"children":354},{"style":159},[355],{"type":44,"value":8},{"type":39,"tag":142,"props":357,"children":358},{"style":164},[359],{"type":44,"value":214},{"type":39,"tag":142,"props":361,"children":362},{"style":164},[363],{"type":44,"value":323},{"type":39,"tag":142,"props":365,"children":366},{"style":170},[367],{"type":44,"value":173},{"type":39,"tag":142,"props":369,"children":370},{"style":164},[371],{"type":44,"value":372},"agent-browser snapshot -i",{"type":39,"tag":142,"props":374,"children":375},{"style":170},[376],{"type":44,"value":337},{"type":39,"tag":142,"props":378,"children":379},{"style":164},[380],{"type":44,"value":342},{"type":39,"tag":142,"props":382,"children":383},{"style":164},[384],{"type":44,"value":347},{"type":39,"tag":142,"props":386,"children":388},{"class":144,"line":387},12,[389],{"type":39,"tag":142,"props":390,"children":391},{"emptyLinePlaceholder":189},[392],{"type":44,"value":192},{"type":39,"tag":142,"props":394,"children":396},{"class":144,"line":395},13,[397],{"type":39,"tag":142,"props":398,"children":399},{"style":149},[400],{"type":44,"value":401},"# 4. Stop the session when done\n",{"type":39,"tag":142,"props":403,"children":405},{"class":144,"line":404},14,[406,410,414],{"type":39,"tag":142,"props":407,"children":408},{"style":159},[409],{"type":44,"value":8},{"type":39,"tag":142,"props":411,"children":412},{"style":164},[413],{"type":44,"value":214},{"type":39,"tag":142,"props":415,"children":416},{"style":164},[417],{"type":44,"value":418}," stop\n",{"type":39,"tag":53,"props":420,"children":422},{"id":421},"options",[423],{"type":44,"value":424},"Options",{"type":39,"tag":426,"props":427,"children":428},"table",{},[429,448],{"type":39,"tag":430,"props":431,"children":432},"thead",{},[433],{"type":39,"tag":434,"props":435,"children":436},"tr",{},[437,443],{"type":39,"tag":438,"props":439,"children":440},"th",{},[441],{"type":44,"value":442},"Option",{"type":39,"tag":438,"props":444,"children":445},{},[446],{"type":44,"value":447},"Description",{"type":39,"tag":449,"props":450,"children":451},"tbody",{},[452,470,487,504,521,538],{"type":39,"tag":434,"props":453,"children":454},{},[455,465],{"type":39,"tag":456,"props":457,"children":458},"td",{},[459],{"type":39,"tag":73,"props":460,"children":462},{"className":461},[],[463],{"type":44,"value":464},"--prompt \u003Ctext>",{"type":39,"tag":456,"props":466,"children":467},{},[468],{"type":44,"value":469},"Natural language instruction (use this OR --code)",{"type":39,"tag":434,"props":471,"children":472},{},[473,482],{"type":39,"tag":456,"props":474,"children":475},{},[476],{"type":39,"tag":73,"props":477,"children":479},{"className":478},[],[480],{"type":44,"value":481},"--code \u003Ccode>",{"type":39,"tag":456,"props":483,"children":484},{},[485],{"type":44,"value":486},"Code to execute in the browser session",{"type":39,"tag":434,"props":488,"children":489},{},[490,499],{"type":39,"tag":456,"props":491,"children":492},{},[493],{"type":39,"tag":73,"props":494,"children":496},{"className":495},[],[497],{"type":44,"value":498},"--language \u003Clang>",{"type":39,"tag":456,"props":500,"children":501},{},[502],{"type":44,"value":503},"Language for code: bash, python, node",{"type":39,"tag":434,"props":505,"children":506},{},[507,516],{"type":39,"tag":456,"props":508,"children":509},{},[510],{"type":39,"tag":73,"props":511,"children":513},{"className":512},[],[514],{"type":44,"value":515},"--timeout \u003Cseconds>",{"type":39,"tag":456,"props":517,"children":518},{},[519],{"type":44,"value":520},"Execution timeout (default: 30, max: 300)",{"type":39,"tag":434,"props":522,"children":523},{},[524,533],{"type":39,"tag":456,"props":525,"children":526},{},[527],{"type":39,"tag":73,"props":528,"children":530},{"className":529},[],[531],{"type":44,"value":532},"--scrape-id \u003Cid>",{"type":39,"tag":456,"props":534,"children":535},{},[536],{"type":44,"value":537},"Target a specific scrape (default: last scrape)",{"type":39,"tag":434,"props":539,"children":540},{},[541,550],{"type":39,"tag":456,"props":542,"children":543},{},[544],{"type":39,"tag":73,"props":545,"children":547},{"className":546},[],[548],{"type":44,"value":549},"-o, --output \u003Cpath>",{"type":39,"tag":456,"props":551,"children":552},{},[553],{"type":44,"value":554},"Output file path",{"type":39,"tag":53,"props":556,"children":558},{"id":557},"profiles",[559],{"type":44,"value":560},"Profiles",{"type":39,"tag":47,"props":562,"children":563},{},[564,566,572],{"type":44,"value":565},"Use ",{"type":39,"tag":73,"props":567,"children":569},{"className":568},[],[570],{"type":44,"value":571},"--profile",{"type":44,"value":573}," on the scrape to persist browser state (cookies, localStorage) across scrapes:",{"type":39,"tag":131,"props":575,"children":577},{"className":133,"code":576,"language":135,"meta":136,"style":136},"# Session 1: Login and save state\nfirecrawl scrape \"https:\u002F\u002Fapp.example.com\u002Flogin\" --profile my-app\nfirecrawl interact --prompt \"Fill in email with user@example.com and click login\"\n\n# Session 2: Come back authenticated\nfirecrawl scrape \"https:\u002F\u002Fapp.example.com\u002Fdashboard\" --profile my-app\nfirecrawl interact --prompt \"Extract the dashboard data\"\n",[578],{"type":39,"tag":73,"props":579,"children":580},{"__ignoreMap":136},[581,589,623,651,658,666,698],{"type":39,"tag":142,"props":582,"children":583},{"class":144,"line":145},[584],{"type":39,"tag":142,"props":585,"children":586},{"style":149},[587],{"type":44,"value":588},"# Session 1: Login and save state\n",{"type":39,"tag":142,"props":590,"children":591},{"class":144,"line":155},[592,596,600,604,609,613,618],{"type":39,"tag":142,"props":593,"children":594},{"style":159},[595],{"type":44,"value":8},{"type":39,"tag":142,"props":597,"children":598},{"style":164},[599],{"type":44,"value":167},{"type":39,"tag":142,"props":601,"children":602},{"style":170},[603],{"type":44,"value":173},{"type":39,"tag":142,"props":605,"children":606},{"style":164},[607],{"type":44,"value":608},"https:\u002F\u002Fapp.example.com\u002Flogin",{"type":39,"tag":142,"props":610,"children":611},{"style":170},[612],{"type":44,"value":337},{"type":39,"tag":142,"props":614,"children":615},{"style":164},[616],{"type":44,"value":617}," --profile",{"type":39,"tag":142,"props":619,"children":620},{"style":164},[621],{"type":44,"value":622}," my-app\n",{"type":39,"tag":142,"props":624,"children":625},{"class":144,"line":27},[626,630,634,638,642,647],{"type":39,"tag":142,"props":627,"children":628},{"style":159},[629],{"type":44,"value":8},{"type":39,"tag":142,"props":631,"children":632},{"style":164},[633],{"type":44,"value":214},{"type":39,"tag":142,"props":635,"children":636},{"style":164},[637],{"type":44,"value":219},{"type":39,"tag":142,"props":639,"children":640},{"style":170},[641],{"type":44,"value":173},{"type":39,"tag":142,"props":643,"children":644},{"style":164},[645],{"type":44,"value":646},"Fill in email with user@example.com and click login",{"type":39,"tag":142,"props":648,"children":649},{"style":170},[650],{"type":44,"value":183},{"type":39,"tag":142,"props":652,"children":653},{"class":144,"line":195},[654],{"type":39,"tag":142,"props":655,"children":656},{"emptyLinePlaceholder":189},[657],{"type":44,"value":192},{"type":39,"tag":142,"props":659,"children":660},{"class":144,"line":204},[661],{"type":39,"tag":142,"props":662,"children":663},{"style":149},[664],{"type":44,"value":665},"# Session 2: Come back authenticated\n",{"type":39,"tag":142,"props":667,"children":668},{"class":144,"line":23},[669,673,677,681,686,690,694],{"type":39,"tag":142,"props":670,"children":671},{"style":159},[672],{"type":44,"value":8},{"type":39,"tag":142,"props":674,"children":675},{"style":164},[676],{"type":44,"value":167},{"type":39,"tag":142,"props":678,"children":679},{"style":170},[680],{"type":44,"value":173},{"type":39,"tag":142,"props":682,"children":683},{"style":164},[684],{"type":44,"value":685},"https:\u002F\u002Fapp.example.com\u002Fdashboard",{"type":39,"tag":142,"props":687,"children":688},{"style":170},[689],{"type":44,"value":337},{"type":39,"tag":142,"props":691,"children":692},{"style":164},[693],{"type":44,"value":617},{"type":39,"tag":142,"props":695,"children":696},{"style":164},[697],{"type":44,"value":622},{"type":39,"tag":142,"props":699,"children":700},{"class":144,"line":263},[701,705,709,713,717,722],{"type":39,"tag":142,"props":702,"children":703},{"style":159},[704],{"type":44,"value":8},{"type":39,"tag":142,"props":706,"children":707},{"style":164},[708],{"type":44,"value":214},{"type":39,"tag":142,"props":710,"children":711},{"style":164},[712],{"type":44,"value":219},{"type":39,"tag":142,"props":714,"children":715},{"style":170},[716],{"type":44,"value":173},{"type":39,"tag":142,"props":718,"children":719},{"style":164},[720],{"type":44,"value":721},"Extract the dashboard data",{"type":39,"tag":142,"props":723,"children":724},{"style":170},[725],{"type":44,"value":183},{"type":39,"tag":47,"props":727,"children":728},{},[729],{"type":44,"value":730},"Read-only reconnect (no writes to profile state):",{"type":39,"tag":131,"props":732,"children":734},{"className":133,"code":733,"language":135,"meta":136,"style":136},"firecrawl scrape \"https:\u002F\u002Fapp.example.com\" --profile my-app --no-save-changes\n",[735],{"type":39,"tag":73,"props":736,"children":737},{"__ignoreMap":136},[738],{"type":39,"tag":142,"props":739,"children":740},{"class":144,"line":145},[741,745,749,753,758,762,766,771],{"type":39,"tag":142,"props":742,"children":743},{"style":159},[744],{"type":44,"value":8},{"type":39,"tag":142,"props":746,"children":747},{"style":164},[748],{"type":44,"value":167},{"type":39,"tag":142,"props":750,"children":751},{"style":170},[752],{"type":44,"value":173},{"type":39,"tag":142,"props":754,"children":755},{"style":164},[756],{"type":44,"value":757},"https:\u002F\u002Fapp.example.com",{"type":39,"tag":142,"props":759,"children":760},{"style":170},[761],{"type":44,"value":337},{"type":39,"tag":142,"props":763,"children":764},{"style":164},[765],{"type":44,"value":617},{"type":39,"tag":142,"props":767,"children":768},{"style":164},[769],{"type":44,"value":770}," my-app",{"type":39,"tag":142,"props":772,"children":773},{"style":164},[774],{"type":44,"value":775}," --no-save-changes\n",{"type":39,"tag":53,"props":777,"children":779},{"id":778},"tips",[780],{"type":44,"value":781},"Tips",{"type":39,"tag":60,"props":783,"children":784},{},[785,805,818,830],{"type":39,"tag":64,"props":786,"children":787},{},[788,790,795,797,803],{"type":44,"value":789},"Always scrape first — ",{"type":39,"tag":73,"props":791,"children":793},{"className":792},[],[794],{"type":44,"value":105},{"type":44,"value":796}," requires a scrape ID from a previous ",{"type":39,"tag":73,"props":798,"children":800},{"className":799},[],[801],{"type":44,"value":802},"firecrawl scrape",{"type":44,"value":804}," call",{"type":39,"tag":64,"props":806,"children":807},{},[808,810,816],{"type":44,"value":809},"The scrape ID is saved automatically, so you don't need ",{"type":39,"tag":73,"props":811,"children":813},{"className":812},[],[814],{"type":44,"value":815},"--scrape-id",{"type":44,"value":817}," for subsequent interact calls",{"type":39,"tag":64,"props":819,"children":820},{},[821,822,828],{"type":44,"value":565},{"type":39,"tag":73,"props":823,"children":825},{"className":824},[],[826],{"type":44,"value":827},"firecrawl interact stop",{"type":44,"value":829}," to free resources when done",{"type":39,"tag":64,"props":831,"children":832},{},[833,835],{"type":44,"value":834},"For parallel work, scrape multiple pages and interact with each using ",{"type":39,"tag":73,"props":836,"children":838},{"className":837},[],[839],{"type":44,"value":815},{"type":39,"tag":53,"props":841,"children":843},{"id":842},"see-also",[844],{"type":44,"value":845},"See also",{"type":39,"tag":60,"props":847,"children":848},{},[849,860,871],{"type":39,"tag":64,"props":850,"children":851},{},[852,858],{"type":39,"tag":92,"props":853,"children":855},{"href":854},"..\u002Ffirecrawl-scrape\u002FSKILL.md",[856],{"type":44,"value":857},"firecrawl-scrape",{"type":44,"value":859}," — try scrape first, escalate to interact only when needed",{"type":39,"tag":64,"props":861,"children":862},{},[863,869],{"type":39,"tag":92,"props":864,"children":866},{"href":865},"..\u002Ffirecrawl-search\u002FSKILL.md",[867],{"type":44,"value":868},"firecrawl-search",{"type":44,"value":870}," — for web searches (never use interact for searching)",{"type":39,"tag":64,"props":872,"children":873},{},[874,880],{"type":39,"tag":92,"props":875,"children":877},{"href":876},"..\u002Ffirecrawl-agent\u002FSKILL.md",[878],{"type":44,"value":879},"firecrawl-agent",{"type":44,"value":881}," — AI-powered extraction (less manual control)",{"type":39,"tag":883,"props":884,"children":885},"style",{},[886],{"type":44,"value":887},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":889,"total":292},[890,902,913,924,931,941,960],{"slug":8,"name":8,"fn":891,"description":892,"org":893,"tags":894,"stars":23,"repoUrl":24,"updatedAt":25},"search and scrape web content","Search, scrape, and interact with the web via the Firecrawl CLI. Use this skill whenever the user wants to search the web, find articles, research a topic, look something up online, scrape a webpage, grab content from a URL, get data from a website, crawl documentation, or interact with pages that need clicks or logins. Also use when they say \"fetch this page\", \"pull the content from\", \"get the page at https:\u002F\u002F\", or reference external websites. This provides real-time web search with full page content and interact capabilities — beyond typical built-in browsing without the Firecrawl CLI. Do NOT trigger for local file operations, git commands, deployments, or code editing tasks.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[895,898,899,901],{"name":896,"slug":897,"type":15},"CLI","cli",{"name":9,"slug":8,"type":15},{"name":900,"slug":121,"type":15},"Search",{"name":17,"slug":18,"type":15},{"slug":879,"name":879,"fn":903,"description":904,"org":905,"tags":906,"stars":23,"repoUrl":24,"updatedAt":25},"extract structured data from websites","AI-powered autonomous data extraction that navigates complex sites and returns structured JSON. Use this skill when the user wants structured data from websites, needs to extract pricing tiers, product listings, directory entries, or any data as JSON with a schema. Triggers on \"extract structured data\", \"get all the products\", \"pull pricing info\", \"extract as JSON\", or when the user provides a JSON schema for website data. More powerful than simple scraping for multi-page structured extraction.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[907,908,911,912],{"name":13,"slug":14,"type":15},{"name":909,"slug":910,"type":15},"Data Analysis","data-analysis",{"name":9,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"slug":914,"name":914,"fn":915,"description":916,"org":917,"tags":918,"stars":23,"repoUrl":24,"updatedAt":25},"firecrawl-crawl","bulk extract content from websites","Bulk extract content from an entire website or site section. Use this skill when the user wants to crawl a site, extract all pages from a docs section, bulk-scrape multiple pages following links, or says \"crawl\", \"get all the pages\", \"extract everything under \u002Fdocs\", \"bulk extract\", or needs content from many pages on the same site. Handles depth limits, path filtering, and concurrent extraction.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[919,922,923],{"name":920,"slug":921,"type":15},"Data Engineering","data-engineering",{"name":9,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"slug":4,"name":4,"fn":5,"description":6,"org":925,"tags":926,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[927,928,929,930],{"name":13,"slug":14,"type":15},{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"slug":932,"name":932,"fn":933,"description":934,"org":935,"tags":936,"stars":23,"repoUrl":24,"updatedAt":25},"firecrawl-map","map website URLs and site structure","Discover and list all URLs on a website, with optional search filtering. Use this skill when the user wants to find a specific page on a large site, list all URLs, see the site structure, find where something is on a domain, or says \"map the site\", \"find the URL for\", \"what pages are on\", or \"list all pages\". Essential when the user knows which site but not which exact page.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[937,938,939,940],{"name":896,"slug":897,"type":15},{"name":9,"slug":8,"type":15},{"name":900,"slug":121,"type":15},{"name":17,"slug":18,"type":15},{"slug":942,"name":942,"fn":943,"description":944,"org":945,"tags":946,"stars":23,"repoUrl":24,"updatedAt":25},"firecrawl-parse","extract and convert files to markdown","Efficiently extract and convert the contents of any local file—such as PDF, DOCX, DOC, ODT, RTF, XLSX, XLS, or HTML—into clean, well-formatted markdown saved to disk. Use this skill whenever the user requests to parse, read, or extract information from a file on their computer, including phrases like “parse this PDF”, “convert this document”, “read this file”, “extract text from”, or when a local file path (not a URL) is provided. This skill offers advanced options like generating AI-powered summaries and answering questions based on the file's content. Prefer this tool over `scrape` when handling local files to deliver precise, structured outputs for downstream tasks.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[947,950,953,954,957],{"name":948,"slug":949,"type":15},"Data Cleaning","data-cleaning",{"name":951,"slug":952,"type":15},"DOCX","docx",{"name":9,"slug":8,"type":15},{"name":955,"slug":956,"type":15},"HTML","html",{"name":958,"slug":959,"type":15},"PDF","pdf",{"slug":857,"name":857,"fn":961,"description":962,"org":963,"tags":964,"stars":23,"repoUrl":24,"updatedAt":25},"scrape and extract content with Firecrawl","Extract clean markdown from any URL, including JavaScript-rendered SPAs. Use this skill whenever the user provides a URL and wants its content, says \"scrape\", \"grab\", \"fetch\", \"pull\", \"get the page\", \"extract from this URL\", or \"read this webpage\". Handles JS-rendered pages, multiple concurrent URLs, and returns LLM-optimized markdown. Use this instead of WebFetch for any webpage content extraction.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[965,966,967,968],{"name":13,"slug":14,"type":15},{"name":948,"slug":949,"type":15},{"name":9,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"items":970,"total":1126},[971,987,999,1010,1025,1038,1047,1060,1072,1089,1104,1116],{"slug":972,"name":972,"fn":973,"description":974,"org":975,"tags":976,"stars":984,"repoUrl":985,"updatedAt":986},"competitor-analysis","analyze competitors across features and pricing","Compare two or more companies, products, or platforms across pricing, features, positioning, and docs. Use this skill whenever the user says \"compare X vs Y\", \"how does X stack up against Y\", \"alternatives to X\", \"competitive landscape of …\", \"X vs Y vs Z\", or asks for a competitor matrix. Uses search to discover competitors when the user only names a category, then scrape for each competitor's homepage, pricing page, and features\u002Fdocs. Returns a normalized comparison matrix as JSON.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[977,980,981],{"name":978,"slug":979,"type":15},"Competitive Intelligence","competitive-intelligence",{"name":9,"slug":8,"type":15},{"name":982,"slug":983,"type":15},"Research","research",1130,"https:\u002F\u002Fgithub.com\u002Ffirecrawl\u002Fweb-agent","2026-04-17T05:00:44.623049",{"slug":988,"name":988,"fn":989,"description":990,"org":991,"tags":992,"stars":984,"repoUrl":985,"updatedAt":998},"deep-research","conduct multi-source deep research","Multi-source research with source triangulation and fact-checking. Use for any research task requiring 3+ sources.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[993,994,997],{"name":9,"slug":8,"type":15},{"name":995,"slug":996,"type":15},"Knowledge Management","knowledge-management",{"name":982,"slug":983,"type":15},"2026-04-17T05:00:45.852512",{"slug":1000,"name":1000,"fn":1001,"description":1002,"org":1003,"tags":1004,"stars":984,"repoUrl":985,"updatedAt":1009},"e-commerce","extract product data from e-commerce sites","Navigate e-commerce sites to extract products, pricing, categories, and inventory. Handles pagination, variants, and JS-heavy storefronts.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1005,1007,1008],{"name":1006,"slug":1000,"type":15},"E-commerce",{"name":9,"slug":8,"type":15},{"name":17,"slug":18,"type":15},"2026-05-15T06:15:30.880268",{"slug":1011,"name":1011,"fn":1012,"description":1013,"org":1014,"tags":1015,"stars":984,"repoUrl":985,"updatedAt":1024},"financial-research","pull financial data for public companies","Pull company financials, SEC filings, and analyst consensus for a public company. Use this skill whenever the user says \"10-K\", \"10-Q\", \"earnings\", \"revenue of\", \"financials for\", \"analyst rating for\", \"price target for\", or provides a stock ticker. Combines SEC EDGAR for official filings with Yahoo Finance \u002F TipRanks for analyst data. Search + scrape only; no interact needed.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1016,1019,1020,1021],{"name":1017,"slug":1018,"type":15},"Finance","finance",{"name":9,"slug":8,"type":15},{"name":982,"slug":983,"type":15},{"name":1022,"slug":1023,"type":15},"SEC Filings","sec-filings","2026-05-15T06:15:33.293957",{"slug":1026,"name":1026,"fn":1027,"description":1028,"org":1029,"tags":1030,"stars":984,"repoUrl":985,"updatedAt":1037},"pricing-tracker","track and compare vendor pricing tiers","Extract and normalize pricing tiers from any SaaS, API, cloud, or LLM vendor's pricing page. Use this skill whenever the user says \"pricing for X\", \"how much does X cost\", \"pricing tiers\", \"cost comparison\", provides a URL ending in `\u002Fpricing` or `\u002Fplans`, or asks to monitor pricing over time. Pairs well with `exportSkill` to turn a run into a cron-friendly workflow. Scrape-driven; no interact needed for typical pricing pages.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1031,1032,1033,1034],{"name":978,"slug":979,"type":15},{"name":9,"slug":8,"type":15},{"name":982,"slug":983,"type":15},{"name":1035,"slug":1036,"type":15},"SaaS","saas","2026-04-17T05:00:43.349332",{"slug":1039,"name":1039,"fn":903,"description":1040,"org":1041,"tags":1042,"stars":984,"repoUrl":985,"updatedAt":1046},"structured-extraction","Extract structured data matching a JSON schema from websites. Handles complex nested schemas, arrays, pagination, and validation. Always outputs via formatOutput.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1043,1044,1045],{"name":920,"slug":921,"type":15},{"name":9,"slug":8,"type":15},{"name":17,"slug":18,"type":15},"2026-05-15T06:15:32.092034",{"slug":1048,"name":1048,"fn":1049,"description":1050,"org":1051,"tags":1052,"stars":1057,"repoUrl":1058,"updatedAt":1059},"firecrawl-company-directories","extract company directories with Firecrawl","Extract structured company lists from directories with Firecrawl. Use for scraping YC, Crunchbase, Product Hunt, G2, startup directories, category directories, or custom company databases into JSON, CSV, CRM-ready lists, or research tables.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1053,1054,1055,1056],{"name":13,"slug":14,"type":15},{"name":920,"slug":921,"type":15},{"name":9,"slug":8,"type":15},{"name":17,"slug":18,"type":15},99,"https:\u002F\u002Fgithub.com\u002Ffirecrawl\u002Ffirecrawl-workflows","2026-06-30T07:02:21.468",{"slug":1061,"name":1061,"fn":1062,"description":1063,"org":1064,"tags":1065,"stars":1057,"repoUrl":1058,"updatedAt":1059},"firecrawl-competitive-intel","monitor competitor product changes with Firecrawl","Monitor competitor pricing, features, changelogs, dashboards, and product changes with Firecrawl. Use for recurring competitive intelligence, pricing tier extraction, feature change tracking, or structured competitor alerts.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1066,1067,1068,1071],{"name":978,"slug":979,"type":15},{"name":9,"slug":8,"type":15},{"name":1069,"slug":1070,"type":15},"Marketing","marketing",{"name":17,"slug":18,"type":15},{"slug":1073,"name":1073,"fn":1074,"description":1075,"org":1076,"tags":1077,"stars":1057,"repoUrl":1058,"updatedAt":1059},"firecrawl-dashboard-reporting","pull metrics from analytics dashboards","Pull metrics from analytics dashboards and internal web tools with Firecrawl browser. Use when the user needs dashboard reporting, cross-platform metric summaries, authenticated analytics extraction, date-range reports, or structured metrics from web dashboards.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1078,1081,1084,1085,1088],{"name":1079,"slug":1080,"type":15},"Analytics","analytics",{"name":1082,"slug":1083,"type":15},"Dashboards","dashboards",{"name":9,"slug":8,"type":15},{"name":1086,"slug":1087,"type":15},"Reporting","reporting",{"name":17,"slug":18,"type":15},{"slug":1090,"name":1090,"fn":1091,"description":1092,"org":1093,"tags":1094,"stars":1057,"repoUrl":1058,"updatedAt":1059},"firecrawl-deep-research","conduct deep research with Firecrawl","Produce an intensive, cited analytical report: executive summary, multi-angle\nfindings, contrarian views, open questions, and full sources. Use only when the\nuser needs rigorous synthesis of a complex topic (scientific, technical, policy,\nor market-analytical) that cannot be answered with a short search, and wants\na formal written report, not a recommendation list.\n\nDo not use for product picks, top-N lists, quick lookups, or routine \"find out\nabout X\" tasks. If the request does not clearly need this kind of report, do\nnot use this skill.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1095,1096,1099,1100,1103],{"name":9,"slug":8,"type":15},{"name":1097,"slug":1098,"type":15},"Firecrawl Research","firecrawl-research",{"name":982,"slug":983,"type":15},{"name":1101,"slug":1102,"type":15},"Summarization","summarization",{"name":17,"slug":18,"type":15},{"slug":1105,"name":1105,"fn":1106,"description":1107,"org":1108,"tags":1109,"stars":1057,"repoUrl":1058,"updatedAt":1059},"firecrawl-demo-walkthrough","generate product walkthroughs with Firecrawl","Walk through a product's key flows with Firecrawl browser and produce a structured UX\u002Fproduct walkthrough. Use for signup, onboarding, pricing, docs, dashboard, product demo prep, UX teardown, and first-run experience analysis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1110,1111,1112,1115],{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15},{"name":1113,"slug":1114,"type":15},"UX Design","ux-design",{"name":17,"slug":18,"type":15},{"slug":1117,"name":1117,"fn":1118,"description":1119,"org":1120,"tags":1121,"stars":1057,"repoUrl":1058,"updatedAt":1059},"firecrawl-knowledge-base","build knowledge bases from web content","Build a knowledge base from web content with Firecrawl. Use for local reference docs, RAG-ready chunks, fine-tuning datasets, documentation mirrors, topic corpora, or LLM-ready markdown organized from web sources.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1122,1123,1124,1125],{"name":920,"slug":921,"type":15},{"name":9,"slug":8,"type":15},{"name":995,"slug":996,"type":15},{"name":900,"slug":121,"type":15},36]