Asboblar (OpenClaw)¶
- OpenClaw brauzer, canvas, tugunlar va cron uchun birinchi darajali agent vositalarini taqdim etadi.
These replace the old
openclaw-*skills: the tools are typed, no shelling, and the agent should rely on them directly.
Disabling tools¶
- Siz
openclaw.jsondagitools.allow/tools.denyorqali vositalarni global tarzda ruxsat berishingiz yoki taqiqlashingiz mumkin (taqiqlash ustun turadi). This prevents disallowed tools from being sent to model providers.
{
tools: { deny: ["browser"] },
}
Notes:
- Matching is case-insensitive.
*wildcards are supported ("*"means all tools).- If
tools.allowonly references unknown or unloaded plugin tool names, OpenClaw logs a warning and ignores the allowlist so core tools stay available.
Tool profiles (base allowlist)¶
tools.profile sets a base tool allowlist before tools.allow/tools.deny.
Per-agent override: agents.list[].tools.profile.
- Profillar:
minimal:session_statusonlycoding:group:fs,group:runtime,group:sessions,group:memory,imagemessaging:group:messaging,sessions_list,sessions_history,sessions_send,session_statusfull: no restriction (same as unset)
Example (messaging-only by default, allow Slack + Discord tools too):
{
tools: {
profile: "messaging",
allow: ["slack", "discord"],
},
}
Example (coding profile, but deny exec/process everywhere):
{
tools: {
profile: "coding",
deny: ["group:runtime"],
},
}
Example (global coding profile, messaging-only support agent):
{
tools: { profile: "coding" },
agents: {
list: [
{
id: "support",
tools: { profile: "messaging", allow: ["slack"] },
},
],
},
}
Provider-specific tool policy¶
Use tools.byProvider to further restrict tools for specific providers
(or a single provider/model) without changing your global defaults.
Per-agent override: agents.list[].tools.byProvider.
This is applied after the base tool profile and before allow/deny lists,
so it can only narrow the tool set.
Provider keys accept either provider (e.g. google-antigravity) or
provider/model (e.g. openai/gpt-5.2).
Example (keep global coding profile, but minimal tools for Google Antigravity):
{
tools: {
profile: "coding",
byProvider: {
"google-antigravity": { profile: "minimal" },
},
},
}
Example (provider/model-specific allowlist for a flaky endpoint):
{
tools: {
allow: ["group:fs", "group:runtime", "sessions_list"],
byProvider: {
"openai/gpt-5.2": { allow: ["group:fs", "sessions_list"] },
},
},
}
Example (agent-specific override for a single provider):
{
agents: {
list: [
{
id: "support",
tools: {
byProvider: {
"google-antigravity": { allow: ["message", "sessions_list"] },
},
},
},
],
},
}
Tool groups (shorthands)¶
Tool policies (global, agent, sandbox) support group:* entries that expand to multiple tools.
Use these in tools.allow / tools.deny.
Available groups:
group:runtime:exec,bash,processgroup:fs:read,write,edit,apply_patchgroup:sessions:sessions_list,sessions_history,sessions_send,sessions_spawn,session_statusgroup:memory:memory_search,memory_getgroup:web:web_search,web_fetchgroup:ui:browser,canvasgroup:automation:cron,gatewaygroup:messaging:messagegroup:nodes:nodes-
group:openclaw: barcha o‘rnatilgan OpenClaw vositalari (provayder plaginlari bundan mustasno)
- Misol (faqat fayl vositalari + brauzerga ruxsat berish):
3. {
tools: {
allow: ["group:fs", "browser"],
},
}
29. Plaginlar + vositalar¶
- Plaginlar asosiy to‘plamdan tashqari qo‘shimcha vositalar (va CLI buyruqlari)ni ro‘yxatdan o‘tkazishi mumkin.
-
O‘rnatish va sozlash uchun Plugins, hamda vositalardan foydalanish bo‘yicha yo‘riqnomalar promptlarga qanday kiritilishini bilish uchun Skills sahifalariga qarang. 7. Ayrim plaginlar vositalar bilan birga o‘zlarining skill’larini ham taqdim etadi (masalan, voice-call plagini).
-
Ixtiyoriy plagin vositalari:
-
- Lobster: qayta tiklanadigan tasdiqlar bilan tiplangan workflow runtime (gateway xostida Lobster CLI talab qilinadi).
-
- LLM Task: strukturalangan workflow chiqishi uchun faqat JSON’li LLM bosqichi (ixtiyoriy sxema tekshiruvi).
11. Vositalar inventari¶
12. apply_patch¶
- Bir yoki bir nechta fayllar bo‘ylab strukturalangan patch’larni qo‘llash. 32. Ko‘p-hunk tahrirlar uchun foydalaning.
- Eksperimental:
tools.exec.applyPatch.enabledorqali yoqing (faqat OpenAI modellari).
34. exec¶
-
Ish maydonida shell buyruqlarini ishga tushirish.
-
Asosiy parametrlar:
-
command(majburiy)
-
yieldMs(vaqt tugagach avtomatik fon rejimiga o‘tadi, standart 10000)
-
background(darhol fon rejimi)
-
timeout(soniyalar; oshib ketsa jarayon to‘xtatiladi, standart 1800)
-
elevated(bool; elevated rejimi yoqilgan/ruxsat etilgan bo‘lsa xostda ishga tushiradi; agent sandbox qilinganida xulq-atvorni o‘zgartiradi)
-
host(sandbox | gateway | node)
-
security(deny | allowlist | full)
-
ask(off | on-miss | always)
-
node(host=nodeuchun node id/nomi)
-
- Haqiqiy TTY kerakmi? 29.
pty: trueqilib sozlang.
- Haqiqiy TTY kerakmi? 29.
- Eslatmalar:
-
- Fon rejimida
status: "running"vasessionIdqaytariladi.
- Fon rejimida
-
- Fon sessiyalarini so‘rash/loglash/yozish/o‘chirish/tozalash uchun
processdan foydalaning.
- Fon sessiyalarini so‘rash/loglash/yozish/o‘chirish/tozalash uchun
-
- Agar
processtaqiqlangan bo‘lsa,execsinxron ishlaydi vayieldMs/backgroundni e’tiborsiz qoldiradi.
- Agar
-
elevatedtools.elevatedhamdaagents.list[].tools.elevatedoverride’i bilan cheklanadi (ikkalasi ham ruxsat berishi kerak) vahost=gateway+security=fulluchun alias hisoblanadi.
-
elevatedfaqat agent sandbox qilinganida xulq-atvorni o‘zgartiradi (aks holda ta’siri yo‘q).
-
host=nodemacOS companion ilovasini yoki headless node xostni nishonga olishi mumkin (openclaw node run).
-
- gateway/node tasdiqlari va allowlist’lar: Exec approvals.
38. process¶
-
Fon rejimidagi exec sessiyalarini boshqarish.
-
Asosiy amallar:
-
list,poll,log,write,kill,clear,remove
- Eslatmalar:
-
pollyakunlanganda yangi chiqishni va chiqish holatini qaytaradi.
-
logqatorma-qatoroffset/limitni qo‘llab-quvvatlaydi (offsetni qoldirsangiz oxirgi N qator olinadi).
-
processhar bir agent doirasida ishlaydi; boshqa agentlardagi sessiyalar ko‘rinmaydi.
46. web_search¶
-
Brave Search API orqali vebni qidirish.
-
Asosiy parametrlar:
-
query(majburiy)
-
count(1–10; standart qiymattools.web.search.maxResultsdan olinadi)
- Eslatmalar:
-
- Brave API kalitini talab qiladi (tavsiya etiladi:
openclaw configure --section web, yokiBRAVE_API_KEYni o‘rnating).
- Brave API kalitini talab qiladi (tavsiya etiladi:
-
tools.web.search.enabledorqali yoqing.
-
- Javoblar keshlanadi (standart 15 daqiqa).
-
- Sozlash uchun Web tools ga qarang.
6. web_fetch¶
-
URL manzildan o‘qilishi mumkin bo‘lgan kontentni olish va ajratib chiqarish (HTML → markdown/text).
-
Asosiy parametrlar:
-
url(majburiy)
-
extractMode(markdown|text)
-
maxChars(uzun sahifalarni qisqartirish)
- Eslatmalar:
-
tools.web.fetch.enabledorqali yoqing.
-
maxCharstools.web.fetch.maxCharsCapbilan cheklanadi (standart 50000).
-
- Javoblar keshlanadi (standart 15 daqiqa).
-
- JS-ga boy saytlar uchun brauzer vositasini afzal ko‘ring.
-
- Sozlash uchun Web tools ga qarang.
-
- Ixtiyoriy anti-bot zaxira varianti uchun Firecrawl ga qarang.
19. browser¶
-
OpenClaw tomonidan boshqariladigan maxsus brauzerni nazorat qilish.
-
Asosiy amallar:
-
status,start,stop,tabs,open,focus,close
-
snapshot(aria/ai)
-
screenshot(rasm bloki +MEDIA:<path>qaytaradi)
-
act(UI amallari: click/type/press/hover/drag/select/fill/resize/wait/evaluate)
-
navigate,console,pdf,upload,dialog
- Profil boshqaruvi:
-
profiles— holati bilan barcha brauzer profillarini ro‘yxatlash
-
create-profile— avtomatik ajratilgan port bilan yangi profil yaratish (yokicdpUrl)
-
delete-profile— brauzerni to‘xtatish, foydalanuvchi ma’lumotlarini o‘chirish, konfiguratsiyadan olib tashlash (faqat lokal)
-
reset-profile— profil portidagi yetim jarayonni to‘xtatish (faqat lokal)
- Umumiy parametrlar:
-
profile(ixtiyoriy; sukut bo‘yichabrowser.defaultProfile)
-
target(sandbox|host|node)
-
node(ixtiyoriy; aniq node id/nomini tanlaydi) Eslatmalar:
-
browser.enabled=truetalab qilinadi (standarttrue; o‘chirish uchunfalsega o‘rnating).
-
- Barcha amallar ko‘p instansiya qo‘llab-quvvatlashi uchun ixtiyoriy
profileparametrini qabul qiladi.
- Barcha amallar ko‘p instansiya qo‘llab-quvvatlashi uchun ixtiyoriy
-
profileko‘rsatilmasa,browser.defaultProfileishlatiladi (standart "chrome").
-
- Profil nomlari: faqat kichik harfli alfanumerik belgilar va defislar (maks. 64 belgi).
-
- Port diapazoni: 18800–18899 (taxm. 100 ta profil maksimal).
-
- Masofaviy profillar faqat ulanish uchun (start/stop/reset yo‘q).
-
- Agar brauzerga qodir node ulangan bo‘lsa, vosita avtomatik ravishda unga yo‘naltirishi mumkin (agar
targetni mahkamlab qo‘ymasangiz).
- Agar brauzerga qodir node ulangan bo‘lsa, vosita avtomatik ravishda unga yo‘naltirishi mumkin (agar
-
- Playwright o‘rnatilganda
snapshotsukut bo‘yichaai; accessibility daraxti uchunariadan foydalaning.
- Playwright o‘rnatilganda
-
snapshotshuningdek role-snapshot variantlarini (interactive,compact,depth,selector) qo‘llab-quvvatlaydi, ulare12kabi havolalarni qaytaradi.
-
actsnapshotdanrefni talab qiladi (AI snapshotlaridan raqamli12, yoki role snapshotlardane12); kamdan-kam CSS selektor ehtiyojlari uchunevaluatedan foydalaning.
-
- Odatiy holatda
act→waitdan qoching; uni faqat istisno holatlarda ishlating (kutiladigan ishonchli UI holati bo‘lmaganda).
- Odatiy holatda
-
uploadqurollantirilgandan so‘ng avtomatik bosish uchun ixtiyoriy ravishdarefuzatishi mumkin.
-
uploadshuningdek<input type="file">ni bevosita sozlash uchuninputRef(aria ref) yokielement(CSS selektor) ni qo‘llab-quvvatlaydi.
49. canvas¶
-
Node Canvas’ni boshqarish (present, eval, snapshot, A2UI).
-
Asosiy amallar:
present,hide,navigate,evalsnapshot(returns image block +MEDIA:<path>)a2ui_push,a2ui_reset
Notes:
- Uses gateway
node.invokeunder the hood. - If no
nodeis provided, the tool picks a default (single connected node or local mac node). - A2UI is v0.8 only (no
createSurface); the CLI rejects v0.9 JSONL with line errors. -
- Tezkor smoke-test:
openclaw nodes canvas a2ui push --node <id> --text "Hello from A2UI".
- Tezkor smoke-test:
nodes¶
- Juftlangan tugunlarni aniqlash va nishonga olish; bildirishnomalar yuborish; kamera/ekranni yozib olish.
Core actions:
-
status,describe
-
pending,approve,reject(juftlash)
notify(macOSsystem.notify)-
run(macOSsystem.run)
camera_snap,camera_clip,screen_recordlocation_get
Notes:
- Camera/screen commands require the node app to be foregrounded.
- Images return image blocks +
MEDIA:<path>. - Videos return
FILE:<path>(mp4). - Location returns a JSON payload (lat/lon/accuracy/timestamp).
runparams:commandargv array; optionalcwd,env(KEY=VAL),commandTimeoutMs,invokeTimeoutMs,needsScreenRecording.
Example (run):
{
"action": "run",
"node": "office-mac",
"command": ["echo", "Hello"],
"env": ["FOO=bar"],
"commandTimeoutMs": 12000,
"invokeTimeoutMs": 45000,
"needsScreenRecording": false
}
image¶
Analyze an image with the configured image model.
Core parameters:
image(required path or URL)prompt(optional; defaults to "Describe the image.")model(optional override)maxBytesMb(optional size cap)
Notes:
-
- Faqat
agents.defaults.imageModelsozlanganida (asosiy yoki zaxira), yoki standart model + sozlangan autentifikatsiyadan yashirin tasvir modeli aniqlanishi mumkin bo‘lganda (eng yaxshi urinish bilan juftlash) mavjud.
- Faqat
- Uses the image model directly (independent of the main chat model).
message¶
Send messages and channel actions across Discord/Google Chat/Slack/Telegram/WhatsApp/Signal/iMessage/MS Teams.
Core actions:
send(text + optional media; MS Teams also supportscardfor Adaptive Cards)poll(WhatsApp/Discord/MS Teams polls)react/reactions/read/edit/deletepin/unpin/list-pinspermissionsthread-create/thread-list/thread-replysearchstickermember-info/role-infoemoji-list/emoji-upload/sticker-uploadrole-add/role-removechannel-info/channel-listvoice-statusevent-list/event-createtimeout/kick/ban
Eslatmalar:
sendWhatsApp’ni Gateway orqali yo‘naltiradi; boshqa kanallar to‘g‘ridan-to‘g‘ri boradi.pollWhatsApp va MS Teams uchun Gateway’dan foydalanadi; Discord so‘rovlari to‘g‘ridan-to‘g‘ri boradi.- Xabar vositasi chaqiruvi faol chat sessiyasiga bog‘langanda, yuborishlar kontekstlararo sizib chiqishni oldini olish uchun o‘sha sessiyaning manziliga cheklanadi.
cron¶
Gateway cron ishlarini va uyg‘otishlarni boshqaring.
Asosiy amallar:
status,listadd,update,remove,run,runswake(tizim hodisasini navbatga qo‘shish + ixtiyoriy darhol yurak urishi)
Eslatmalar:
addto‘liq cron ish obyektini kutadi (sxemacron.addRPC bilan bir xil).update{ jobId, patch }dan foydalanadi (idmoslik uchun qabul qilinadi).
gateway¶
Ishlayotgan Gateway jarayonini qayta ishga tushiring yoki yangilanishlarni qo‘llang (joyida).
Asosiy amallar:
restart(avtorizatsiya qiladi + jarayon ichida qayta ishga tushirish uchunSIGUSR1yuboradi;openclaw gatewayjoyida qayta ishga tushiradi)config.get/config.schemaconfig.apply(tekshirish + konfiguratsiyani yozish + qayta ishga tushirish + uyg‘otish)config.patch(qisman yangilanishni birlashtirish + qayta ishga tushirish + uyg‘otish)update.run(yangilanishni ishga tushirish + qayta ishga tushirish + uyg‘otish)
Eslatmalar:
-
- Amaldagi javobni to‘xtatib qo‘ymaslik uchun
delayMs(standart 2000) dan foydalaning.
- Amaldagi javobni to‘xtatib qo‘ymaslik uchun
restartsukut bo‘yicha o‘chirilgan;commands.restart: truebilan yoqing.
sessions_list / sessions_history / sessions_send / sessions_spawn / session_status¶
Sessiyalarni ro‘yxatlang, transkript tarixini ko‘ring yoki boshqa sessiyaga yuboring.
Asosiy parametrlar:
sessions_list:kinds?,limit?,activeMinutes?,messageLimit?(0 = yo‘q)sessions_history:sessionKey(yokisessionId),limit?,includeTools?sessions_send:sessionKey(yokisessionId),message,timeoutSeconds?(0 = yuborib unutish)sessions_spawn:task,label?,agentId?,model?,runTimeoutSeconds?,cleanup?session_status:sessionKey?(sukut bo‘yicha joriy;sessionIdqabul qilinadi),model?(defaultbekor qilishni tozalaydi)
Eslatmalar:
main— to‘g‘ridan-to‘g‘ri chat uchun kanonik kalit; global/noma’lum yashirilgan.-
messageLimit > 0har bir sessiya uchun oxirgi N ta xabarni oladi (vosita xabarlari filtrlanadi).
sessions_sendtimeoutSeconds > 0bo‘lganda yakuniy tugashni kutadi.- Yetkazish/e’lon qilish yakunlangandan keyin sodir bo‘ladi va eng yaxshi sa’y-harakat asosida bajariladi;
status: "ok"agent yugurishi tugaganini tasdiqlaydi, e’lon yetkazilganini emas. sessions_spawnsub-agent yugurishini boshlaydi va so‘rovchi chatga e’lon javobini joylaydi.sessions_spawnbloklanmaydi va darholstatus: "accepted"ni qaytaradi.sessions_sendjavob qaytarish ping‑pongini bajaradi (to‘xtatish uchunREPLY_SKIPbilan javob bering; maksimal aylanishlarsession.agentToAgent.maxPingPongTurnsorqali, 0–5).- Ping‑pongdan so‘ng, nishon agent e’lon bosqichini bajaradi; e’lonni bostirish uchun
ANNOUNCE_SKIPbilan javob bering.
agents_list¶
Joriy sessiya sessions_spawn bilan nishonga olishi mumkin bo‘lgan agent identifikatorlarini ro‘yxatlang.
Eslatmalar:
- Natija har bir agent uchun ruxsat ro‘yxatlari bilan cheklanadi (
agents.list[].subagents.allowAgents). ["*"]sozlanganda, vosita barcha sozlangan agentlarni o‘z ichiga oladi vaallowAny: truedeb belgilaydi.
Parametrlar (umumiy)¶
Gateway-ga tayangan vositalar (canvas, nodes, cron):
gatewayUrl(standartws://127.0.0.1:18789)gatewayToken(agar autentifikatsiya yoqilgan bo‘lsa)timeoutMs
Eslatma: gatewayUrl o‘rnatilganda, gatewayTokenni aniq ko‘rsatib kiriting. Vositalar sozlamalarni yoki muhit (environment) hisob ma’lumotlarini override uchun meros qilib olmaydi, va aniq ko‘rsatilmagan hisob ma’lumotlari xato hisoblanadi.
Brauzer vositasi:
profile(ixtiyoriy; standartbrowser.defaultProfile)target(sandbox|host|node)node(ixtiyoriy; aniq node id/nomini biriktirish)
Tavsiya etilgan agent oqimlari¶
Brauzer avtomatlashtirish:
browser→status/startsnapshot(ai yoki aria)act(bosish/yozish/tugma bosish)- Agar vizual tasdiq kerak bo‘lsa
screenshot
Canvas renderi:
canvas→presenta2ui_push(ixtiyoriy)snapshot
Node nishonlash:
nodes→status- Tanlangan node’da
describe notify/run/camera_snap/screen_record
Xavfsizlik¶
- To‘g‘ridan-to‘g‘ri
system.rundan qoching; faqat aniq foydalanuvchi roziligi bilannodes→rundan foydalaning. - Kamera/ekran yozib olish uchun foydalanuvchi roziligini hurmat qiling.
- Media buyruqlarini chaqirishdan oldin ruxsatlarni tekshirish uchun
status/describedan foydalaning.
Vositalar agentga qanday taqdim etiladi¶
Vositalar ikki parallel kanalda ochiladi:
- Tizim prompt matni: odam o‘qiy oladigan ro‘yxat + yo‘riqnoma.
- Vosita sxemasi: model API’ga yuboriladigan tuzilgan funksiya ta’riflari.
Bu shuni anglatadiki, agent ham “qaysi vositalar mavjud”ligini, ham “ularni qanday chaqirish”ni ko‘radi. Agar biror vosita