كيفية إنشاء مهارات مخصصة لأوبن كلو؟

Ashley Innocent

Ashley Innocent

26 فبراير 2026

كيفية إنشاء مهارات مخصصة لأوبن كلو؟

Apidog للمؤسسات

نشر محلي

SSO & RBAC

متوافق مع SOC 2

استكشاف Apidog Enterprise

الخلاصة

تكمن قوة OpenClaw في قابليته للتوسع من خلال المهارات. مع توفر أكثر من 700 مهارة تم إنشاؤها بواسطة المجتمع عبر ClawHub والقدرة على إنشاء مهارات مخصصة باستخدام ملفات SKILL.md أو TypeScript، يمكنك تحويل مساعد OpenClaw الخاص بك إلى أداة متخصصة لأي مهمة تقريبًا. يغطي هذا الدليل كل شيء بدءًا من تثبيت المهارات الموجودة ووصولًا إلى بناء ونشر مهاراتك الخاصة.

مقدمة

OpenClaw يوفر بالفعل إمكانيات قوية جاهزة للاستخدام، ولكن إمكاناته الحقيقية تظهر من خلال المهارات. سواء كنت بحاجة إلى مساعدة برمجية متخصصة، أو أتمتة DevOps، أو أدوات بحث، أو وظائف خاصة بالصناعة، فمن المرجح أن تكون هناك مهارة لذلك—وإذا لم يكن الأمر كذلك، يمكنك بناء واحدة.

💡
عند بناء مهارات مخصصة تتفاعل مع واجهات برمجة التطبيقات (APIs) الخارجية، فإن امتلاك الأدوات المناسبة لاختبار هذه التكاملات أمر مهم. يساعدك Apidog في اختبار وتصحيح أخطاء نقاط نهاية API التي تعتمد عليها مهاراتك، مما يضمن تكاملات موثوقة.
زر

مع توفر أكثر من 700 مهارة تم إنشاؤها بواسطة المجتمع عبر ClawHub والقدرة على إنشاء مهارات مخصصة، يصبح OpenClaw مساعد الذكاء الاصطناعي الذي تحتاجه.

في هذا الدليل الشامل، سنغطي:

فهم مهارات OpenClaw

ما هي المهارات؟

المهارات هي إضافات معيارية تضيف إمكانيات محددة إلى OpenClaw. فكر فيها كإضافات (plugins) تمنح مساعد الذكاء الاصطناعي الخاص بك قدرات جديدة—من إرسال أنواع محددة من رسائل البريد الإلكتروني إلى التفاعل مع واجهات برمجة تطبيقات معينة.

أنواع المهارات

1. مهارات اللغة الطبيعية (SKILL.md)
أبسط شكل—مكتوبة بلغة Markdown مع معلومات YAML في المقدمة. تُعرّف هذه المهارات أدلة تشغيل عملياتية يتبعها OpenClaw عند استيفاء شروط معينة.

2. مهارات TypeScript
مهارات كاملة الميزات مبنية باستخدام TypeScript يمكنها الوصول إلى واجهات برمجة التطبيقات، وتنفيذ منطق معقد، والتكامل بعمق مع الخدمات الخارجية.

3. مهارات تعتمد على واجهة سطر الأوامر (CLI-Based Skills)
مهارات تغلف أدوات سطر الأوامر، مما يسمح لـ OpenClaw باستخدام أي أداة متاحة على نظامك.

كيف تعمل المهارات

يتم تحميل المهارات ديناميكيًا عند الحاجة (التحميل في الوقت المناسب)، مما يحافظ على استخدام الذاكرة قابلاً للإدارة. عندما يتطابق طلب المستخدم مع مشغلات مهارة معينة، ينفذ OpenClaw الإجراءات المحددة للمهارة.

فئات المهارات

يستضيف ClawHub مهارات عبر فئات عديدة:

الموقع الرسمي لـ ClawHub

تثبيت المهارات من ClawHub

البحث عن المهارات

تصفح سوق ClawHub على clawhub.ai أو ابحث مباشرة من خلال OpenClaw:

# ابحث عن المهارات
openclaw skills search "github"

# سرد المهارات الشائعة
openclaw skills popular

# تصفح فئة
openclaw skills browse devops

تثبيت مهارة

بمجرد العثور على مهارة تريدها، يكون تثبيتها أمرًا بسيطًا:

# تثبيت مهارة محددة
openclaw skills install github-actions

# تثبيت بإصدار محدد
openclaw skills install github-actions@1.2.0

# تثبيت من ناشر محدد
openclaw skills install @username/skill-name

تثبيت جميع المهارات الموصى بها

# تثبيت المهارات الأولية الشائعة
openclaw skills install-recommended

التحقق من التثبيت

# سرد جميع المهارات المثبتة
openclaw skills list

# التحقق من تفاصيل المهارة
openclaw skills info github-actions

إدارة المهارات المثبتة لديك

تمكين وتعطيل المهارات

# تعطيل مهارة (تبقيها مثبتة ولكن غير مستخدمة)
openclaw skills disable github-actions

# تمكين مهارة معطلة
openclaw skills enable github-actions

تحديث المهارات

# تحديث مهارة محددة
openclaw skills update github-actions

# تحديث جميع المهارات
openclaw skills update-all

إزالة المهارات

# إلغاء تثبيت مهارة
openclaw skills uninstall github-actions

إعدادات المهارة

تدعم العديد من المهارات التكوين المخصص:

# إعداد مهارة
openclaw skills config github-actions --set token=your-github-token

أو قم بتحرير ملف إعدادات المهارة مباشرة:

# ~/.openclaw/skills/github-actions/config.yaml
token: your-github-token
default-branch: main
auto-merge: false

بناء مهارات مخصصة

متى تبني مهارات مخصصة؟

قم ببناء مهارة مخصصة عندما تحتاج إلى:

هيكل المهارة

تتكون المهارة الأساسية من:

my-custom-skill/
├── SKILL.md          # تعريف المهارة (لمهارات اللغة الطبيعية)
├── config.yaml       # مخطط الإعدادات
└── icon.svg          # أيقونة المهارة (اختياري)

بالنسبة لمهارات TypeScript:

my-typescript-skill/
├── src/
│   └── index.ts      # رمز المهارة الرئيسي
├── package.json
├── tsconfig.json
├── config.schema.json
└── skill.yaml        # بيان المهارة

إنشاء مهارات SKILL.md

هيكل SKILL.md الأساسي

إليك ملف SKILL.md بسيط:

---
name: weather-alert
description: احصل على تنبيهات الطقس لموقعك
triggers:
  - "weather"
  - "weather alert"
  - "forecast"
requires:
  - location
actions:
  - name: get_weather
    api: https://api.weather.com/v3
    params:
      location: "{location}"
---

# مهارة تنبيه الطقس

توفر هذه المهارة تنبيهات الطقس وتوقعاته لموقعك.

## الإعدادات

اضبط موقعك في إعدادات المهارة:
- city: اسم مدينتك
- units: متري أو إمبراطوري

مثال كامل: مهارة ملخص البريد الإلكتروني

---
name: daily-email-summary
description: احصل على ملخص يومي لرسائل البريد الإلكتروني الهامة
triggers:
  - "email summary"
  - "daily emails"
  - "summarize my emails"
requires:
  - email_access
  - api_key
actions:
  - name: fetch_emails
    method: gmail.users.messages.list
    params:
      q: "is:unread"
      maxResults: 10
  - name: summarize
    model: gpt-4
    prompt: "لخص رسائل البريد الإلكتروني هذه في نقاط"
---

# مهارة الملخص اليومي للبريد الإلكتروني

ابق على اطلاع دائم ببريدك الوارد من خلال ملخصات يومية تلقائية.

## الميزات

- تسترد رسائل البريد الإلكتروني غير المقروءة من Gmail
- تستخدم الذكاء الاصطناعي لتلخيص النقاط الرئيسية
- ترسل الملخص إلى قناتك المفضلة

## الإعداد

1. قم بتكوين الوصول إلى Gmail API في إعدادات OpenClaw الخاصة بك
2. اضبط وقت الملخص المفضل لديك
3. اختر قناة التسليم الخاصة بك (Telegram، Discord، إلخ.)

## مثال على الاستخدام

أنت: أرسل لي ملخص بريدي الإلكتروني
OpenClaw: إليك ملخص لرسائلك الثمانية غير المقروءة:


### المشغلات المتقدمة

استخدم مشغلات أكثر تعقيدًا:

```markdown
---
name: smart-reminder
triggers:
  # عبارات مطابقة تمامًا
  - "ذكرني بـ {action}"
  # أنماط
  - "ذكرني خلال {duration}"
  # سياقية
  context:
    - channel: work
      patterns: ["meeting", "deadline", "project"]
---

# مهارة التذكير الذكي

تتعامل مع جميع طلبات التذكير بالتحليل الذكي.

بناء مهارات TypeScript

للتكاملات الأكثر تعقيدًا، توفر مهارات TypeScript تحكمًا كاملاً.

إعداد بيئة التطوير الخاصة بك

# إنشاء مشروع مهارة جديد
openclaw skills create my-awesome-skill

# الانتقال إلى دليل المهارة
cd my-awesome-skill

# تثبيت التبعيات
npm install

# بدء خادم التطوير
npm run dev

هيكل مهارة TypeScript

// src/index.ts
import { Skill, SkillContext, SkillResult } from '@openclaw/skill-sdk';

export default class MyAwesomeSkill implements Skill {
  name = 'my-awesome-skill';
  description = 'A skill that does something awesome';

  // تُستدعى عند تحميل المهارة
  async onLoad(context: SkillContext): Promise<void> {
    console.log('Skill loaded!');
  }

  // تُستدعى عندما تتطابق المهارة مع مشغل
  async execute(context: SkillContext): Promise<SkillResult> {
    const { userMessage, config } = context;

    // منطق مهارتك هنا
    const result = await this.doSomethingAwesome(userMessage.content);

    return {
      message: result,
      actions: []
    };
  }

  private async doSomethingAwesome(input: string): Promise<string> {
    // طبق منطق مهارتك
    return `You said: ${input}`;
  }
}

بيان المهارة (skill.yaml)

name: my-awesome-skill
version: 1.0.0
description: مهارة تقوم بشيء رائع
author:
  name: اسمك
  email: you@example.com

triggers:
  - pattern: "قم بشيء رائع"
    type: exact

config:
  apiKey:
    type: string
    required: true
    description: مفتاح API للخدمة

permissions:
  - network
  - filesystem

runtime: nodejs18

مخطط الإعدادات (config.schema.json)

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": "مفتاح API للخدمة"
    },
    "enabled": {
      "type": "boolean",
      "default": true
    }
  },
  "required": ["apiKey"]
}

البناء والاختبار

# بناء المهارة
npm run build

# تشغيل الاختبارات
npm test

# حزمة للتوزيع
npm run package

مثال: مهارة تكامل GitHub

إليك مثال أكثر اكتمالاً يوضح تكامل API:

import { Skill, SkillContext, SkillResult } from '@openclaw/skill-sdk';
import axios from 'axios';

export default class GitHubSkill implements Skill {
  name = 'github';
  description = 'Interact with GitHub repositories';

  async execute(context: SkillContext): Promise<SkillResult> {
    const { userMessage, config } = context;
    const message = userMessage.content.toLowerCase();

    if (message.includes('list repos')) {
      return this.listRepositories(config);
    } else if (message.includes('create issue')) {
      return this.createIssue(context);
    }

    return {
      message: 'يمكنني المساعدة في سرد المستودعات وإنشاء المشكلات والمزيد.',
      actions: []
    };
  }

  private async listRepositories(config: any): Promise<SkillResult> {
    const response = await axios.get('https://api.github.com/user/repos', {
      headers: {
        Authorization: `token ${config.githubToken}`
      }
    });

    const repos = response.data.slice(0, 5).map((r: any) => r.name).join('\n');

    return {
      message: `مستودعاتك الأخيرة:\n${repos}`,
      actions: []
    };
  }

  private async createIssue(context: SkillContext): Promise<SkillResult> {
    // استخراج تفاصيل المشكلة من رسالة المستخدم
    return {
      message: 'أحتاج إلى مزيد من التفاصيل لإنشاء مشكلة. يرجى تحديد المستودع والعنوان والوصف.',
      actions: [
        {
          type: 'request_input',
          fields: ['repo', 'title', 'description']
        }
      ]
    };
  }
}

نشر المهارات في ClawHub

تحضير مهارتك للنشر

  1. اختبار شامل: تأكد من أن مهارتك تعمل في سيناريوهات مختلفة
  2. أضف التوثيق: ملف SKILL.md واضح مع أمثلة
  3. اضبط الأذونات الصحيحة: اطلب الوصول الضروري فقط
  4. أضف أيقونة: أنشئ أيقونة SVG بسيطة
  5. إدارة الإصدارات: استخدم ترقيمًا سياقيًا (1.0.0, 1.1.0, إلخ.)

عملية النشر

# تسجيل الدخول إلى ClawHub
openclaw skills login

# التحقق من جاهزية مهارتك
openclaw skills validate

# نشر مهارتك
openclaw skills publish

متطلبات النشر

إدارة الإصدارات

# زيادة الإصدار
openclaw skills version patch  # 1.0.0 -> 1.0.1
openclaw skills version minor  # 1.0.0 -> 1.1.0
openclaw skills version major  # 1.0.0 -> 2.0.0

# نشر إصدار جديد
openclaw skills publish

أفضل ممارسات الأمان

تثبيت مهارات الطرف الثالث

ملاحظة أمنية هامة: كشفت حادثة ClawHavoc في أوائل عام 2026 عن مهارات ضارة على ClawHub. اتبع دائمًا هذه الاحتياطات:

  1. التحقق من الناشرين: قم بتثبيت المهارات من الناشرين الموثوقين والمعتمدين فقط
  2. مراجعة الأذونات: تحقق من الأذونات التي تطلبها المهارة
  3. تدقيق الكود: بالنسبة لمهارات TypeScript، راجع الكود المصدري
  4. ابدأ بمعزل: اختبر المهارات في بيئة منفصلة أولاً
# التحقق من أذونات المهارة قبل التثبيت
openclaw skills inspect github-actions

بناء مهارات آمنة

عند بناء مهاراتك الخاصة:

# حدد دائمًا الحد الأدنى من الأذونات المطلوبة
permissions:
  - network  # فقط إذا لزم الأمر
  - filesystem  # فقط إذا لزم الأمر

# لا تقم أبدًا بتضمين الأسرار في الكود بشكل مباشر
# سيء:
const apiKey = "sk-1234567890";

# جيد:
const apiKey = process.env.API_KEY;

تكوين الأمان الموصى به

# ~/.openclaw/security.yaml
skill_security:
  require_virustotal: true
  require_verified_publisher: false  # اضبطها على true للإنتاج
  audit_permissions: true
  sandbox_mode: true

تطوير المهارات المتقدمة

تبعيات المهارات

يمكن أن تعتمد المهارات على مهارات أخرى:

# skill.yaml
dependencies:
  - name: github
    version: ">=1.0.0"
  - name: slack
    version: ">=2.0.0"

المهارات القائمة على الأحداث

التفاعل مع أحداث OpenClaw:

export default class EventSkill implements Skill {
  async onMessage(context: SkillContext): Promise<SkillResult> {
    // تُستدعى عند كل رسالة
  }

  async onTimer(context: SkillContext): Promise<SkillResult> {
    // تُستدعى بناءً على جدول زمني
  }

  async onStartup(context: SkillContext): Promise<void> {
    // تُستدعى عند بدء تشغيل OpenClaw
  }

  async onShutdown(context: SkillContext): Promise<void> {
    // تُستدعى عند إيقاف تشغيل OpenClaw
  }
}

استخدام MCP مع المهارات

اجمع بين المهارات وخوادم MCP:

# skill.yaml
mcpServers:
  - name: filesystem
    command: npx @modelcontextprotocol/server-filesystem ./data
  - name: github
    command: npx @modelcontextprotocol/server-github

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

المهارة لا يتم تحميلها

# التحقق من حالة المهارة
openclaw skills status my-skill

# عرض سجلات المهارة
openclaw logs --skill my-skill

الأسباب الشائعة:

المشغل لا يتطابق

# اختبار مطابقة المشغل
openclaw skills test-trigger "عبارة المشغل الخاصة بك"

مشاكل الأداء

# التحقق من استخدام المهارة للموارد
openclaw skills monitor

# تعطيل المهارات الثقيلة مؤقتًا
openclaw skills disable heavy-skill

الخاتمة

يحول نظام مهارات OpenClaw المساعد الذكي البسيط إلى منصة قوية وقابلة للتوسيع. سواء كنت تقوم بتثبيت مهارات من ClawHub تم بناؤها بواسطة المجتمع أو تقوم ببناء حلولك المخصصة، فإن الإمكانيات لا حدود لها تقريبًا.

يزداد نظام OpenClaw البيئي قوة مع كل مهارة جديدة. ابدأ البناء اليوم!

💡
هل أنت مستعد لبناء تطبيقات ذكاء اصطناعي احترافية؟ قم بتنزيل Apidog مجانًا لاختبار وإدارة تكاملات خدمة الذكاء الاصطناعي الخاصة بك بواجهة مرئية مصممة للمطورين.
زر
توضيح مواصفات تصميم Apidog

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات