Tools
Firecrawl
OpenClaw میتواند از Firecrawl به سه روش استفاده کند:
- بهعنوان ارائهدهندهٔ
web_search - بهعنوان ابزارهای صریح Plugin:
firecrawl_searchوfirecrawl_scrape - بهعنوان استخراجکنندهٔ جایگزین برای
web_fetch
این یک سرویس میزبانیشده برای استخراج/جستوجو است که از دور زدن رباتها و ذخیرهسازی در حافظهٔ نهان پشتیبانی میکند و برای سایتهای متکی به JS یا صفحههایی که واکشی سادهٔ HTTP را مسدود میکنند، مفید است.
نصب Plugin
Plugin رسمی را نصب کنید، سپس Gateway را راهاندازی مجدد کنید:
openclaw plugins install @openclaw/firecrawl-pluginopenclaw gateway restartدسترسی بدون کلید و کلیدهای API
Firecrawl دو ارائهدهندهٔ web_search ثبت میکند:
- جستوجوی Firecrawl (
firecrawl) — از API میزبانیشدهٔ/v2/searchبا کلید شما استفاده میکند؛ در صورت وجود کلید، بهطور خودکار شناسایی میشود. - جستوجوی Firecrawl (رایگان) (
firecrawl-free) — از سطح آغازین میزبانیشده و بدون کلید استفاده میکند و به کلید API نیاز ندارد. این گزینه فقط با انتخاب صریح فعال میشود و هرگز بهطور خودکار انتخاب نمیشود، زیرا انتخاب آن عبارتهای جستوجوی شما را به سطح رایگان Firecrawl ارسال میکند.
گزینهٔ جایگزین web_fetch در Firecrawl که بهصراحت انتخاب شده نیز بدون کلید است. ابزارهای صریح
firecrawl_search و firecrawl_scrape به کلید API نیاز دارند. برای محدودیتهای بالاتر،
FIRECRAWL_API_KEY را به محیط Gateway اضافه یا پیکربندی کنید.
پیکربندی جستوجوی Firecrawl
{ tools: { web: { search: { provider: "firecrawl", }, }, }, plugins: { entries: { firecrawl: { enabled: true, config: { webSearch: { apiKey: "FIRECRAWL_API_KEY_HERE", baseUrl: "https://api.firecrawl.dev", }, }, }, }, },}نکتهها:
- انتخاب Firecrawl در فرایند راهاندازی اولیه یا
openclaw configure --section web، Plugin نصبشدهٔ Firecrawl را بهطور خودکار فعال میکند. - برای اجرای بدون کلید و بدون نیاز به کلید API، در فرایند راهاندازی اولیه جستوجوی Firecrawl (رایگان) را انتخاب کنید (یا
provider: "firecrawl-free"را تنظیم کنید). ارائهدهندهٔ کلیددار جستوجوی Firecrawl مقدارplugins.entries.firecrawl.config.webSearch.apiKeyیاFIRECRAWL_API_KEYرا ارسال میکند. web_searchبا Firecrawl ازqueryوcountپشتیبانی میکند.- برای کنترلهای ویژهٔ Firecrawl مانند
sources، categoriesیا استخراج نتایج، ازfirecrawl_searchاستفاده کنید. baseUrlبهطور پیشفرض از Firecrawl میزبانیشده درhttps://api.firecrawl.devاستفاده میکند. جایگزینهای خودمیزبانیشده فقط برای نقاط پایانی خصوصی/داخلی مجازند؛ HTTP فقط برای همین مقصدهای خصوصی پذیرفته میشود.FIRECRAWL_BASE_URLمتغیر محیطی جایگزین مشترک برای URLهای پایهٔ جستوجو و استخراج Firecrawl است.- مهلت زمانی پیشفرض درخواستهای جستوجوی Firecrawl برابر با 30 ثانیه است؛ پارامتر
timeoutSecondsدرfirecrawl_searchآن را برای هر فراخوانی بازنویسی میکند.
پیکربندی گزینهٔ جایگزین Firecrawl برای web_fetch
{ tools: { web: { fetch: { provider: "firecrawl", // انتخاب صریح، گزینهٔ جایگزین بدون کلید را فعال میکند }, }, }, plugins: { entries: { firecrawl: { enabled: true, config: { webFetch: { baseUrl: "https://api.firecrawl.dev", onlyMainContent: true, maxAgeMs: 172800000, timeoutSeconds: 60, }, }, }, }, },}نکتهها:
- گزینهٔ جایگزین
web_fetchدر Firecrawl که بهصراحت انتخاب شده، بدون کلید API کار میکند. در صورت پیکربندی، OpenClaw برای محدودیتهای بالاترplugins.entries.firecrawl.config.webFetch.apiKeyیاFIRECRAWL_API_KEYرا ارسال میکند. - انتخاب Firecrawl در فرایند راهاندازی اولیه یا
openclaw configure --section web، Plugin را فعال میکند و Firecrawl را برایweb_fetchانتخاب میکند، مگر آنکه ارائهدهندهٔ واکشی دیگری از قبل پیکربندی شده باشد. firecrawl_scrapeبه کلید API نیاز دارد.maxAgeMsحداکثر عمر نتایج ذخیرهشده در حافظهٔ نهان را کنترل میکند (میلیثانیه). مقدار پیشفرض 172,800,000 میلیثانیه (2 روز) است.- مقدار پیشفرض
onlyMainContentبرابرtrueاست؛ مقدار پیشفرضtimeoutSecondsبرابر 60 است. - پیکربندی قدیمی
tools.web.fetch.firecrawl.*وtools.web.search.firecrawl.*بهطور خودکار توسطopenclaw doctor --fixمهاجرت داده میشود. - بازنویسیهای URL پایه/استخراج Firecrawl از همان قاعدهٔ میزبانیشده/خصوصی جستوجو پیروی میکنند: ترافیک عمومی میزبانیشده از
https://api.firecrawl.devاستفاده میکند؛ بازنویسیهای خودمیزبانیشده باید به نقاط پایانی خصوصی/داخلی منتهی شوند. firecrawl_scrapeپیش از ارسال URLها به Firecrawl، URLهای مقصد آشکارا خصوصی، loopback، فراداده و غیر HTTP(S) را رد میکند؛ این رفتار با قرارداد ایمنی مقصدweb_fetchبرای فراخوانیهای صریح استخراج Firecrawl مطابقت دارد.
firecrawl_scrape از همان تنظیمات plugins.entries.firecrawl.config.webFetch.* و متغیرهای محیطی، از جمله کلید API الزامی آن، استفاده میکند.
Firecrawl خودمیزبانیشده
هنگامی که Firecrawl را خودتان اجرا میکنید، plugins.entries.firecrawl.config.webSearch.baseUrl، plugins.entries.firecrawl.config.webFetch.baseUrl یا FIRECRAWL_BASE_URL را تنظیم کنید. OpenClaw مقدار http:// را فقط برای مقصدهای loopback، شبکهٔ خصوصی، .local، .internal یا .localhost میپذیرد. میزبانهای عمومی سفارشی رد میشوند تا کلیدهای API مربوط به Firecrawl بهطور تصادفی به نقاط پایانی دلخواه ارسال نشوند.
ابزارهای Plugin مربوط به Firecrawl
firecrawl_search
وقتی بهجای web_search عمومی، کنترلهای جستوجوی ویژهٔ Firecrawl را میخواهید، از این ابزار استفاده کنید. به کلید API نیاز دارد.
پارامترها:
querycount(1-100)sourcescategoriesincludeDomains/excludeDomains(فقط نام میزبان؛ ناسازگار با یکدیگر)tbs(فیلتر زمانی، برای مثالqdr:d، qdr:w، sbd:1)locationوcountry(هدفگیری جغرافیایی)scrapeResultstimeoutSeconds
firecrawl_scrape
برای صفحههای متکی به JS یا محافظتشده در برابر ربات که web_fetch ساده عملکرد ضعیفی دارد، از این ابزار استفاده کنید.
پارامترها:
urlextractModemaxCharsonlyMainContentmaxAgeMsproxystoreInCachetimeoutSeconds
حالت پنهانکارانه / دور زدن ربات
firecrawl_scrape و گزینهٔ جایگزین Firecrawl برای web_fetch، بهطور پیشفرض از proxy: "auto" بههمراه storeInCache: true استفاده میکنند، مگر آنکه فراخواننده آن پارامترها را بازنویسی کند. firecrawl_search و ارائهدهندهٔ Firecrawl برای web_search هیچ کنترلی برای proxy/storeInCache ندارند؛ حالت پروکسی پنهانکارانه فقط برای درخواستهای استخراج/واکشی اعمال میشود.
حالت proxy در Firecrawl دور زدن ربات را کنترل میکند (basic، stealth یا auto). auto در صورت ناموفق بودن تلاش پایه، با پروکسیهای پنهانکارانه دوباره تلاش میکند که ممکن است نسبت به استخراج صرفاً پایه، اعتبار بیشتری مصرف کند.
نحوهٔ استفادهٔ web_fetch از Firecrawl
ترتیب استخراج web_fetch:
- Readability (محلی)
- ارائهدهندهٔ واکشی پیکربندیشده، مانند Firecrawl (هنگامی که انتخاب شده یا بهطور خودکار از اعتبارنامههای پیکربندیشده شناسایی شده باشد)
- پاکسازی پایهٔ HTML (آخرین گزینهٔ جایگزین)
کنترل انتخاب، tools.web.fetch.provider است. اگر آن را حذف کنید، OpenClaw نخستین ارائهدهندهٔ آمادهٔ واکشی وب را از میان اعتبارنامههای موجود بهطور خودکار شناسایی میکند. Plugin رسمی Firecrawl این گزینهٔ جایگزین را فراهم میکند.
مرتبط
- نمای کلی جستوجوی وب -- همهٔ ارائهدهندگان و شناسایی خودکار
- واکشی وب -- ابزار web_fetch با گزینهٔ جایگزین Firecrawl
- Tavily -- ابزارهای جستوجو + استخراج