---
read_when:
    - تريد من الوكيل إنشاء مهارة أو تحديثها عبر الدردشة
    - تحتاج إلى مراجعة مسودة Skill مُنشأة أو تطبيقها أو رفضها أو عزلها
    - أنت تهيئ الموافقة أو الاستقلالية أو التخزين أو الحدود في ورشة Skills
    - تريد فهم المكان الذي تُراجَع فيه مقترحات التعلّم الذاتي
sidebarTitle: Skill Workshop
summary: إنشاء Skills مساحة العمل وتحديثها من خلال مراجعة Skill Workshop
title: ورشة عمل Skills
x-i18n:
    generated_at: "2026-07-16T15:23:50Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: 2c2590f2a1bcad3b22ef8504eac7b3a44611c3fedc0df3832660f8926ce04252
    source_path: tools/skill-workshop.md
    workflow: 16
---

Skill Workshop هو المسار الخاضع للحوكمة في OpenClaw لإنشاء Skills مساحة العمل
وتحديثها. لا تكتب الوكلاء ولا الجهات المشغّلة `SKILL.md` مباشرةً عبر هذا
المسار، بل ينشئون **مقترحًا** (مسودة معلّقة تتضمن المحتوى وربط الهدف
وحالة الماسح والتجزئات وبيانات التراجع الوصفية) لا يصبح Skill نشطة
إلا عند تطبيقه.

لا يكتب Skill Workshop إلا Skills مساحة العمل. ولا يمس مطلقًا Skills المضمّنة
أو التابعة لـ Plugin أو ClawHub أو الجذر الإضافي أو المُدارة أو الخاصة بالوكيل الشخصي أو النظام.

## آلية العمل

- **المقترح أولًا:** يُخزَّن المحتوى المُنشأ بوصفه `PROPOSAL.md`، وليس
  `SKILL.md`.
- **التطبيق هو عملية الكتابة المباشرة الوحيدة:** لا تؤدي عمليات الإنشاء والتحديث والمراجعة مطلقًا إلى تغيير
  Skills النشطة.
- **مقيّد بمساحة العمل:** تستهدف عمليات الإنشاء جذر `skills/` لمساحة العمل؛ ولا يُسمح بالتحديثات
  إلا لـ Skills مساحة العمل القابلة للكتابة.
- **منع الاستبدال:** تفشل عملية الإنشاء إذا كانت Skill المستهدفة موجودة بالفعل.
- **مرتبط بالتجزئة:** ترتبط مقترحات التحديث بالتجزئة الحالية للهدف وتصبح
  `stale` إذا تغيرت Skill المباشرة قبل التطبيق.
- **مقيّد بالماسح:** يعيد التطبيق تشغيل ماسح الأمان قبل الكتابة.
- **قابل للاسترداد:** يكتب التطبيق بيانات التراجع الوصفية قبل المساس بالملفات المباشرة.
- **واجهات متسقة:** تستدعي الدردشة وCLI وGateway جميعًا الخدمة نفسها.

## دورة الحياة

```text
إنشاء/تحديث -> معلّق
مراجعة       -> معلّق
تطبيق        -> مطبّق
رفض          -> مرفوض
عزل          -> معزول
تغيير الهدف  -> قديم
```

لا يمكن مراجعة المقترح أو تطبيقه أو رفضه أو عزله إلا إذا كان `pending`.

## تنظيم دورة الحياة

يتتبع Gateway الاستخدام الإجمالي لـ Skills في قاعدة بيانات الحالة المشتركة. ومرة
يوميًا، يراجع Skills التي أنشأها وطبّقها Skill Workshop. تصبح Skills غير المستخدمة لأكثر
من 30 يومًا `stale`؛ وبعد 90 يومًا تصبح `archived` ويجري
استبعادها من لقطات Skills الجديدة للوكلاء. تظل ملفات Skills المؤرشفة دون تغيير على
القرص. لا تخضع Skills المؤلفة يدويًا للتنظيم مطلقًا؛ فلا تدخل تنظيم دورة الحياة إلا Skills التي
أنشأتها مقترحات Skill Workshop.

تتجاوز Skills المثبّتة انتقالات دورة الحياة. وتعود Skill القديمة إلى `active`
بعد استخدامها وتشغيل عملية الفحص التالية. ولا تعود Skills المؤرشفة إلا من خلال
استعادة صريحة:

تنطبق انتقالات دورة الحياة وعمليات الاستعادة على الجلسات الجديدة؛ وتحتفظ الجلسات قيد التشغيل
بلقطة Skills الحالية لديها.

```bash
openclaw skills curator status
openclaw skills curator pin <skill>
openclaw skills curator unpin <skill>
openclaw skills curator restore <skill>
```

تقبل جميع أوامر المنظّم `--json`. وتُبلغ الحالة أيضًا عن مرشحي التداخل الحتميين
بوصفهم اقتراحات فقط؛ ولا تدمج Skills مطلقًا ولا تستدعي نموذجًا.

## الدردشة

اطلب من الوكيل Skill التي تريدها؛ فيستدعي `skill_workshop` ويعيد
معرّف مقترح.

### التعلّم من العمل الأخير

استخدم `/learn` لتحويل المحادثة الحالية أو المصادر المسماة إلى مقترح Skill واحد
موجّه بالمعايير:

```text
/learn
/learn docs/runbook.md وhttps://example.com/guide؛ ركّز على الاسترداد
```

من دون طلب، يطلب `/learn` من الوكيل استخلاص سير العمل القابل لإعادة الاستخدام من
المحادثة الحالية. ومع وجود طلب، يتعامل الوكيل مع المسارات وعناوين URL والملاحظات الملصقة
ومراجع المحادثة بوصفها مصادر، مع مراعاة متطلبات التركيز والنطاق
والتسمية. ويجمع المصادر باستخدام أدواته الحالية، ثم يستدعي
`skill_workshop` مع `action: "create"`.

يظل المقترح الناتج `pending`؛ ولا يطبّقه `/learn` مطلقًا. راجعه
وطبّقه من خلال مسار الموافقة المعتاد أو باستخدام `openclaw skills workshop`.

الإنشاء:

```text
أنشئ Skill باسم morning-catchup تنفّذ روتين صندوق الوارد الخاص بي يوم الاثنين.
```

تحديث Skill موجودة في مساحة العمل:

```text
حدّث trip-planning ليتحقق أيضًا من خرائط المقاعد قبل الحجز.
```

التكرار على مقترح معلّق:

```text
اعرض لي مقترح morning-catchup.
راجعه ليضع أيضًا علامة على كل ما هو محدد بأنه عاجل.
طبّق مقترح morning-catchup.
```

تُشغَّل عمليات `apply` و`reject` و`quarantine` التي يبدأها الوكيل دون مطالبة
موافقة إضافية افتراضيًا. اضبط `skills.workshop.approvalPolicy` على `"pending"`
لطلب موافقة الجهة المشغّلة قبل هذه الإجراءات.

عندما تكون الموافقة مطلوبة، تحدد المطالبة معرّف المقترح وSkill
المستهدفة، وتعرض وصف المقترح وعدد ملفات الدعم وحجم المتن.
تكون طلبات الموافقة محددة زمنيًا لتنتهي قبل مراقب مهلة أداة الوكيل. وإذا لم
يصل قرار قبل انتهاء صلاحية المطالبة، فلن يُنفَّذ إجراء دورة الحياة:
يظل المقترح معلّقًا ودون تغيير. اتخذ القرار لاحقًا في واجهة Skill Workshop أو شغّل
`openclaw skills workshop apply|reject|quarantine <proposal-id>`. ينبغي ألا
تعيد الوكلاء محاولة إجراء دورة حياة منتهي الصلاحية في حلقة.

## CLI

```bash
# إنشاء
openclaw skills workshop propose-create \
  --name morning-catchup \
  --description "متابعة يومية لصندوق الوارد: الفرز، الأرشفة، الإبراز، إعداد المسودات، التخطيط" \
  --proposal ./PROPOSAL.md

# تحديث Skill موجودة في مساحة العمل
openclaw skills workshop propose-update trip-planning --proposal ./PROPOSAL.md

# العرض والفحص
openclaw skills workshop list
openclaw skills workshop inspect <proposal-id>

# المراجعة قبل الموافقة
openclaw skills workshop revise <proposal-id> --proposal ./PROPOSAL.md

# الإنهاء
openclaw skills workshop apply <proposal-id>
openclaw skills workshop reject <proposal-id> --reason "مكرر"
openclaw skills workshop quarantine <proposal-id> --reason "يحتاج إلى مراجعة أمنية"
```

يقبل كل أمر فرعي `--agent <id>` (مساحة العمل المستهدفة؛ وتكون افتراضيًا
المستنتجة من cwd، ثم الوكيل الافتراضي) و`--json` (مخرجات منظّمة).
كما تقبل `propose-create` و`propose-update` و`revise` أيضًا `--goal <text>` و
`--evidence <text>` لتسجيل سياق المقترح إلى جانب `--proposal`.

## محتوى المقترح

أثناء التعليق، يُخزَّن المقترح بوصفه `PROPOSAL.md` مع frontmatter
خاص بالمقترح فقط:

```markdown
---
name: "morning-catchup"
description: "متابعة يومية لصندوق الوارد: الفرز، الأرشفة، الإبراز، إعداد المسودات، التخطيط"
status: proposal
version: "v1"
date: "2026-05-30T00:00:00.000Z"
---
```

عند التطبيق، يكتب Skill Workshop ملف `SKILL.md` النشط ويزيل
الحقول الخاصة بالمقترح فقط: `status` و`version` للمقترح و`date` للمقترح.

## ملفات الدعم

استخدم `--proposal-dir` عندما تحتاج Skill المقترحة إلى ملفات بجانب
`PROPOSAL.md`:

```bash
openclaw skills workshop propose-create \
  --name weekly-update \
  --description "ملخص الجمعة: الإحصاءات، أبرز النقاط، أهم ثلاثة أمور للأسبوع المقبل" \
  --proposal-dir ./weekly-update-proposal
```

يجب أن يحتوي الدليل على `PROPOSAL.md`. ويجب أن توجد ملفات الدعم ضمن
`assets/` أو `examples/` أو `references/` أو `scripts/` أو `templates/`. يفحص Skill
Workshop هذه الملفات ويحسب تجزئاتها ويخزنها مع المقترح، ثم يكتبها
بجانب `SKILL.md` المباشر عند التطبيق فقط.

مسارات ملفات الدعم المرفوضة: المسارات المطلقة، ومقاطع المسارات المخفية، واجتياز
المسار، والمسارات المتداخلة، والملفات القابلة للتنفيذ، والنصوص غير المشفرة بـ UTF-8، والبايتات الفارغة،
والمسارات الواقعة خارج مجلدات الدعم القياسية.

## أداة الوكيل

يستخدم النموذج `skill_workshop` مع `action` مطلوب واحد:
`create | update | revise | list | inspect | apply | reject | quarantine`.
وتنطبق المعلمات الأخرى بحسب الإجراء:

| المعلمة                  | تُستخدم بواسطة                                              | ملاحظات                                                                |
| -------------------------- | ---------------------------------------------------- | -------------------------------------------------------------------- |
| `name`                     | `create`، `inspect`، `revise`                        | مطلوبة لـ `create`؛ وتحدد مقترحًا معلّقًا بالاسم في الحالات الأخرى |
| `description`              | `create`، `update`، `revise`                         | 160 بايت كحد أقصى                                                        |
| `skill_name`               | `update`                                             | اسم Skill الموجودة أو مفتاحها                                           |
| `proposal_content`         | `create`، `update`، `revise`                         | يُخزَّن بوصفه `PROPOSAL.md`؛ ومحدود بـ `skills.workshop.maxSkillBytes`   |
| `support_files`            | `create`، `update`، `revise`                         | مصفوفة من `{ path, content }`                                         |
| `goal`، `evidence`         | `create`، `update`، `revise`                         | سياق نصي حر                                                    |
| `proposal_id`              | `inspect`، `revise`، `apply`، `reject`، `quarantine` | المقترح المستهدف                                                      |
| `reason`                   | `apply`، `reject`، `quarantine`                      | اختياري                                                             |
| `query`، `status`، `limit` | `list`                                               | التصفية/التقسيم إلى صفحات؛ الحد الأقصى لـ `limit` هو 50، والافتراضي 20                          |

يجب على الوكلاء استخدام `skill_workshop` لعمل Skills المُنشأة. ويجب ألا
ينشئوا ملفات المقترحات أو يغيروها من خلال `write` أو `edit` أو `exec` أو أوامر shell
أو عمليات نظام الملفات المباشرة.

<Note>
`skill_workshop` أداة وكيل مضمّنة وهي مشمولة في
`tools.profile: "coding"`. وإذا كانت سياسة أكثر صرامة تخفيها، فأضف
`skill_workshop` إلى قائمة `tools.allow` النشطة، أو استخدم
`tools.alsoAllow: ["skill_workshop"]` عندما يستخدم النطاق ملفًا شخصيًا بلا
`tools.allow` صريح. لا تنشئ عمليات التشغيل المعزولة أداة
Skill Workshop من جانب المضيف، لذا شغّل إجراءات مراجعة المقترحات من جلسة وكيل عادية
من جانب المضيف أو من CLI.
</Note>

## Skills المقترحة

يكتشف OpenClaw التعليمات الدائمة مثل «في المرة القادمة» و«تذكّر أن»، والتصحيحات التفاعلية
عند انتهاء دورة تفاعلية، بما في ذلك الدورات الفاشلة. وفي الدورة التالية، يعرض الوكيل حفظ
أحدث سير عمل مكتشف من خلال `skill_workshop`؛ ويقرر المستخدم ما إذا كان سينشئ
مقترحًا. لا ينشئ هذا الاقتراح المضمّن Skill ولا يغيرها من تلقاء نفسه. فعّل
`skills.workshop.autonomous.enabled` لإنشاء مقترحات معلّقة مباشرةً بدلًا من ذلك. في واجهة Control
UI، توفر علامة التبويب Workshop الإعداد نفسه كمفتاح تبديل **التعلّم الذاتي** في رأس الصفحة،
وكزر تمكين على لوحة المقترحات الفارغة.

### فحص الجلسات السابقة

يمكن لواجهة Control UI مراجعة الأعمال الأقدم من دون تمكين التعلّم الذاتي المستقل.
افتح **Plugins → Workshop** وحدد **البحث عن أفكار لـ Skills**. يبدأ الفحص
بأحدث الجلسات المؤهلة ويراجع نافذة محدودة من العمل الجوهري.
ويتخطى جلسات cron وheartbeat وhook والوكيل الفرعي وACP والجلسات المملوكة لـ Plugin وجلسات المراجعة
الداخلية، إضافةً إلى المحادثات التي تحتوي على أقل من ست دورات للنموذج.

يستخدم المراجع النموذج المضبط للوكيل المحدد ويتلقى حزمة نصوص
منقحة الأسرار ومحدودة الحجم. ويطبّق المعيار المتحفظ نفسه المطبق على مراجعة
الخبرة: نمط استرداد ملموس أو إجراء مستقر من شأنه إزالة استدعاءين مستقبليين
على الأقل للنموذج أو الأدوات. ينبغي ألا ينتج العمل الروتيني والحقائق المنفردة
أي مقترح.

يمكن لفحص واحد إنشاء أو مراجعة ثلاثة مقترحات معلّقة على الأكثر. ولا يمكنه تطبيق
Skill مباشرة أو رفضها أو عزلها أو تعديلها. يعرض Workshop التغطية التراكمية،
مثل **تمت مراجعة 20 جلسة · 18 يونيو–اليوم · عُثر على فكرتين**. حدد
**فحص عمل أقدم** للمتابعة من مؤشر أقدم جلسة المخزّن. وبعد
استنفاد السجل المتاح، يصبح الإجراء **فحص عمل جديد**.

المراجعة التاريخية يدوية حتى عندما تكون
`skills.workshop.autonomous.enabled` هي `false`. تبدأ كل نقرة تشغيلًا للنموذج،
لذا تنطبق شروط التسعير ومعالجة البيانات الخاصة بموفّر الخدمة. يُخزَّن المؤشر وأعداد التغطية
في قاعدة بيانات حالة OpenClaw المشتركة؛ ولا يُنسخ محتوى النص المنسوخ
إلى حالة الفحص.

عند تمكين الالتقاط الذاتي، يمكن لـ OpenClaw أيضًا إجراء مراجعة متحفظة بعد إنجاز عمل ناجح
وجوهري، وبعد أن يصبح نظام الوكلاء بأكمله خاملًا. يمكن لهذه المراجعة المعزولة إنشاء
مقترح معلق واحد على الأكثر أو تنقيحه. ولا يمكنها تحديث مهارة قيد الاستخدام، أو تطبيق مقترح أو رفضه أو عزله،
حتى عندما تكون `approvalPolicy` هي `"auto"`.

راجع [التعلّم الذاتي](/tools/self-learning) للحصول على تفاصيل التمكين والأهلية والخصوصية والتكلفة،
وحدّ المقترحات، واستكشاف الأخطاء وإصلاحها.

## الموافقة والاستقلالية

```json5
{
  skills: {
    workshop: {
      autonomous: {
        enabled: false,
      },
      allowSymlinkTargetWrites: false,
      approvalPolicy: "auto",
      maxPending: 50,
      maxSkillBytes: 40000,
    },
  },
}
```

| الإعداد                    | القيمة الافتراضية  | التأثير                                                                                                                                                              |
| -------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `autonomous.enabled`       | `false`  | ينشئ مقترحات معلقة من التصحيحات الصريحة، وبعد مهلة خمول، من العمل الجوهري المكتمل الذي يوفّر استردادًا قابلًا لإعادة الاستخدام أو وفورات ملموسة في رحلات الذهاب والإياب.   |
| `allowSymlinkTargetWrites` | `false`  | يتيح للتطبيق الكتابة عبر الروابط الرمزية لمهارات مساحة العمل التي يكون هدفها الحقيقي مدرجًا في `skills.load.allowSymlinkTargets`.                                                 |
| `approvalPolicy`           | `"auto"` | تتخطى `"auto"` مطالبة إضافية لإجراءات `apply` أو `reject` أو `quarantine` التي يبدأها الوكيل (ولا يزال يتعين على الوكيل استدعاء الإجراء). تتطلب `"pending"` الموافقة. |
| `maxPending`               | `50`     | يضع حدًا أقصى للمقترحات المعلقة والمعزولة لكل مساحة عمل (1-200).                                                                                                       |
| `maxSkillBytes`            | `40000`  | يضع حدًا أقصى لحجم نص المقترح بالبايت (1024-200000).                                                                                                                     |

يتعرّف الالتقاط الذاتي على القواعد المستقبلية (على سبيل المثال، «من الآن فصاعدًا») والتصحيحات
التفاعلية (على سبيل المثال، «هذا ليس ما طلبته»). ويُجمّع التعليمات الجديدة حسب الموضوع في ما يصل
إلى ثلاثة مقترحات لكل دور، ويوجّه مطابقات المفردات إلى مهارات مساحة العمل الحالية القابلة للكتابة، كما
ينقّح مقترحه المعلق عندما يستهدف تصحيح آخر المهارة نفسها.

بالنسبة إلى العمل الجوهري الناجح من دون تصحيح صريح، يقرر تشغيل معزول للنموذج المحدد
ما إذا كان المسار المكتمل يتجاوز الحد المتحفظ للمقترحات. ولا يُطلب من النموذج الأمامي
أن يتعلّم قبل الرد. ويحافظ المراجع في الخلفية على التشغيل الأمامي بوصفه مصدر المقترح،
ولا يمكنه الوصول إلى أدوات الوكيل العامة، ولا اتخاذ قرارات دورة الحياة. ولا تبدأ المراجعة إلا عندما
يبلّغ وقت التشغيل الأمامي عن كلٍّ من نموذجه المحسوم الدقيق وأن `skill_workshop` كانت متاحة بالفعل.
ولذلك تفشل سياسة الأدوات التقييدية أو غير المعروفة بصورة مغلقة ولا تنشئ أي مقترح.

راجع [التعلّم الذاتي](/tools/self-learning) للاطلاع على السلوك الكامل للمراجعة الذاتية ونموذج
السلامة.

يقتصر وصف المقترح دائمًا على 160 بايت، بصرف النظر عن
`maxSkillBytes`.

## أساليب Gateway

| الأسلوب                             | النطاق            |
| ---------------------------------- | ---------------- |
| `skills.proposals.list`            | `operator.read`  |
| `skills.proposals.inspect`         | `operator.read`  |
| `skills.proposals.historyStatus`   | `operator.read`  |
| `skills.proposals.historyScan`     | `operator.admin` |
| `skills.proposals.create`          | `operator.admin` |
| `skills.proposals.update`          | `operator.admin` |
| `skills.proposals.revise`          | `operator.admin` |
| `skills.proposals.requestRevision` | `operator.admin` |
| `skills.proposals.apply`           | `operator.admin` |
| `skills.proposals.reject`          | `operator.admin` |
| `skills.proposals.quarantine`      | `operator.admin` |
| `skills.curator.status`            | `operator.read`  |
| `skills.curator.pin`               | `operator.admin` |
| `skills.curator.unpin`             | `operator.admin` |
| `skills.curator.restore`           | `operator.admin` |

تتوفر `requestRevision` في Gateway فقط (ولا يوجد مكافئ لها في CLI أو أدوات الوكيل): فهي
تمرّر تعليمات تنقيح ذات نص حر إلى جلسة محادثة الوكيل المالك
بدلًا من استبدال `PROPOSAL.md` مباشرةً، وذلك لواجهات المستخدم التي تطلب من الوكيل
التنقيح بدلًا من إرسال محتوى جديد حرفيًا.

تُعد `historyStatus` و`historyScan` أسلوبَي دعم لواجهة التحكم. تقبل `historyScan`
القيمة `direction: "older" | "newer"`؛ وهي تترك النتائج دائمًا في صورة
مقترحات معلقة.

## التخزين

```text
<OPENCLAW_STATE_DIR>/skill-workshop/
  proposals.json
  proposals/<proposal-id>/
    proposal.json
    PROPOSAL.md
    rollback.json
    assets/
    examples/
    references/
    scripts/
    templates/
```

دليل الحالة الافتراضي: `~/.openclaw`.

- `proposal.json`: سجل المقترح المعتمد.
- `proposals.json`: فهرس سريع لإعداد القوائم، وقابل لإعادة البناء من مجلدات المقترحات.
- `PROPOSAL.md`: مقترح مهارة معلق.
- `rollback.json`: بيانات تعريف الاسترداد التي تُكتب قبل أن يطبّق الإجراء التغييرات على الملفات قيد الاستخدام.

## الحدود

| الحد                           | القيمة                                                                |
| ------------------------------- | -------------------------------------------------------------------- |
| الوصف                     | 160 بايت                                                            |
| نص المقترح                   | `skills.workshop.maxSkillBytes` (القيمة الافتراضية 40,000؛ الحد الأقصى الصارم 1 MiB) |
| ملفات الدعم                   | 64 لكل مقترح                                                      |
| حجم ملف الدعم               | 256 KiB لكل ملف، و2 MiB إجمالًا                                            |
| المقترحات المعلقة + المعزولة | `skills.workshop.maxPending` لكل مساحة عمل (القيمة الافتراضية 50)              |

## استكشاف الأخطاء وإصلاحها

| المشكلة                                        | الحل                                                                                                                                                                                                  |
| ---------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Skill proposal description is too large`      | اختصر `description` إلى 160 بايت أو أقل.                                                                                                                                                                 |
| `Skill proposal content is too large`          | اختصر نص المقترح أو ارفع `skills.workshop.maxSkillBytes`.                                                                                                                                         |
| `Target skill changed after proposal creation` | نقّح المقترح وفقًا للهدف الحالي، أو أنشئ مقترحًا جديدًا.                                                                                                                                   |
| `Proposal scan failed`                         | افحص نتائج الماسح، ثم نقّح المقترح أو اعزله.                                                                                                                                           |
| `untrusted symlink target`                     | اضبط `skills.load.allowSymlinkTargets` ومكّن `skills.workshop.allowSymlinkTargetWrites` فقط لجذور المهارات المشتركة المقصودة.                                                                  |
| `Support file paths must be under one of...`   | انقل ملفات الدعم إلى `assets/` أو `examples/` أو `references/` أو `scripts/` أو `templates/`.                                                                                                                |
| لا يظهر المقترح في القائمة                 | تحقّق من مساحة عمل `--agent` المحددة ومن `OPENCLAW_STATE_DIR`.                                                                                                                                            |
| لا يستطيع الوكيل استدعاء `skill_workshop`             | تحقّق من سياسة الأدوات النشطة ووضع التشغيل. تتضمن `coding` الأداة؛ ويجب أن تدرجها سياسات `tools.allow` التقييدية صراحةً، كما يجب أن تستخدم عمليات التشغيل المعزولة جلسة وكيل عادية على جانب المضيف أو CLI. |

### تشخيص سياسة الأدوات

عند تمكين الالتقاط الذاتي، تشغّل `openclaw doctor` عملية التحقق
`core/doctor/skill-workshop-tool-policy` للوكيل الافتراضي. وإذا كانت السياسة
تخفي `skill_workshop`، يسمّي التحذير أول طبقة إعداد مستبعِدة
والتغيير الدقيق المطلوب إجراؤه في `allow` أو `alsoAllow`. قد تظل أدلة التشغيل الأقدم تستخدم
`openclaw plugins inspect skill-workshop`؛ ويوضح هذا الأمر الآن أن ورشة المهارات
مضمّنة، ويطبع تلميح السياسة نفسه عند انطباقه.

## ذو صلة

- [المهارات](/ar/tools/skills) لمعرفة ترتيب التحميل والأسبقية وإمكانية الظهور
- [التعلّم الذاتي](/tools/self-learning) لمقترحات المهارات المتحفظة بعد التشغيل
- [إنشاء المهارات](/ar/tools/creating-skills) للتعرّف على أساسيات `SKILL.md`
  المكتوبة يدويًا
- [إعداد المهارات](/ar/tools/skills-config) لمخطط `skills.workshop` الكامل
- [CLI للمهارات](/ar/cli/skills) لأوامر `openclaw skills`
