CLI commands

الوكلاء

openclaw agents

إدارة الوكلاء المعزولين (مساحات العمل + المصادقة + التوجيه).

ذو صلة:

أمثلة

bash
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

ارتباطات التوجيه

استخدم ارتباطات التوجيه لتثبيت حركة القنوات الواردة على وكيل محدد.

إذا أردت أيضًا Skills مرئية مختلفة لكل وكيل، فاضبط agents.defaults.skills وagents.list[].skills في openclaw.json. راجع إعدادات Skills ومرجع الإعدادات.

عرض الارتباطات:

bash
openclaw agents bindingsopenclaw agents bindings --agent workopenclaw agents bindings --json

إضافة ارتباطات:

bash
openclaw agents bind --agent work --bind telegram:ops --bind discord:guild-a

يمكنك أيضًا إضافة ارتباطات عند إنشاء وكيل:

bash
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 ذلك الارتباط الموجود في مكانه بدلًا من إضافة نسخة مكررة.

أمثلة:

bash
# match all accounts on the channelopenclaw agents bind --agent work --bind telegram:* # match a specific accountopenclaw agents bind --agent work --bind telegram:ops # initial channel-only bindingopenclaw agents bind --agent work --bind telegram # later upgrade to account-scoped bindingopenclaw agents bind --agent work --bind telegram:alerts

بعد الترقية، يكون التوجيه لذلك الارتباط مقيدًا بالنطاق telegram:alerts. إذا أردت أيضًا توجيه الحساب الافتراضي، فأضفه صراحةً (مثلًا --bind telegram:default).

إزالة الارتباطات:

bash
openclaw agents unbind --agent work --bind telegram:opsopenclaw agents unbind --agent work --all

يقبل unbind إما --all أو قيمة واحدة أو أكثر من قيم --bind، وليس كليهما.

واجهة الأوامر

agents

تشغيل openclaw agents من دون أمر فرعي يعادل openclaw agents list.

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 الثابت افتراضيًا). تبقى ملفات 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

agents delete <id>

الخيارات:

  • --force
  • --json

ملاحظات:

  • لا يمكن حذف main.
  • من دون --force، يكون التأكيد التفاعلي مطلوبًا.
  • تُنقل مساحة العمل وحالة الوكيل ومجلدات نصوص الجلسات إلى سلة المهملات، ولا تُحذف حذفًا نهائيًا.
  • عندما يكون Gateway قابلًا للوصول، يُرسل الحذف عبر Gateway لكي تشترك عملية تنظيف الإعدادات ومخزن الجلسات في الكاتب نفسه مثل حركة وقت التشغيل. إذا تعذر الوصول إلى Gateway، تعود CLI إلى المسار المحلي غير المتصل.
  • إذا كانت مساحة عمل وكيل آخر هي المسار نفسه، أو داخل مساحة العمل هذه، أو تحتوي مساحة العمل هذه، فيُحتفظ بمساحة العمل ويبلغ --json عن workspaceRetained، وworkspaceRetainedReason، وworkspaceSharedWith.

ملفات الهوية

يمكن لكل مساحة عمل وكيل أن تتضمن ملف 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 <id>
  • --workspace <dir>
  • --identity-file <path>
  • --from-identity
  • --name <name>
  • --theme <theme>
  • --emoji <emoji>
  • --avatar <value>
  • --json

ملاحظات:

  • يمكن استخدام --agent أو --workspace لاختيار الوكيل الهدف.
  • إذا اعتمدت على --workspace وكان عدة وكلاء يتشاركون مساحة العمل هذه، يفشل الأمر ويطلب منك تمرير --agent.
  • تقتصر ملفات صور الصورة الرمزية المحلية النسبية إلى مساحة العمل على 2 ميغابايت. لا تُفحص عناوين HTTP(S) URL ومعرّفات URI التي تبدأ بـ data: بحد حجم الملف المحلي.
  • عندما لا تُقدَّم حقول هوية صريحة، يقرأ الأمر بيانات الهوية من IDENTITY.md.

التحميل من IDENTITY.md:

bash
openclaw agents set-identity --workspace ~/.openclaw/workspace --from-identity

تجاوز الحقول صراحةً:

bash
openclaw agents set-identity --agent main --name "OpenClaw" --emoji "🦞" --avatar avatars/openclaw.png

نموذج إعداد:

json5
{  agents: {    list: [      {        id: "main",        identity: {          name: "OpenClaw",          theme: "space lobster",          emoji: "🦞",          avatar: "avatars/openclaw.png",        },      },    ],  },}

ذو صلة

Was this useful?
On this page

On this page