Bundled plugin guides
Plugin لوحة العمل
يضيف Plugin لوحة العمل لوحة اختيارية بأسلوب Kanban إلى واجهة التحكم. استخدمه لجمع بطاقات عمل بحجم مناسب للوكلاء، وإسنادها إلى الوكلاء، وتتبع مهمة الخلفية المرتبطة والتشغيل وجلسة لوحة المعلومات من بطاقة واحدة.
لوحة العمل صغيرة عن قصد. إنها تتتبع العمل التشغيلي المحلي لـ OpenClaw Gateway؛ وليست بديلاً عن GitHub Issues أو Linear أو Jira أو أنظمة إدارة مشاريع الفرق الأخرى.
الحالة الافتراضية
لوحة العمل Plugin مضمّن ومعطل افتراضيًا ما لم تفعّله في إعدادات Plugin.
فعّله باستخدام:
openclaw plugins enable workboardopenclaw gateway restartثم افتح لوحة المعلومات:
openclaw dashboardتظهر علامة تبويب لوحة العمل في تنقل لوحة المعلومات. إذا كانت علامة التبويب مرئية
لكن Plugin معطّل أو محظور بواسطة plugins.allow / plugins.deny، فسيعرض
العرض حالة عدم توفر Plugin بدلاً من بيانات البطاقات المحلية.
ما تحتويه البطاقات
تخزن كل بطاقة:
- العنوان والملاحظات
- الحالة:
triageأوbacklogأوtodoأوscheduledأوreadyأوrunning، أوreviewأوblockedأوdone - الأولوية:
lowأوnormalأوhighأوurgent - التسميات
- معرّف وكيل اختياري
- مهمة أو تشغيل أو جلسة أو عنوان URL مصدر مرتبط اختياري
- بيانات وصفية اختيارية للتنفيذ لتشغيل Codex أو Claude بدأ من البطاقة
- بيانات وصفية مدمجة للمحاولات والتعليقات والروابط والأدلة والمصنوعات والأتمتة والمرفقات وسجلات العامل وحالة بروتوكول العامل والمطالبات والتشخيصات والإشعارات والقوالب وحالة الأرشيف واكتشاف الجلسات القديمة
- أحداث بطاقة حديثة مثل تغييرات الإنشاء أو النقل أو الربط أو المطالبة أو Heartbeat أو المحاولة أو الدليل أو المصنوع أو التشخيص أو الإشعار أو الإرسال أو الأرشفة أو التقادم أو التحديث بواسطة الوكيل
تُخزّن البطاقات في حالة Gateway الخاصة بـ Plugin. وهي محلية لدليل حالة Gateway وتنتقل مع بقية حالة OpenClaw لذلك الـ Gateway.
تحتفظ لوحة العمل ببيانات وصفية مدمجة لكل بطاقة حتى يتمكن المشغلون من رؤية كيفية انتقال البطاقة عبر اللوحة دون فتح الجلسة المرتبطة. الأحداث وملخصات المحاولات ومقتطفات الأدلة والروابط ذات الصلة والتعليقات وعلامات الأرشيف وعلامات الجلسات القديمة هي بيانات وصفية محلية عن قصد؛ ولا تحل محل نصوص الجلسات أو سجل مشكلات GitHub.
تنفيذات البطاقات والمهام
يمكن للبطاقات غير المرتبطة بدء العمل من البطاقة. تستخدم عمليات البدء الذاتية مسار تشغيل الوكيل المتتبع بالمهام في Gateway، ثم تربط لوحة العمل المهمة الناتجة ومعرّف التشغيل ومفتاح الجلسة مرة أخرى بالبطاقة. يستخدم البدء الوكيل والنموذج الافتراضيين المكوّنين في Gateway. إجراءات Codex وClaude اختيارات نموذج صريحة اختيارية:
- يبدأ تشغيل Codex أو تشغيل Claude تشغيل وكيل مدعومًا بمهمة، ويرسل مطالبة البطاقة،
ويعلّم البطاقة
running. - ينشئ فتح Codex أو فتح Claude جلسة لوحة معلومات مرتبطة دون إرسال مطالبة البطاقة أو نقل البطاقة، بحيث يمكنك العمل يدويًا بينما تظل مرفقة باللوحة.
تخزن بيانات التنفيذ الوصفية المحرك المحدد والوضع ومرجع النموذج ومفتاح الجلسة
ومعرّف التشغيل ومعرّف المهمة عند توفره وحالة دورة الحياة على البطاقة. تستخدم تنفيذات Codex
openai/gpt-5.5؛ وتستخدم تنفيذات Claude
anthropic/claude-sonnet-4-6.
يسجل كل تنفيذ مرتبط أيضًا ملخص محاولة في سجل البطاقة نفسه. يحتفظ ملخص المحاولة بالمحرك والوضع والنموذج ومعرّف التشغيل والطوابع الزمنية والحالة وعدد الإخفاقات المتدرج بحيث تبقى الإخفاقات المتكررة مرئية على اللوحة.
تحدّث لوحة المعلومات حالة المهمة من سجل مهام Gateway وتطابق المهام مع البطاقات حسب معرّف المهمة أو معرّف التشغيل أو مفتاح الجلسة المرتبط. إذا كانت المهمة في قائمة الانتظار أو قيد التشغيل، فتعرض دورة حياة البطاقة حالة المهمة النشطة. إذا انتهت المهمة أو فشلت أو انتهت مهلتها أو أُلغيت، تنتقل دورة حياة البطاقة نحو حالة المراجعة أو الحظر باستخدام مزامنة دورة الحياة نفسها للجلسات المرتبطة.
تنسيق الوكلاء
تعرض لوحة العمل أيضًا أدوات وكيل اختيارية لسير العمل الواعي باللوحة:
- يسرد
workboard_listبطاقات مدمجة مع حالة المطالبة والتشخيص، مع مرشح لوحة اختياري. - يعيد
workboard_readبطاقة واحدة مع سياق عامل محدود مبني من الملاحظات والمحاولات والتعليقات والروابط والأدلة والمصنوعات ونتائج الآباء وعمل المكلّف الحديث والتشخيصات النشطة. - ينشئ
workboard_createبطاقة مع آباء اختياريين ومستأجر وSkills ولوحة وبيانات وصفية لمساحة العمل ومفتاح عدم التكرار وحدّ وقت التشغيل وميزانية إعادة المحاولة. - يربط
workboard_linkبطاقة أب ببطاقة ابن. يبقى الأبناء فيtodoحتى يصل كل أب إلىdone؛ ثم تنقلهم ترقية الإرسال إلىready. - يطالب
workboard_claimببطاقة للوكيل المستدعي وينقل بطاقات backlog أو todo أو ready إلىrunning. - يحدّث
workboard_heartbeatHeartbeat المطالبة أثناء عمليات التشغيل الأطول. - يحرر
workboard_releaseالمطالبة بعد الإكمال أو الإيقاف المؤقت أو التسليم ويمكنه نقل البطاقة إلى حالة تالية. workboard_completeوworkboard_blockهما أداتا دورة حياة منظمتان للملخصات النهائية والأدلة والمصنوعات وبيانات البطاقات المنشأة وأسباب الحظر. يجب أن تشير بيانات البطاقات المنشأة إلى بطاقات مرتبطة مرة أخرى بالبطاقة المكتملة، مما يبقي الأبناء الوهميين خارج الملخصات.- يخزن
workboard_attachment_addوworkboard_attachment_readوworkboard_attachment_deleteمرفقات بطاقات صغيرة في حالة SQLite الخاصة بـ Plugin ويفهرسها على البطاقة ويعرضها في سياق العامل. - يسجل
workboard_worker_logوworkboard_protocol_violationأسطر سجل العامل ويحظران البطاقات عندما يتوقف عامل آلي دون استدعاءworkboard_completeأوworkboard_block. - يدير
workboard_board_createوworkboard_board_archiveوworkboard_board_deleteبيانات اللوحة الوصفية المستمرة مثل اسم العرض والوصف وحالة الأرشيف ومساحة العمل الافتراضية. - يعيد
workboard_runsسجل محاولات التشغيل المستمر المخزن على البطاقة. - يحوّل
workboard_specifyبطاقة فرز أو backlog تقريبية إلى بطاقةtodoموضحة ويسجل ملخص المواصفات على البطاقة. - يوزع
workboard_decomposeبطاقة تنسيق أب إلى أبناء مرتبطين، ويرث بيانات اللوحة والمستأجر الوصفية، ويمكنه إكمال الأب باستخدام بيان بطاقات منشأة. - يدير
workboard_notify_subscribeوworkboard_notify_listوworkboard_notify_eventsوworkboard_notify_advanceوworkboard_notify_unsubscribeاشتراكات الإشعارات في حالة Plugin. قراءات الأحداث آمنة لإعادة التشغيل؛ وتنقل أداة التقدم المؤشر الدائم بحيث يمكن للمستدعين الاستئناف دون فقدان أو قراءة مزدوجة لأحداث البطاقات المكتملة أو الفاشلة أو القديمة. - يتيح
workboard_boardsوworkboard_statsوworkboard_promoteوworkboard_reassignوworkboard_reclaimوworkboard_commentوworkboard_proofوworkboard_unblockوworkboard_dispatchللوكيل فحص مساحات أسماء اللوحات، وعرض إحصاءات قائمة الانتظار، واستعادة العمل العالق، وإضافة ملاحظات التسليم، وإرفاق مراجع أدلة أو مصنوعات، ونقل العمل المحظور مرة أخرى إلىtodo، ودفع ترقية التبعيات أو تنظيف المطالبات القديمة.
ترفض البطاقات المطالب بها تعديلات أدوات الوكلاء من وكلاء آخرين ما لم يكن لدى المستدعي
رمز المطالبة الذي أعاده workboard_claim. لا يزال مشغلو لوحة المعلومات يستخدمون
سطح Gateway RPC العادي ويمكنهم استعادة البطاقات أو إعادة إسنادها.
تخزن لوحة العمل بيانات اللوحة الدائمة في قاعدة بيانات SQLite علائقية مملوكة لـ Plugin ضمن دليل حالة OpenClaw. تستمر اللوحات والبطاقات والتسميات وأحداث دورة الحياة ومحاولات التشغيل والتعليقات وروابط التبعيات والأدلة ومراجع المصنوعات وبيانات المرفقات الوصفية والكتل الثنائية والتشخيصات والإشعارات وسجلات العامل وحالة البروتوكول والاشتراكات في جداول لوحة العمل بدلاً من إدخالات المفتاح والقيمة الخاصة بـ Plugin. لا يزال تصدير البطاقة يحافظ على سرد اللوحة دون تضمين محتويات كتل المرفقات الثنائية.
يمكن للتثبيتات التي استخدمت لوحة العمل في إصدار .28 تشغيل
openclaw doctor --fix لترحيل مساحات أسماء حالة Plugin القديمة المشحونة
(workboard.cards وworkboard.boards وworkboard.notify) إلى
قاعدة البيانات العلائقية. إذا وُجدت مساحة أسماء workboard.attachments قديمة،
فسيرحّل doctor كتل المرفقات الثنائية تلك أيضًا.
تُحسب تشخيصات لوحة العمل من بيانات البطاقة الوصفية المحلية. تضع الفحوصات المدمجة علامة على البطاقات المسندة التي تنتظر فترة طويلة جدًا، والبطاقات قيد التشغيل دون Heartbeat حديث، والبطاقات المحظورة التي تحتاج إلى انتباه، والإخفاقات المتكررة، والبطاقات المنجزة دون دليل، والبطاقات قيد التشغيل التي لا تملك سوى رابط جلسة فضفاض.
الإرسال محلي لـ Gateway عن قصد. فهو لا ينشئ عمليات نظام تشغيل
اعتباطية؛ إذ تظل جلسات الوكلاء الفرعيين العادية في OpenClaw مالكة للتنفيذ. يعزز
إجراء الإرسال البطاقات الجاهزة تبعياً، ويسجل بيانات الإرسال الوصفية على
البطاقات الجاهزة، ويحظر المطالبات المنتهية أو عمليات التشغيل التي انتهت مهلتها، ويعلّم بطاقات الفرز
المكوّنة على اللوحة كمرشحات للتنسيق، ثم يطالب بدفعة صغيرة من البطاقات الجاهزة
ويبدأ عمليات تشغيل العاملين عبر وقت تشغيل الوكلاء الفرعيين في Gateway. تستخدم
البطاقات المسندة مفاتيح جلسات عامل agent:<id>:subagent:workboard-*؛ وتستخدم
البطاقات غير المسندة مفاتيح subagent:workboard-* غير محددة النطاق بحيث يظل Gateway يحل
الوكيل الافتراضي المكوّن. يحصل العاملون على سياق بطاقة محدود بالإضافة إلى رمز المطالبة
الذي يحتاجونه لإرسال Heartbeat أو إكمال البطاقة أو حظرها عبر أدوات لوحة العمل.
اختيار عامل الإرسال
تبدأ كل جولة إرسال ثلاثة عاملين كحد أقصى افتراضيًا. تُرتّب البطاقات الجاهزة حسب الأولوية والموضع ووقت الإنشاء، ثم تُرشّح لتجنب تكرار الملكية النشطة. يبدأ الإرسال بطاقة واحدة فقط لمالك أو وكيل معين في الجولة نفسها، ويتخطى المالكين الذين لديهم بالفعل عمل قيد التشغيل أو قيد المراجعة على اللوحة.
لا تُختار البطاقات المؤرشفة والبطاقات ذات المطالبات النشطة والبطاقات التي ليست في حالة ready
لبدء العاملين. يمكن أن تظل متأثرة بجانب البيانات من
الإرسال عندما ينطبق تنظيف المطالبات القديمة أو ترقية التبعيات أو تنظيف انتهاء المهلة.
مطالبة العامل ودورة الحياة
تتضمن مطالبة العامل عنوان البطاقة والملاحظات والسياق المحدودين
واللوحة المسندة وبروتوكول عامل لوحة العمل. وتتضمن أيضًا مالك المطالبة
ورمز المطالبة بحيث يمكن للعامل استدعاء workboard_heartbeat
أو workboard_complete أو workboard_block دون أن يستولي طرف آخر على
البطاقة.
عندما يبدأ عامل بنجاح، تخزن لوحة العمل مفتاح الجلسة ومعرّف التشغيل والمحرك والوضع وتسمية النموذج والحالة وسجل العامل على البطاقة. يكون مفتاح الجلسة حتميًا للوحة والبطاقة، مما يجعل عمليات الإرسال المتكررة تُوجّه مرة أخرى إلى مسار العامل نفسه بدلاً من إنشاء جلسات غير ذات صلة.
إذا تعذر بدء عامل بعد المطالبة ببطاقة، تحظر لوحة العمل البطاقة، وتمسح المطالبة، وتسجل فشل بدء التشغيل، وتلحق سطر سجل عامل. يكون ذلك الفشل مرئيًا في لوحة المعلومات وJSON الخاص بـ CLI وأدوات الوكلاء وتشخيصات البطاقة.
نقاط دخول الإرسال
يمكن أن يبدأ عامل البطاقة الجاهزة من:
- إجراء الإرسال في لوحة المعلومات
openclaw workboard dispatch/workboard dispatchعلى قناة تدعم الأوامر
تستخدم نقاط الدخول الثلاث وقت تشغيل الوكيل الفرعي في Gateway عندما يكون Gateway
متاحًا. لدى CLI احتياط إضافي للمشغل: إذا كان Gateway غير متصل أو
لا يعرض طريقة إرسال لوحة العمل ولم يُقدَّم هدف --url أو
--token صريح، فإنه يشغّل إرسالًا للبيانات فقط على حالة SQLite المحلية.
يمكن لهذا الاحتياط ترقية التبعيات وتنظيف المطالبات القديمة وحظر
عمليات التشغيل التي انتهت مهلتها، لكنه لا يستطيع بدء العاملين.
يمكن أن تتضمن بيانات اللوحة الوصفية إعدادات تنسيق مثل autoDecompose
وautoDecomposePerDispatch وdefaultAssignee وorchestratorProfile.
يسجل OpenClaw نية التنسيق ويعرضها في سياق العامل؛ أما
التحديد والتفكيك الفعليان فما زالا يحدثان عبر أدوات لوحة العمل العادية.
CLI وأمر الشرطة المائلة
يسجل Plugin أمر CLI جذريًا:
openclaw workboard listopenclaw workboard create "Fix stale card lifecycle" --priority high --labels bug,workboardopenclaw workboard show <card-id>openclaw workboard dispatchيستدعي openclaw workboard dispatch الـ Gateway قيد التشغيل حتى تستخدم بدايات العمال
نفس وقت تشغيل الوكيل الفرعي مثل لوحة التحكم. إذا لم يكن Gateway متاحًا، فإنه يعود
إلى الإرسال المعتمد على البيانات فقط حتى تظل ترقية التبعيات، وتنظيف المطالبات
القديمة، وحظر المهلات قادرة على العمل. لا تزال إخفاقات المصادقة، والأذونات،
والتحقق تظهر كأخطاء أوامر، وكذلك إخفاقات أهداف --url أو --token الصريحة.
يدعم أمر الشرطة المائلة /workboard مسار المشغّل المضغوط نفسه:
/workboard list، و/workboard show <card-id>، و/workboard create <title>، و
/workboard dispatch. تُعد عمليتا العرض والقائمة عمليات قراءة لمرسلي الأوامر
المصرّح لهم. يتطلب الإنشاء والإرسال حالة مالك على أسطح المحادثة أو عميل Gateway
مع operator.write أو operator.admin.
راجع Workboard CLI لمعرفة أعلام الأوامر، وإخراج JSON، وسلوك الرجوع في Gateway، ومعالجة بادئات المعرفات غير الملتبسة، وقواعد اختيار الإرسال، واستكشاف الأخطاء وإصلاحها.
مزامنة دورة حياة الجلسة
يمكن ربط البطاقات بجلسات لوحة تحكم موجودة أو بالجلسة التي تُنشأ عند بدء العمل من بطاقة. تعرض البطاقات المرتبطة دورة حياة الجلسة ضمنيًا: قيد التشغيل، قديمة، مرتبطة وخاملة، منجزة، فاشلة، أو مفقودة.
إذا كانت الجلسة المرتبطة مفقودة، تبقى البطاقة مرتبطة للسياق ولا تزال تعرض عناصر تحكم البدء حتى تتمكن من إعادة تشغيل العمل في جلسة لوحة تحكم جديدة. إذا توقفت جلسة مرتبطة نشطة عن الإبلاغ عن نشاط حديث، يضع Workboard علامة قديمة على البطاقة ويخزن العلامة كبيانات وصفية للبطاقة حتى تزيلها دورة الحياة.
يمكنك أيضًا التقاط جلسة لوحة تحكم موجودة من تبويب الجلسات باستخدام إضافة إلى Workboard. تُربط البطاقة بتلك الجلسة، وتستخدم تسمية الجلسة أو أحدث مطالبة للمستخدم كعنوان، وتملأ الملاحظات من أحدث مطالبة للمستخدم بالإضافة إلى أحدث رد من المساعد عندما يكون سجل المحادثة متاحًا.
يتبع Workboard الجلسة المرتبطة ما دامت البطاقة في حالة عمل نشطة:
- جلسة مرتبطة نشطة ->
running - جلسة مرتبطة مكتملة ->
review - جلسة مرتبطة فاشلة أو مقتولة أو منتهية المهلة أو مُجهضة ->
blocked
لحالات المراجعة اليدوية الأولوية. إذا نقلت بطاقة إلى review أو blocked أو
done، يتوقف Workboard عن نقل تلك البطاقة تلقائيًا حتى تعيدها إلى todo أو
running.
سير عمل لوحة التحكم
- افتح تبويب Workboard في واجهة التحكم.
- أنشئ بطاقة بعنوان، وملاحظات، وأولوية، وتسميات، ووكيل اختياري، وجلسة مرتبطة اختيارية.
- أو افتح الجلسات واختر إضافة إلى Workboard لجلسة موجودة.
- اسحب البطاقة بين الأعمدة أو ركّز عنصر تحكم الحالة المضغوط على البطاقة واستخدم قائمته أو ArrowLeft/ArrowRight.
- ابدأ العمل من البطاقة لإنشاء جلسة لوحة تحكم أو إعادة استخدامها.
- افتح الجلسة المرتبطة من البطاقة أثناء عمل الوكيل.
- دع مزامنة دورة الحياة تنقل العمل الجاري إلى المراجعة أو الحظر، ثم انقل البطاقة يدويًا إلى منجز عند القبول.
يستخدم بدء بطاقة جلسات Gateway العادية. لا يخزن Plugin Workboard إلا البيانات الوصفية للبطاقات والروابط؛ أما نص المحادثة، واختيار النموذج، ودورة حياة التشغيل فتظل مملوكة لنظام الجلسات العادي.
استخدم إيقاف على بطاقة مرتبطة مباشرة لإجهاض تشغيل الجلسة النشطة. يضع Workboard
تلك البطاقة في حالة blocked حتى تظل مرئية للمتابعة.
يمكن أن تبدأ البطاقات الجديدة من قوالب Workboard لإصلاح الأخطاء، أو الوثائق، أو الإصدارات، أو مراجعات PR، أو عمل Plugin. تملأ القوالب العنوان، والملاحظات، والتسميات، والأولوية مسبقًا، ويُخزن معرف القالب المحدد كبيانات وصفية للبطاقة.
الأذونات
يسجل Plugin أساليب Gateway RPC ضمن مساحة الأسماء workboard.*:
- يتطلب
workboard.cards.listإذنoperator.read - يتطلب
workboard.cards.exportإذنoperator.read - يتطلب
workboard.cards.diagnosticsإذنoperator.read - يتطلب
workboard.cards.diagnostics.refreshإذنoperator.write - تتطلب قراءات قائمة/جلب المرفقات وأحداث الإشعارات إذن
operator.read - يتطلب تقديم مؤشر الإشعارات إذن
operator.write - تتطلب أساليب الإنشاء، والتحديث، والنقل، والحذف، والتعليق، والربط، وربط
التبعيات، والإثبات، والقطعة الأثرية، وإضافة/حذف المرفقات، وسجل العامل،
وانتهاك البروتوكول، والمطالبة، وHeartbeat، والإصدار، والإكمال، والحظر،
وإلغاء الحظر، والإرسال، والعمليات المجمعة، والأرشفة إذن
operator.write
يمكن للمتصفحات المتصلة بصلاحية مشغّل للقراءة فقط فحص اللوحة لكنها لا تستطيع تعديل البطاقات.
التكوين
لا يملك Workboard أي تكوين خاص بالـ Plugin اليوم. فعّله أو عطّله باستخدام إدخال Plugin القياسي:
{ plugins: { entries: { workboard: { enabled: true, config: {}, }, }, },}عطّله مرة أخرى باستخدام:
openclaw plugins disable workboardopenclaw gateway restartاستكشاف الأخطاء وإصلاحها
يشير التبويب إلى أن Workboard غير متاح
تحقق من سياسة Plugin:
openclaw plugins inspect workboard --runtime --jsonإذا كان plugins.allow مكوّنًا، فأضف workboard إلى قائمة السماح تلك. إذا كان
plugins.deny يحتوي على workboard، فأزله قبل تفعيل Plugin.
لا تُحفظ البطاقات
تأكد من أن اتصال المتصفح يملك صلاحية operator.write. يمكن لجلسات المشغّل
للقراءة فقط سرد البطاقات لكنها لا تستطيع إنشاءها أو تعديلها أو نقلها أو حذفها.
لا يفتح بدء بطاقة الجلسة المتوقعة
ينشئ Workboard روابط إلى جلسات لوحة التحكم العادية. تحقق من معرف وكيل البطاقة والجلسة المرتبطة، ثم افتح عرض الجلسات أو المحادثة لفحص حالة التشغيل الفعلية.
لا يبدأ الإرسال عاملاً
تأكد من وجود بطاقة ready واحدة على الأقل من دون مطالبة نشطة:
openclaw workboard list --status readyإذا أبلغت CLI عن إرسال معتمد على البيانات فقط، فابدأ Gateway أو أعد تشغيله ثم أعد المحاولة. يحدّث الإرسال المعتمد على البيانات فقط حالة اللوحة المحلية لكنه لا يستطيع بدء تشغيلات عمال الوكلاء الفرعيين.
يمكن أيضًا تخطي البطاقات عندما تكون بطاقة أخرى للمالك نفسه أو الوكيل نفسه قيد التشغيل بالفعل أو بانتظار المراجعة. أكمل ذلك العمل النشط أو احظره أو أطلقه قبل إرسال مزيد من العمل للمالك نفسه.