Veb vositalar¶
OpenClaw ikkita yengil veb vositani taqdim etadi:
web_search— Brave Search API (standart) yoki Perplexity Sonar (toʻgʻridan-toʻgʻri yoki OpenRouter orqali) orqali vebni qidiradi.web_fetch— HTTP fetch + oʻqilishi qulay chiqarish (HTML → markdown/text).
Bular brauzer avtomatlashtirish vositalari emas. JS-ga boy saytlar yoki loginlar uchun Browser tool dan foydalaning.
Qanday ishlaydi¶
web_searchsozlangan provayderingizni chaqiradi va natijalarni qaytaradi.- Brave (standart): tuzilgan natijalarni (sarlavha, URL, snippet) qaytaradi.
- Perplexity: real vaqt veb qidiruviga asoslangan, iqtiboslar bilan AI tomonidan sintez qilingan javoblarni qaytaradi.
- Natijalar soʻrov boʻyicha 15 daqiqaga keshlanadi (sozlanishi mumkin).
web_fetchoddiy HTTP GET bajaradi va oʻqilishi qulay kontentni ajratib oladi (HTML → markdown/text). U JavaScript’ni bajarmaydi.web_fetchstandart holatda yoqilgan (agar aniq oʻchirib qoʻyilmagan boʻlsa).
Qidiruv provayderini tanlash¶
| Provayder | Afzalliklar | Kamchiliklar | API kaliti |
|---|---|---|---|
| Brave (standart) | Tezkor, tuzilgan natijalar, bepul tarif | Anʼanaviy qidiruv natijalari | BRAVE_API_KEY |
| Perplexity | AI tomonidan sintez qilingan javoblar, iqtiboslar, real vaqt | Perplexity yoki OpenRouter’ga kirish talab etiladi | OPENROUTER_API_KEY yoki PERPLEXITY_API_KEY |
Provayderga xos tafsilotlar uchun Brave Search setup va Perplexity Sonar sahifalariga qarang.
Provayderni konfiguratsiyada belgilang:
{
tools: {
web: {
search: {
provider: "brave", // or "perplexity"
},
},
},
}
Misol: Perplexity Sonar’ga oʻtish (toʻgʻridan-toʻgʻri API):
{
tools: {
web: {
search: {
provider: "perplexity",
perplexity: {
apiKey: "pplx-...",
baseUrl: "https://api.perplexity.ai",
model: "perplexity/sonar-pro",
},
},
},
},
}
Brave API kalitini olish¶
- https://brave.com/search/api/ manzilida Brave Search API hisobini yarating
- Boshqaruv panelida Data for Search rejasini tanlang (“Data for AI” emas) va API kalitini yarating.
- Kalitni konfiguratsiyada saqlash uchun
openclaw configure --section webbuyrug‘ini ishga tushiring (tavsiya etiladi) yoki muhitdaBRAVE_API_KEYni o‘rnating.
Brave bepul darajani hamda pullik rejalarni taqdim etadi; joriy cheklovlar va narxlarni Brave API portalida tekshiring.
Kalitni qayerga o‘rnatish (tavsiya etiladi)¶
Tavsiya etiladi: openclaw configure --section web buyrug‘ini ishga tushiring. U kalitni ~/.openclaw/openclaw.json faylida tools.web.search.apiKey ostida saqlaydi.
Muhit orqali muqobil: Gateway jarayoni muhitida BRAVE_API_KEY ni o‘rnating. Gateway o‘rnatilishi uchun uni ~/.openclaw/.env fayliga (yoki xizmat muhitingizga) joylashtiring. Env vars sahifasiga qarang.
Perplexity’dan foydalanish (to‘g‘ridan-to‘g‘ri yoki OpenRouter orqali)¶
Perplexity Sonar modellari ichki veb-qidiruv imkoniyatlariga ega va manbalar bilan AI tomonidan sintez qilingan javoblarni qaytaradi. Ularni OpenRouter orqali ishlatishingiz mumkin (kredit karta talab qilinmaydi — kripto/prepaid qo‘llab-quvvatlanadi).
OpenRouter API kalitini olish¶
- https://openrouter.ai/ manzilida hisob yarating
- Hisobingizga kreditlar qo‘shing (kripto, prepaid yoki kredit karta qo‘llab-quvvatlanadi)
- Hisob sozlamalarida API kalitini yarating
Perplexity qidiruvini sozlash¶
{
tools: {
web: {
search: {
enabled: true,
provider: "perplexity",
perplexity: {
// API key (optional if OPENROUTER_API_KEY or PERPLEXITY_API_KEY is set)
apiKey: "sk-or-v1-...",
// Base URL (key-aware default if omitted)
baseUrl: "https://openrouter.ai/api/v1",
// Model (defaults to perplexity/sonar-pro)
model: "perplexity/sonar-pro",
},
},
},
},
}
Muhit orqali muqobil: Gateway muhitida OPENROUTER_API_KEY yoki PERPLEXITY_API_KEY ni o‘rnating. Gateway o‘rnatilishi uchun uni ~/.openclaw/.env fayliga joylashtiring.
Agar base URL o‘rnatilmagan bo‘lsa, OpenClaw API kaliti manbasiga qarab standartni tanlaydi:
PERPLEXITY_API_KEYyokipplx-...→https://api.perplexity.aiOPENROUTER_API_KEYyokisk-or-...→https://openrouter.ai/api/v1- Noma’lum kalit formatlari → OpenRouter (xavfsiz zaxira variant)
Mavjud Perplexity modellari¶
| Model | Tavsif | Eng mos keladi |
|---|---|---|
perplexity/sonar |
Veb-qidiruv bilan tezkor savol-javob | Tezkor qidiruvlar |
perplexity/sonar-pro (standart) |
Veb-qidiruv bilan ko‘p bosqichli mulohaza yuritish | Murakkab savollar |
perplexity/sonar-reasoning-pro |
Fikr zanjiri tahlili | Chuqur tadqiqot |
web_search¶
Sozlangan provayderingizdan foydalanib vebni qidiring.
Talablar¶
tools.web.search.enabledfalsebo‘lmasligi kerak (standart: yoqilgan)- Tanlangan provayder uchun API kaliti:
- Brave:
BRAVE_API_KEYyokitools.web.search.apiKey - Perplexity:
OPENROUTER_API_KEY,PERPLEXITY_API_KEYyokitools.web.search.perplexity.apiKey
Konfiguratsiya¶
{
tools: {
web: {
search: {
enabled: true,
apiKey: "BRAVE_API_KEY_HERE", // optional if BRAVE_API_KEY is set
maxResults: 5,
timeoutSeconds: 30,
cacheTtlMinutes: 15,
},
},
},
}
Asbob parametrlari¶
query(majburiy)count(1–10; konfiguratsiyadan standart qiymat)country(ixtiyoriy): mintaqaga xos natijalar uchun 2 harfli mamlakat kodi (masalan, "DE", "US", "ALL"). Agar ko‘rsatilmasa, Brave o‘zining standart mintaqasini tanlaydi.search_lang(ixtiyoriy): qidiruv natijalari uchun ISO til kodi (masalan, "de", "en", "fr")ui_lang(ixtiyoriy): UI elementlari uchun ISO til kodifreshness(ixtiyoriy, faqat Brave): topilgan vaqt bo‘yicha filtrlash (pd,pw,pm,pyyokiYYYY-MM-DDtoYYYY-MM-DD)
Misollar:
// German-specific search
await web_search({
query: "TV online schauen",
count: 10,
country: "DE",
search_lang: "de",
});
// French search with French UI
await web_search({
query: "actualités",
country: "FR",
search_lang: "fr",
ui_lang: "fr",
});
// Recent results (past week)
await web_search({
query: "TMBG interview",
freshness: "pw",
});
web_fetch¶
URL manzilini olib, o‘qilishi qulay kontentni ajratib oling.
web_fetch talablari¶
tools.web.fetch.enabledfalsebo‘lmasligi kerak (standart: yoqilgan)- Ixtiyoriy Firecrawl zaxira varianti:
tools.web.fetch.firecrawl.apiKeyyokiFIRECRAWL_API_KEYni sozlang.
web_fetch konfiguratsiyasi¶
{
tools: {
web: {
fetch: {
enabled: true,
maxChars: 50000,
maxCharsCap: 50000,
timeoutSeconds: 30,
cacheTtlMinutes: 15,
maxRedirects: 3,
userAgent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 14_7_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36",
readability: true,
firecrawl: {
enabled: true,
apiKey: "FIRECRAWL_API_KEY_HERE", // optional if FIRECRAWL_API_KEY is set
baseUrl: "https://api.firecrawl.dev",
onlyMainContent: true,
maxAgeMs: 86400000, // ms (1 day)
timeoutSeconds: 60,
},
},
},
},
}
web_fetch vositasi parametrlari¶
url(majburiy, faqat http/https)extractMode(markdown|text)maxChars(uzun sahifalarni qisqartirish)
Eslatmalar:
web_fetchavval Readability (asosiy kontentni ajratish) dan foydalanadi, so‘ng (agar sozlangan bo‘lsa) Firecrawl. Agar ikkalasi ham muvaffaqiyatsiz bo‘lsa, vosita xato qaytaradi.- Firecrawl so‘rovlari botlardan himoyalanish rejimidan foydalanadi va natijalarni standart bo‘yicha keshlaydi.
web_fetchstandart bo‘yicha Chrome’ga o‘xshash User-Agent vaAccept-Languageyuboradi; kerak bo‘lsauserAgentni o‘zgartiring.web_fetchxususiy/ichki xost nomlarini bloklaydi va yo‘naltirishlarni qayta tekshiradi (maxRedirectsbilan cheklash).maxCharsqiymatitools.web.fetch.maxCharsCapga moslab cheklanadi.web_fetcheng yaxshi urinish asosida kontent ajratadi; ayrim saytlar uchun brauzer vositasi kerak bo‘ladi.- Kalitni sozlash va xizmat tafsilotlari uchun Firecrawl ga qarang.
- Takroriy yuklab olishlarni kamaytirish uchun javoblar keshlanadi (standart 15 daqiqa).
- Agar vosita profillari/allowlistlardan foydalansangiz,
web_search/web_fetchyokigroup:webni qo‘shing. - Agar Brave kaliti yo‘q bo‘lsa,
web_searchhujjatlar havolasi bilan qisqa sozlash bo‘yicha ko‘rsatma qaytaradi.