CLI commands
الوكلاء
openclaw agents
إدارة الوكلاء المعزولين (مساحات العمل + المصادقة + التوجيه). تشغيل openclaw agents من دون أمر فرعي يعادل openclaw agents list.
مواضيع ذات صلة:
- توجيه الوكلاء المتعددين
- مساحة عمل الوكيل
- إعدادات Skills: إعداد إمكانية ظهور Skills.
أمثلة
openclaw agents listopenclaw agents list --bindingsopenclaw agents add work --workspace ~/.openclaw/workspace-workopenclaw agents add work --workspace ~/.openclaw/workspace-work --bind telegram:*openclaw agents add ops --workspace ~/.openclaw/workspace-ops --bind telegram:ops --non-interactiveopenclaw agents bindingsopenclaw agents bind --agent work --bind telegram:opsopenclaw agents unbind --agent work --bind telegram:opsopenclaw agents set-identity --workspace ~/.openclaw/workspace --from-identityopenclaw agents set-identity --agent main --avatar avatars/openclaw.pngopenclaw agents delete workواجهة الأوامر
agents list
الخيارات: --json، و--bindings (تضمين قواعد التوجيه الكاملة، وليس فقط الأعداد والملخصات لكل وكيل).
agents add [name]
الخيارات: --workspace <dir>، و--model <id>، و--agent-dir <dir>، و--bind <channel[:accountId]> (قابل للتكرار)، و--non-interactive، و--json.
- يؤدي تمرير أي خيار صريح للإضافة إلى تحويل الأمر إلى المسار غير التفاعلي.
- يتطلب الوضع غير التفاعلي اسم الوكيل و
--workspaceمعًا. - المعرّف
mainمحجوز ولا يمكن استخدامه معرّفًا للوكيل الجديد. - يهيّئ الوضع التفاعلي المصادقة بنسخ بيانات الاعتماد الثابتة والقابلة للنقل فقط (ملفات تعريف
api_keyوtokenالثابتة)، ما لم تمنع إحدى بيانات الاعتماد ذلك باستخدامcopyToAgents: false؛ ولا تُنسخ ملفات تعريف رمز تحديث OAuth إلا إذا سمح موفّر بذلك باستخدامcopyToAgents: true. من دون النسخ، يظل OAuth متاحًا فقط عبر الوراثة بالقراءة من مخزن وكيلmainالحقيقي. إذا لم يكن الوكيل الافتراضي المضبوط هوmain، فسجّل الدخول بصورة منفصلة إلى ملفات تعريف OAuth على الوكيل الجديد.
agents bindings
الخيارات: --agent <id>، و--json.
agents bind
الخيارات: --agent <id> (القيمة الافتراضية هي الوكيل الافتراضي الحالي)، و--bind <channel[:accountId]> (قابل للتكرار)، و--json.
agents unbind
الخيارات: --agent <id> (القيمة الافتراضية هي الوكيل الافتراضي الحالي)، و--bind <channel[:accountId]> (قابل للتكرار)، و--all، و--json. يقبل إما --all أو قيمة واحدة أو أكثر من قيم --bind، وليس كليهما.
agents set-identity
الخيارات: --agent <id>، و--workspace <dir>، و--identity-file <path>، و--from-identity، و--name <name>، و--theme <theme>، و--emoji <emoji>، و--avatar <value>، و--json. راجع تعيين الهوية أدناه.
agents delete <id>
الخيارات: --force، و--json.
- لا يمكن حذف
main. - من دون
--force، يلزم تأكيد تفاعلي (ويفشل الأمر في جلسة لا تستخدم TTY؛ أعد تشغيله مع--force). - تُنقل أدلة مساحة العمل وحالة الوكيل ونصوص الجلسات إلى سلة المهملات، ولا تُحذف نهائيًا.
- عندما يكون Gateway متاحًا، يمر الحذف عبر Gateway لكي تستخدم عملية تنظيف الإعدادات ومخزن الجلسات الجهة الكاتبة نفسها التي تستخدمها حركة بيانات وقت التشغيل. إذا تعذر الوصول إلى Gateway، يعود CLI إلى المسار المحلي غير المتصل.
- إذا كانت مساحة عمل وكيل آخر هي المسار نفسه، أو داخل مساحة العمل هذه، أو تحتوي مساحة العمل هذه، فسيُحتفظ بمساحة العمل، ويُبلغ
--jsonعنworkspaceRetainedوworkspaceRetainedReasonوworkspaceSharedWith.
ارتباطات التوجيه
استخدم ارتباطات التوجيه لتثبيت حركة القناة الواردة على وكيل محدد.
إذا أردت أيضًا عرض Skills مختلفة لكل وكيل، فاضبط agents.defaults.skills وagents.list[].skills في openclaw.json. راجع إعدادات Skills ومرجع الإعدادات.
سرد الارتباطات:
openclaw agents bindingsopenclaw agents bindings --agent workopenclaw agents bindings --jsonإضافة ارتباطات:
openclaw agents bind --agent work --bind telegram:ops --bind discord:guild-aيمكنك أيضًا إضافة الارتباطات عند إنشاء وكيل:
openclaw agents add work --workspace ~/.openclaw/workspace-work --bind telegram:* --bind discord:*إذا حذفت accountId (--bind <channel>)، فسيستنتجه OpenClaw من خطافات إعداد Plugin، أو ارتباط الحساب المفروض، أو عدد الحسابات المضبوطة للقناة.
إذا حذفت --agent من bind أو unbind، فسيستهدف OpenClaw الوكيل الافتراضي الحالي.
تنسيق --bind
| التنسيق | المعنى |
|---|---|
--bind <channel>:* |
مطابقة جميع الحسابات على القناة. |
--bind <channel>:<account> |
مطابقة حساب واحد. |
--bind <channel> |
مطابقة الحساب الافتراضي فقط، ما لم يتمكن CLI من استنتاج نطاق حساب خاص بـPlugin بأمان. |
سلوك نطاق الارتباط
- الارتباط المخزّن من دون
accountIdيطابق الحساب الافتراضي للقناة فقط. - تمثل
accountId: "*"الخيار الاحتياطي على مستوى القناة (جميع الحسابات)، وهي أقل تحديدًا من ارتباط صريح بحساب. - إذا كان لدى الوكيل نفسه ارتباط قناة مطابق من دون
accountId، ثم أضفت لاحقًا ارتباطًا باستخدامaccountIdصريح أو مستنتج، فسيحدّث OpenClaw ذلك الارتباط الحالي في موضعه بدلًا من إضافة ارتباط مكرر.
أمثلة:
# مطابقة جميع الحسابات على القناةopenclaw agents bind --agent work --bind telegram:* # مطابقة حساب محددopenclaw agents bind --agent work --bind telegram:ops # ارتباط أولي بالقناة فقطopenclaw agents bind --agent work --bind telegram # ترقية لاحقة إلى ارتباط محدد النطاق بحسابopenclaw agents bind --agent work --bind telegram:alertsبعد الترقية، يصبح توجيه ذلك الارتباط محدد النطاق بـtelegram:alerts. إذا أردت أيضًا توجيه الحساب الافتراضي، فأضفه صراحةً (مثلًا --bind telegram:default).
إزالة الارتباطات:
openclaw agents unbind --agent work --bind telegram:opsopenclaw agents unbind --agent work --allملفات الهوية
يمكن أن تتضمن مساحة عمل كل وكيل ملف IDENTITY.md في جذر مساحة العمل:
- مثال للمسار:
~/.openclaw/workspace/IDENTITY.md - يقرأ
set-identity --from-identityمن جذر مساحة العمل (أو من--identity-fileصريح).
تُحل مسارات الصور الرمزية نسبةً إلى جذر مساحة العمل، ولا يمكنها الخروج منه حتى عبر رابط رمزي.
تعيين الهوية
يكتب set-identity الحقول في agents.list[].identity: name وtheme وemoji وavatar (مسار نسبي إلى مساحة العمل، أو عنوان URL يستخدم http(s)، أو معرّف URI للبيانات).
- يحدد
--agentأو--workspaceالوكيل المستهدف. إذا طابق--workspaceأكثر من وكيل واحد، يفشل الأمر ويطلب منك تمرير--agent. - يقتصر حجم ملفات الصور الرمزية المحلية ذات المسارات النسبية إلى مساحة العمل على 2 ميغابايت. ولا تخضع عناوين URL التي تستخدم HTTP(S) ومعرّفات URI من نوع
data:لحد حجم الملف المحلي. - عند عدم توفير حقول هوية صريحة، يقرأ الأمر بيانات الهوية من
IDENTITY.md.
التحميل من IDENTITY.md:
openclaw agents set-identity --workspace ~/.openclaw/workspace --from-identityتجاوز الحقول صراحةً:
openclaw agents set-identity --agent main --name "OpenClaw" --emoji "🦞" --avatar avatars/openclaw.pngنموذج إعداد:
{ agents: { list: [ { id: "main", identity: { name: "OpenClaw", theme: "space lobster", emoji: "🦞", avatar: "avatars/openclaw.png", }, }, ], },}