Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions skills/firecrawl-agent/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
name: firecrawl-agent
description: |
Autonomous AI extraction — give it a prompt and it navigates, clicks, and extracts structured data across multiple pages on its own. Returns JSON matching your schema. Takes 2-5 minutes. Use for complex multi-page extraction tasks where you'd otherwise need to chain map + scrape + parse manually.
allowed-tools:
- Bash(firecrawl agent *)
- Bash(npx firecrawl agent *)
---

# agent

Autonomous AI extraction — describe what you need, and it navigates, clicks, and extracts structured data across multiple pages on its own. Returns JSON matching your schema. Takes 2-5 minutes.

```bash
firecrawl agent "extract all pricing tiers" --wait -o .firecrawl/pricing.json
```

## Examples

```bash
# With a JSON schema for structured output
firecrawl agent "extract products" --schema '{"type":"object","properties":{"name":{"type":"string"},"price":{"type":"number"}}}' --wait -o .firecrawl/products.json

# Focus on specific pages
firecrawl agent "get feature list" --urls "<url>" --wait -o .firecrawl/features.json
```

## Flags

| Flag | Description |
| ---------------------- | -------------------------------------- |
| `--urls <urls>` | Specific URLs to focus on |
| `--model <model>` | Model: `spark-1-mini` or `spark-1-pro` |
| `--schema <json>` | JSON schema for structured output |
| `--schema-file <path>` | Load schema from a file |
| `--max-credits <n>` | Credit spending limit |
| `--wait` | Wait for completion before returning |
| `--pretty` | Pretty-print JSON output |
| `-o <path>` | Save output to file |

## Tips

- **Always use `--wait`** so you get results inline.
- **Use `--schema`** for structured, predictable output.
- **Slower than scrape.** Takes 2-5 minutes — use [`scrape`](../firecrawl-scrape/SKILL.md) or [`browser`](../firecrawl-browser/SKILL.md) for faster, targeted extraction.
- **Best for complex extraction** across multiple pages where you'd otherwise chain map + scrape + parse.

## See Also

- [firecrawl-scrape](../firecrawl-scrape/SKILL.md) — Faster single-page extraction
- [firecrawl-browser](../firecrawl-browser/SKILL.md) — Manual interactive extraction
- [Setup & troubleshooting](../firecrawl/guides/install.md)
87 changes: 87 additions & 0 deletions skills/firecrawl-browser/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
---
name: firecrawl-browser
description: |
Remote cloud Chromium for interactive pages — click buttons, fill forms, scroll, dismiss popups, log in, and extract content from pages that require interaction. Persistent profiles let you authenticate once and reconnect later. Use when a page needs clicks, scrolling, login, expanding sections, or any interaction beyond a simple fetch.
allowed-tools:
- Bash(firecrawl browser *)
- Bash(npx firecrawl browser *)
---

# browser

Remote cloud Chromium for pages that need interaction — clicking, scrolling, form filling, login flows, dismissing popups. Auto-launches a session with no setup required.

```bash
firecrawl browser "open <url>"
firecrawl browser "snapshot -i" # see interactive elements with @ref IDs
firecrawl browser "click @e5" # interact with elements
firecrawl browser "fill @e3 'search query'" # fill form fields
firecrawl browser "scrape" -o .firecrawl/page.md # extract content
firecrawl browser close
```

## Commands

| Command | Description |
| -------------------- | ---------------------------------------- |
| `open <url>` | Navigate to a URL |
| `snapshot -i` | Get interactive elements with `@ref` IDs |
| `screenshot` | Capture a PNG screenshot |
| `click <@ref>` | Click an element by ref |
| `type <@ref> <text>` | Type into an element |
| `fill <@ref> <text>` | Fill a form field (clears first) |
| `scrape` | Extract page content as markdown |
| `scroll <direction>` | Scroll up/down/left/right |
| `wait <seconds>` | Wait for a duration |
| `eval <js>` | Evaluate JavaScript on the page |

Session management: `launch-session --ttl 600`, `list`, `close`

## Flags

| Flag | Description |
| ---------------------------- | ------------------------------------------------ |
| `--ttl <seconds>` | Session time-to-live |
| `--ttl-inactivity <seconds>` | Inactivity timeout |
| `--session <id>` | Target a specific session |
| `--profile <name>` | Named profile for persistent state |
| `--no-save-changes` | Read-only reconnect (no writes to session state) |
| `-o <path>` | Save output to file |

## Profiles

Profiles survive `close` and can be reconnected by name. Use them when you need to login first, then come back later while already authenticated:

```bash
# Session 1: Login and save state
firecrawl browser launch-session --profile my-app
firecrawl browser "open https://app.example.com/login"
firecrawl browser "snapshot -i"
firecrawl browser "fill @e3 'user@example.com'"
firecrawl browser "click @e7"
firecrawl browser "wait 2"
firecrawl browser close

# Session 2: Come back authenticated
firecrawl browser launch-session --profile my-app
firecrawl browser "open https://app.example.com/dashboard"
firecrawl browser "scrape" -o .firecrawl/dashboard.md
firecrawl browser close
```

Read-only reconnect: `firecrawl browser launch-session --profile my-app --no-save-changes`

Shorthand with profile: `firecrawl browser --profile my-app "open https://example.com"`

If you get forbidden errors, create a new session — the old one may have expired.

## Tips

- **`snapshot -i` is your eyes.** Always snapshot before interacting to see available `@ref` IDs.
- **Don't use scrape `--actions`** (API-only feature) — use `browser` instead.

## See Also

- [firecrawl-scrape](../firecrawl-scrape/SKILL.md) — For static pages that don't need interaction
- [firecrawl-agent](../firecrawl-agent/SKILL.md) — AI-powered autonomous extraction
- [Setup & troubleshooting](../firecrawl/guides/install.md)
Loading