ٹولز (OpenClaw)¶
OpenClaw براؤزر، کینوس، نوڈز، اور cron کے لیے فرسٹ کلاس ایجنٹ ٹولز فراہم کرتا ہے۔
These replace the old openclaw-* skills: the tools are typed, no shelling,
and the agent should rely on them directly.
ٹولز کو غیر فعال کرنا¶
آپ openclaw.json میں tools.allow / tools.deny کے ذریعے عالمی سطح پر ٹولز کو اجازت یا نامنظور کر سکتے ہیں
(deny wins). This prevents disallowed tools from being sent to model providers.
{
tools: { deny: ["browser"] },
}
نوٹس:
- میچنگ کیس سے غیر حساس ہے۔
*وائلڈکارڈز سپورٹڈ ہیں ("*"کا مطلب تمام ٹولز ہے)۔- اگر
tools.allowصرف نامعلوم یا لوڈ نہ ہونے والے پلگ اِن ٹول ناموں کا حوالہ دے، تو OpenClaw وارننگ لاگ کرتا ہے اور اجازت فہرست کو نظرانداز کر دیتا ہے تاکہ بنیادی ٹولز دستیاب رہیں۔
ٹول پروفائلز (بنیادی اجازت فہرست)¶
tools.profile ایک بنیادی ٹول اجازت فہرست مقرر کرتا ہے قبل اس کے کہ tools.allow/tools.deny لاگو ہوں۔
Per-agent override: agents.list[].tools.profile.
پروفائلز:
minimal: صرفsession_statuscoding:group:fs,group:runtime,group:sessions,group:memory,imagemessaging:group:messaging,sessions_list,sessions_history,sessions_send,session_statusfull: کوئی پابندی نہیں (unset کے برابر)
مثال (بطورِ طے شدہ صرف میسجنگ، اور Slack + Discord ٹولز کی اجازت بھی):
{
tools: {
profile: "messaging",
allow: ["slack", "discord"],
},
}
مثال (کوڈنگ پروفائل، مگر ہر جگہ exec/process کی ممانعت):
{
tools: {
profile: "coding",
deny: ["group:runtime"],
},
}
مثال (عالمی کوڈنگ پروفائل، میسجنگ-اونلی سپورٹ ایجنٹ):
{
tools: { profile: "coding" },
agents: {
list: [
{
id: "support",
tools: { profile: "messaging", allow: ["slack"] },
},
],
},
}
فراہم کنندہ کے لحاظ سے ٹول پالیسی¶
مخصوص فراہم کنندگان کے لیے ٹولز کو مزید محدود کرنے کے لیے tools.byProvider استعمال کریں
(or a single provider/model) without changing your global defaults.
Per-agent override: agents.list[].tools.byProvider.
یہ بنیادی ٹول پروفائل کے بعد اور allow/deny فہرستوں سے پہلے لاگو ہوتا ہے،
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).
مثال (عالمی کوڈنگ پروفائل برقرار رکھیں، مگر Google Antigravity کے لیے کم سے کم ٹولز):
{
tools: {
profile: "coding",
byProvider: {
"google-antigravity": { profile: "minimal" },
},
},
}
مثال (غیر مستحکم اینڈپوائنٹ کے لیے فراہم کنندہ/ماڈل مخصوص اجازت فہرست):
{
tools: {
allow: ["group:fs", "group:runtime", "sessions_list"],
byProvider: {
"openai/gpt-5.2": { allow: ["group:fs", "sessions_list"] },
},
},
}
مثال (ایک فراہم کنندہ کے لیے ایجنٹ مخصوص اوور رائیڈ):
{
agents: {
list: [
{
id: "support",
tools: {
byProvider: {
"google-antigravity": { allow: ["message", "sessions_list"] },
},
},
},
],
},
}
ٹول گروپس (شارٹ ہینڈز)¶
ٹول پالیسیز (گلوبل، ایجنٹ، سینڈباکس) group:* اندراجات کی حمایت کرتی ہیں جو متعدد ٹولز میں پھیل جاتے ہیں.
Use these in tools.allow / tools.deny.
دستیاب گروپس:
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:nodesgroup:openclaw: تمام بلٹ اِن OpenClaw ٹولز (فراہم کنندہ پلگ اِنز شامل نہیں)
مثال (صرف فائل ٹولز + براؤزر کی اجازت):
{
tools: {
allow: ["group:fs", "browser"],
},
}
پلگ اِنز + ٹولز¶
Plugins can register additional tools (and CLI commands) beyond the core set. انسٹال + کنفیگ کے لیے Plugins دیکھیں، اور یہ جاننے کے لیے Skills دیکھیں کہ ٹول کے استعمال کی رہنمائی پرامپٹس میں کیسے شامل کی جاتی ہے۔ کچھ پلگ انز اپنے ٹولز کے ساتھ اپنی اسکلز بھی فراہم کرتے ہیں (مثال کے طور پر، وائس کال پلگ ان)۔
اختیاری پلگ اِن ٹولز:
- Lobster: ریزیومیبل منظوریات کے ساتھ ٹائپڈ ورک فلو رن ٹائم (گیٹ وے ہوسٹ پر Lobster CLI درکار ہے)۔
- LLM Task: ساختہ ورک فلو آؤٹ پٹ کے لیے صرف-JSON LLM مرحلہ (اختیاری اسکیما ویلیڈیشن)۔
ٹول فہرست¶
apply_patch¶
ایک یا ایک سے زیادہ فائلوں پر اسٹرکچرڈ پیچز لاگو کریں۔ ملٹی ہنک ایڈیٹس کے لیے استعمال کریں۔
تجرباتی: tools.exec.applyPatch.enabled کے ذریعے فعال کریں (صرف OpenAI ماڈلز)۔
exec¶
ورک اسپیس میں شیل کمانڈز چلائیں۔
بنیادی پیرامیٹرز:
command(لازم)yieldMs(ٹائم آؤٹ کے بعد خودکار بیک گراؤنڈ، ڈیفالٹ 10000)background(فوری بیک گراؤنڈ)timeout(سیکنڈز؛ حد سے تجاوز پر پروسیس ختم، ڈیفالٹ 1800)elevated(bool؛ اگر ایلیویٹڈ موڈ فعال/اجازت یافتہ ہو تو ہوسٹ پر چلائیں؛ صرف اس وقت رویہ بدلتا ہے جب ایجنٹ sandboxed ہو)host(sandbox | gateway | node)security(deny | allowlist | full)ask(off | on-miss | always)node(host=nodeکے لیے نوڈ آئی ڈی/نام)- حقیقی TTY درکار ہے؟
pty: trueسیٹ کریں۔
نوٹس:
- بیک گراؤنڈ ہونے پر
sessionIdکے ساتھstatus: "running"واپس کرتا ہے۔ - بیک گراؤنڈ سیشنز کو پول/لاگ/لکھنے/ختم/صاف کرنے کے لیے
processاستعمال کریں۔ - اگر
processغیر مجاز ہو، توexecہم وقت چلتا ہے اورyieldMs/backgroundکو نظرانداز کرتا ہے۔ elevatedکوtools.elevatedکے علاوہ کسیagents.list[].tools.elevatedاوور رائیڈ کے ذریعے گیٹ کیا جاتا ہے (دونوں کی اجازت لازم) اور یہhost=gateway+security=fullکا عرف ہے۔elevatedصرف اس وقت رویہ بدلتا ہے جب ایجنٹ sandboxed ہو (ورنہ no-op ہے)۔host=nodemacOS معاون ایپ یا ہیڈ لیس نوڈ ہوسٹ (openclaw node run) کو ہدف بنا سکتا ہے۔- گیٹ وے/نوڈ منظوریات اور اجازت فہرستیں: Exec approvals۔
process¶
بیک گراؤنڈ exec سیشنز کا انتظام کریں۔
بنیادی ایکشنز:
list,poll,log,write,kill,clear,remove
نوٹس:
pollمکمل ہونے پر نیا آؤٹ پٹ اور ایگزٹ اسٹیٹس واپس کرتا ہے۔logلائن بیسڈoffset/limitکو سپورٹ کرتا ہے (offsetچھوڑ دیں تو آخری N لائنیں ملتی ہیں)۔processہر ایجنٹ کے دائرے میں ہے؛ دوسرے ایجنٹس کے سیشن نظر نہیں آتے۔
web_search¶
Brave Search API استعمال کرتے ہوئے ویب تلاش کریں۔
بنیادی پیرامیٹرز:
query(لازم)count(1–10؛ ڈیفالٹtools.web.search.maxResultsسے)
نوٹس:
- Brave API کلید درکار ہے (سفارش کردہ:
openclaw configure --section web، یاBRAVE_API_KEYسیٹ کریں)۔ tools.web.search.enabledکے ذریعے فعال کریں۔- جوابات کیش کیے جاتے ہیں (ڈیفالٹ 15 منٹ)۔
- سیٹ اپ کے لیے Web tools دیکھیں۔
web_fetch¶
URL سے قابلِ مطالعہ مواد حاصل کریں اور نکالیں (HTML → markdown/text)۔
بنیادی پیرامیٹرز:
url(لازم)extractMode(markdown|text)maxChars(طویل صفحات کو تراشیں)
نوٹس:
tools.web.fetch.enabledکے ذریعے فعال کریں۔maxCharsکوtools.web.fetch.maxCharsCap(ڈیفالٹ 50000) سے محدود کیا جاتا ہے۔- جوابات کیش کیے جاتے ہیں (ڈیفالٹ 15 منٹ)۔
- JS-ہیوی سائٹس کے لیے براؤزر ٹول کو ترجیح دیں۔
- سیٹ اپ کے لیے Web tools دیکھیں۔
- اختیاری اینٹی بوٹ فال بیک کے لیے Firecrawl دیکھیں۔
browser¶
OpenClaw کے زیرِ انتظام مخصوص براؤزر کو کنٹرول کریں۔
بنیادی ایکشنز:
status,start,stop,tabs,open,focus,closesnapshot(aria/ai)screenshot(امیج بلاک +MEDIA:<path>واپس کرتا ہے)act(UI ایکشنز: click/type/press/hover/drag/select/fill/resize/wait/evaluate)navigate,console,pdf,upload,dialog
پروفائل مینجمنٹ:
profiles— اسٹیٹس کے ساتھ تمام براؤزر پروفائلز کی فہرستcreate-profile— خودکار الاٹڈ پورٹ کے ساتھ نیا پروفائل بنائیں (یاcdpUrl)delete-profile— براؤزر بند کریں، یوزر ڈیٹا حذف کریں، کنفیگ سے ہٹائیں (صرف لوکل)reset-profile— پروفائل کے پورٹ پر یتیم پروسیس ختم کریں (صرف لوکل)
عام پیرامیٹرز:
profile(اختیاری؛ ڈیفالٹbrowser.defaultProfile)target(sandbox|host|node)node(اختیاری؛ مخصوص نوڈ آئی ڈی/نام منتخب کرتا ہے) نوٹس:browser.enabled=trueدرکار ہے (ڈیفالٹtrue؛ غیر فعال کرنے کے لیےfalseسیٹ کریں)۔- تمام ایکشنز ملٹی انسٹینس سپورٹ کے لیے اختیاری
profileپیرامیٹر قبول کرتے ہیں۔ - جب
profileچھوڑ دیا جائے، توbrowser.defaultProfileاستعمال ہوتا ہے (ڈیفالٹ "chrome")۔ - پروفائل نام: صرف لوئر کیس حروف/اعداد + ہائفنز (زیادہ سے زیادہ 64 کریکٹرز)۔
- پورٹ رینج: 18800-18899 (تقریباً 100 پروفائلز زیادہ سے زیادہ)۔
- ریموٹ پروفائلز صرف attach-only ہیں (start/stop/reset نہیں)۔
- اگر براؤزر صلاحیت والا نوڈ منسلک ہو، تو ٹول خودکار طور پر اس کی طرف روٹ کر سکتا ہے (جب تک آپ
targetپِن نہ کریں)۔ - Playwright انسٹال ہونے پر
snapshotبطورِ طے شدہaiہوتا ہے؛ ایکسیسبلٹی ٹری کے لیےariaاستعمال کریں۔ snapshotرول-اسنیپ شاٹ آپشنز (interactive,compact,depth,selector) کو بھی سپورٹ کرتا ہے جوe12جیسے refs واپس کرتے ہیں۔actکوsnapshotسےrefدرکار ہے (AI اسنیپ شاٹس سے عددی12، یا رول اسنیپ شاٹس سےe12)؛ نادر CSS سیلیکٹر ضروریات کے لیےevaluateاستعمال کریں۔- بطورِ طے شدہ
act→waitسے گریز کریں؛ صرف غیر معمولی صورتوں میں استعمال کریں (جب انتظار کے لیے قابلِ اعتماد UI اسٹیٹ نہ ہو)۔ uploadآرم کرنے کے بعد خودکار کلک کے لیے اختیاری طور پرrefپاس کر سکتا ہے۔upload،inputRef(aria ref) یاelement(CSS selector) کو بھی سپورٹ کرتا ہے تاکہ<input type="file">براہِ راست سیٹ کیا جا سکے۔
canvas¶
نوڈ کینوس (present, eval, snapshot, A2UI) کو چلائیں۔
بنیادی ایکشنز:
present,hide,navigate,evalsnapshot(امیج بلاک +MEDIA:<path>واپس کرتا ہے)a2ui_push,a2ui_reset
نوٹس:
- اندرونی طور پر گیٹ وے
node.invokeاستعمال کرتا ہے۔ - اگر کوئی
nodeفراہم نہ کیا جائے، تو ٹول ڈیفالٹ منتخب کرتا ہے (ایک واحد منسلک نوڈ یا لوکل میک نوڈ)۔ - A2UI صرف v0.8 ہے (کوئی
createSurfaceنہیں)؛ CLI لائن ایررز کے ساتھ v0.9 JSONL کو مسترد کرتا ہے۔ - فوری اسموک:
openclaw nodes canvas a2ui push --node <id> --text "Hello from A2UI"۔
nodes¶
جوڑے بنے نوڈز دریافت کریں اور ہدف بنائیں؛ نوٹیفکیشنز بھیجیں؛ کیمرا/اسکرین کیپچر کریں۔
بنیادی ایکشنز:
status,describepending,approve,reject(جوڑی بنانا)notify(macOSsystem.notify)run(macOSsystem.run)camera_snap,camera_clip,screen_recordlocation_get
نوٹس:
- کیمرا/اسکرین کمانڈز کے لیے نوڈ ایپ کا foreground میں ہونا ضروری ہے۔
- تصاویر امیج بلاکس +
MEDIA:<path>واپس کرتی ہیں۔ - ویڈیوز
FILE:<path>(mp4) واپس کرتی ہیں۔ - لوکیشن JSON پے لوڈ واپس کرتی ہے (lat/lon/accuracy/timestamp)۔
runپیرامیٹرز:commandargv array؛ اختیاریcwd,env(KEY=VAL),commandTimeoutMs,invokeTimeoutMs,needsScreenRecording۔
مثال (run):
{
"action": "run",
"node": "office-mac",
"command": ["echo", "Hello"],
"env": ["FOO=bar"],
"commandTimeoutMs": 12000,
"invokeTimeoutMs": 45000,
"needsScreenRecording": false
}
image¶
کنفیگر شدہ امیج ماڈل کے ساتھ تصویر کا تجزیہ کریں۔
بنیادی پیرامیٹرز:
image(لازم راستہ یا URL)prompt(اختیاری؛ ڈیفالٹ "Describe the image.")model(اختیاری اوور رائیڈ)maxBytesMb(اختیاری سائز حد)
نوٹس:
- صرف اس وقت دستیاب ہے جب
agents.defaults.imageModelکنفیگر ہو (پرائمری یا فال بیکس)، یا جب آپ کے ڈیفالٹ ماڈل + کنفیگر شدہ auth سے ایک ضمنی امیج ماڈل اخذ کیا جا سکے (best-effort pairing)۔ - امیج ماڈل کو براہِ راست استعمال کرتا ہے (مرکزی چیٹ ماڈل سے آزاد)۔
message¶
Discord/Google Chat/Slack/Telegram/WhatsApp/Signal/iMessage/MS Teams میں پیغامات اور چینل ایکشنز بھیجیں۔
بنیادی ایکشنز:
send(متن + اختیاری میڈیا؛ MS Teams میں Adaptive Cards کے لیےcardبھی سپورٹڈ ہے)poll(WhatsApp/Discord/MS Teams پولز)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
نوٹس:
sendWhatsApp کو Gateway کے ذریعے روٹ کرتا ہے؛ دیگر چینلز براہِ راست جاتے ہیں۔pollWhatsApp اور MS Teams کے لیے Gateway استعمال کرتا ہے؛ Discord پولز براہِ راست جاتے ہیں۔- جب میسج ٹول کال کسی فعال چیٹ سیشن سے بندھی ہو، تو بھیجنے کی کارروائیاں اسی سیشن کے ہدف تک محدود رہتی ہیں تاکہ سیاقی لیکس سے بچا جا سکے۔
cron¶
Gateway کے کرون جابز اور ویک اپس کا انتظام کریں۔
بنیادی ایکشنز:
status,listadd,update,remove,run,runswake(سسٹم ایونٹ قطار میں ڈالیں + اختیاری فوری ہارٹ بیٹ)
نوٹس:
addایک مکمل کرون جاب آبجیکٹ کی توقع کرتا ہے (وہی اسکیما جوcron.addRPC میں ہے)۔update،{ jobId, patch }استعمال کرتا ہے (idمطابقت کے لیے قبول ہے)۔
gateway¶
چلتے ہوئے Gateway پروسیس کو دوبارہ شروع کریں یا اپ ڈیٹس لاگو کریں (ان-پلیس)۔
بنیادی ایکشنز:
restart(اجازت دیتا ہے + ان-پروسیس ری اسٹارٹ کے لیےSIGUSR1بھیجتا ہے؛openclaw gatewayان-پلیس ری اسٹارٹ)config.get/config.schemaconfig.apply(ویلیڈیٹ + کنفیگ لکھیں + ری اسٹارٹ + ویک)config.patch(جزوی اپ ڈیٹ مرج + ری اسٹارٹ + ویک)update.run(اپ ڈیٹ چلائیں + ری اسٹارٹ + ویک)
نوٹس:
- جاری جواب میں خلل سے بچنے کے لیے
delayMs(ڈیفالٹ 2000) استعمال کریں۔ restartبطورِ طے شدہ غیر فعال ہے؛commands.restart: trueکے ساتھ فعال کریں۔
sessions_list / sessions_history / sessions_send / sessions_spawn / session_status¶
سیشنز کی فہرست بنائیں، ٹرانسکرپٹ ہسٹری دیکھیں، یا کسی اور سیشن کو بھیجیں۔
بنیادی پیرامیٹرز:
sessions_list:kinds?,limit?,activeMinutes?,messageLimit?(0 = کوئی نہیں)sessions_history:sessionKey(یاsessionId),limit?,includeTools?sessions_send:sessionKey(یاsessionId),message,timeoutSeconds?(0 = فائر اینڈ فورگیٹ)sessions_spawn:task,label?,agentId?,model?,runTimeoutSeconds?,cleanup?session_status:sessionKey?(ڈیفالٹ موجودہ؛sessionIdقبول کرتا ہے)،model?(defaultاوور رائیڈ صاف کرتا ہے)
نوٹس:
mainبراہِ راست چیٹ کی معیاری کلید ہے؛ عالمی/نامعلوم پوشیدہ ہوتے ہیں۔messageLimit > 0ہر سیشن کے آخری N پیغامات حاصل کرتا ہے (ٹول پیغامات فلٹر ہوتے ہیں)۔- جب
timeoutSeconds > 0ہو توsessions_sendحتمی تکمیل کا انتظار کرتا ہے۔ - ترسیل/اعلان تکمیل کے بعد ہوتا ہے اور best-effort ہے؛
status: "ok"اس بات کی تصدیق کرتا ہے کہ ایجنٹ رن ختم ہوا، نہ کہ اعلان پہنچا۔ sessions_spawnسب-ایجنٹ رن شروع کرتا ہے اور درخواست کنندہ چیٹ میں اعلان کا جواب پوسٹ کرتا ہے۔sessions_spawnنان بلاکنگ ہے اور فوراًstatus: "accepted"واپس کرتا ہے۔sessions_sendجواب-واپس پنگ-پونگ چلاتا ہے (روکنے کے لیےREPLY_SKIPکا جواب دیں؛ زیادہ سے زیادہ ٹرنزsession.agentToAgent.maxPingPongTurnsکے ذریعے، 0–5)۔- پنگ-پونگ کے بعد، ہدف ایجنٹ اعلان مرحلہ چلاتا ہے؛ اعلان دبانے کے لیے
ANNOUNCE_SKIPکا جواب دیں۔
agents_list¶
ان ایجنٹ آئی ڈیز کی فہرست بنائیں جنہیں موجودہ سیشن sessions_spawn کے ساتھ ہدف بنا سکتا ہے۔
نوٹس:
- نتیجہ ہر ایجنٹ کی اجازت فہرستوں (
agents.list[].subagents.allowAgents) تک محدود ہے۔ - جب
["*"]کنفیگر ہو، تو ٹول تمام کنفیگر شدہ ایجنٹس شامل کرتا ہے اورallowAny: trueکو نشان زد کرتا ہے۔
پیرامیٹرز (عام)¶
Gateway بیکڈ ٹولز (canvas, nodes, cron):
gatewayUrl(ڈیفالٹws://127.0.0.1:18789)gatewayToken(اگر auth فعال ہو)timeoutMs
نوٹ: جب gatewayUrl سیٹ ہو، تو gatewayToken کو واضح طور پر شامل کریں۔ ٹولز اوور رائیڈز کے لیے کنفیگ یا انوائرمنٹ کریڈینشلز وراثت میں نہیں لیتے، اور واضح کریڈینشلز کا نہ ہونا ایک ایرر ہے۔
براؤزر ٹول:
profile(اختیاری؛ ڈیفالٹbrowser.defaultProfile)target(sandbox|host|node)node(اختیاری؛ مخصوص نوڈ آئی ڈی/نام پِن کریں)
سفارش کردہ ایجنٹ فلوؤز¶
براؤزر آٹومیشن:
browser→status/startsnapshot(ai یا aria)act(click/type/press)- بصری تصدیق درکار ہو تو
screenshot
کینوس رینڈر:
canvas→presenta2ui_push(اختیاری)snapshot
نوڈ ہدف بندی:
nodes→status- منتخب نوڈ پر
describe notify/run/camera_snap/screen_record
حفاظت¶
- براہِ راست
system.runسے گریز کریں؛ صرف واضح صارف رضامندی کے ساتھnodes→runاستعمال کریں۔ - کیمرا/اسکرین کیپچر کے لیے صارف کی رضامندی کا احترام کریں۔
- میڈیا کمانڈز چلانے سے پہلے اجازتیں یقینی بنانے کے لیے
status/describeاستعمال کریں۔
ٹولز ایجنٹ کو کیسے پیش کیے جاتے ہیں¶
ٹولز دو متوازی چینلز میں ظاہر کیے جاتے ہیں:
- سسٹم پرامپٹ متن: انسان کے لیے قابلِ مطالعہ فہرست + رہنمائی۔
- ٹول اسکیما: ماڈل API کو بھیجی جانے والی ساختہ فنکشن تعریفیں۔
اس کا مطلب ہے کہ ایجنٹ دونوں چیزیں دیکھتا ہے: “کون سے ٹولز موجود ہیں” اور “انہیں کیسے کال کرنا ہے۔” اگر کوئی ٹول سسٹم پرامپٹ یا اسکیما میں ظاہر نہیں ہوتا، تو ماڈل اسے کال نہیں کر سکتا۔