كل فريق تبنّى وكلاء البرمجة بالذكاء الاصطناعي لديه مطوّر واحد تعمل برومبتاته دائمًا كما ينبغي. تعود طلبات المراجعة الخاصة به منظّمة بالطريقة التي يفضّلها الفريق، وتُخرج تعليماته لكتابة الاختبارات اختباراتٍ تطابق أسلوب الفريق من المحاولة الأولى. اسأله كيف يفعل ذلك، وستكون الإجابة عادةً ملفًا مؤقتًا، أو مستودع dotfiles، أو فقرة يلصقها في جلسة جديدة كل صباح. الحرفية حقيقية، لكن المشكلة تكمن في المكان الذي تسكن فيه.
حرفية البرومبتات التي تسكن رأس شخص واحد لا تتوسّع، ولا تصمد أمام الإجازات، ولا تظهر في تشغيلات وكلاء الآخرين. وعندما يغيب ذلك المطوّر، تنخفض الجودة. وعندما ينتقل الفريق من وكيل واحد إلى خمسة، يختلف الخمسة حول الطريقة التي ينبغي أن يُنجز بها العمل.
المهارات هي إجابة Sharkly عن هذه الفجوة. فالمهارة تحزم تعليمات قابلة لإعادة الاستخدام وملفات مساندة لعمل الوكيل، مع مالك ونطاق وأذونات صريحة. وإذا أردت الإلمام بالمفهوم العام أولًا، فإن ما هي مهارة وكيل البرمجة يغطي التعريف والمنظومة الأوسع. أما هذا المقال فيتناول سير العمل داخل Sharkly نفسها.
باختصار
تحزم المهارة في Sharkly تعليمات قابلة لإعادة الاستخدام وملفات مساندة لعمل الوكيل: قواعد المراجعة، وقوائم التحقق قبل التسليم، ومعايير الكتابة، وعملية الفريق. يمكنك إنشاء مهارة من الصفر، أو تركيب مهارة منشورة من مصدر عام مدعوم، أو استيراد مهارة اكتشفتها بيئة تشغيل محلية، أو رفع ملف SKILL.md أو ملف .skill أو حزمة zip. ولكل مهارة نطاق واحد فقط — المؤسسة أو المساحة أو الوكيل — يُختار عند الإنشاء ويظل ثابتًا طوال عمرها. يربط الوكلاء المهارات المؤهلة عبر إعدادات المهارات الخاصة بهم، وتُطبَّق التغييرات على التشغيلات اللاحقة، وتبقى صلاحيات التحرير لدى المُنشئ ومالكي المؤسسة والمديرين. والنتيجة أن حرفية البرومبتات تتوقف عن السكنى في ملفات dotfiles لمطوّر واحد، وتصبح بنية تحتية مشتركة للفريق يضبطها نظام الأذونات.
ما الذي يتغير عندما تجد حرفية البرومبتات موطنًا لها
الفرق بين البرومبت الجيد والمهارة ليس في النص، بل في كل ما يحيط بالنص.

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

خلف الكواليس، تعيش التعليمات الأساسية في ملف SKILL.md: حقلَا name وdescription بصيغة YAML في الأعلى، تليهما التعليمات. ويمكن أن ترافقها ملفات مساندة توفّر قوالب أو أمثلة أو بيانات مرجعية. فقد تحمل مهارة قائمة التحقق قبل التسليم قالب القائمة نفسه، وقد تتضمن مهارة كتابة الترحيلات مثالين مشروحين. أبقِ هذه الملفات مركّزة، فمجموعات الملفات الكبيرة أو غير ذات الصلة تضيف سياقًا دون أن تحسّن قرارات الوكيل.
استيراد الحرفية التي تملكها بالفعل
معظم الفرق لا تبدأ من الصفر. فحرفية البرومبتات موجودة بالفعل، لكنها مبعثرة. وتوفّر Sharkly ثلاثة مسارات للاستيراد.
التركيب من مصدر عام مدعوم. تستطيع Sharkly جلب مهارة منشورة وإنشاء نسخة مُدارة في النطاق الذي تختاره. والنسخة المُدارة مهمة: فأنت لا ترتبط بملف شخص آخر، بل تأخذ لقطة تتحكم فيها مؤسستك. راجع المصدر والمحتوى المستورد قبل ربطه بأي وكيل، وتعامل مع التعليمات الخارجية كما تتعامل مع كود طرف ثالث، لا كسياسة مؤسسة موثوقة.
الاستيراد من بيئة تشغيل محلية. هذا هو المسار المصمم تحديدًا لمشكلة dotfiles. فبيئة التشغيل المحلية المتصلة بالإنترنت يمكنها الإبلاغ عن المهارات المكتشفة في مجلدات مهاراتها المحلية، ما يعني أن الحرفية التي ظل المطوّر يجمعها بهدوء تصبح مرئية للمؤسسة. والاستيراد ينسخ المهارة إلى المؤسسة، بينما تبقى النسخة المحلية الأصلية منفصلة، فلا يتعطل أي شيء في إعداد ذلك المطوّر. وهناك تحفّظ واحد يحفظ لهذا الأمر صدقه: المهارات المحلية المتاحة مباشرة لبيئة تشغيل الوكيل لا تحتاج إلى ربط في المنتج إطلاقًا. فاستورد المهارة عندما ينبغي أن تصبح مهارة مُدارة قابلة لإعادة الاستخدام بنطاق صريح، لا لمجرد أنها موجودة.
رفع حزمة. إذا كانت المهارة موجودة في مستودع أو وصلت من زميل، فارفع ملف SKILL.md أو ملف .skill أو حزمة zip. وتتحقق Sharkly من كل ما يدخل: يجب أن تكون مسارات الملفات نسبية وألّا تتجاوز حدود المهارة، كما يرفض الرفع والاستيراد المسارات المخفية أو الحساسة، والمحتوى الثنائي غير المدعوم، ومدخلات الأرشيف غير الآمنة، والمسارات المكررة، والحزم التي تتجاوز حدود الخدمة. فالمهارة تعليمات سيتبعها وكيل، ولذلك تستحق نفس التدقيق الذي توليه لاعتماد خارجي.
النطاق: تحديد من يمكنه استخدام المهارة
تنتمي كل مهارة إلى مؤسسة ولها نطاق واحد فقط، يُختار عند الإنشاء. والنطاق هو ما يحدد أي الوكلاء يمكنهم ربطها، ولا يمكن تغييره لاحقًا.
| النطاق | من يمكنه استخدامه | اختره عندما | قاعدة الربط |
|---|---|---|---|
| المؤسسة | الوكلاء المؤهلون في أنحاء المؤسسة | يكون الإجراء على مستوى الشركة فعلًا، مثل معيار مراجعة أو قائمة تحقق أمنية | يمكن لأي وكيل في المؤسسة نفسها ربطها |
| المساحة | الوكلاء المرتبطون بتلك المساحة | يمتلك العملية فريق واحد أو مجال منتج واحد | لا يستطيع أي وكيل ربطها ما لم يكن ينتمي إلى تلك المساحة |
| الوكيل | وكيل واحد فقط | تحدد هذه القدرة دور متخصص واحد بعينه | تُربط بالوكيل المستهدف عند إنشائها أو استيرادها |
القاعدة العملية الواردة في الوثائق هي الصحيحة: اختر أضيق نطاق يطابق الجمهور المقصود. والنطاق أيضًا نطاق تأثير. فمهارة بنطاق مساحة تصبح قديمة فتضلّل وكلاء فريق واحد؛ أما مهارة بنطاق مؤسسة فتضلّلهم جميعًا. برومبت في ملف dotfiles له جمهور من شخص واحد، إلى الأبد. أما جمهور المهارة فهو قرار مدروس ومسجّل في النظام.
ربط المهارات بالوكلاء
لا تفعل المهارة شيئًا حتى يحملها وكيل. وفي Sharkly، الوكيل إعداد عمل محفوظ، وربط مهارة به يضيف إليه قدرة.
التفاصيل العملية بسيطة: استخدم إعدادات المهارات في الوكيل لإضافة المهارات المؤهلة أو إزالتها، أو اختر المهارات أثناء إنشاء الوكيل. وتخضع الأهلية لقواعد النطاق. وتُطبَّق التغييرات على تشغيلات الوكيل اللاحقة، لذا فإن ربطًا تضيفه اليوم يشكّل عمل الغد دون إزعاج أي شيء قيد التنفيذ.
أما الحكم الذي يحتاج تقديرًا فهو كم مهارة ينبغي أن يحملها الوكيل الواحد. والوثائق صريحة: تجنّب ربط مهارات كثيرة متداخلة، لأن التعليمات المتعارضة أو المكررة تجعل التنفيذ أقل قابلية للتنبؤ. مهارتان محكمتان أفضل من ستّ تتنازع فيما بينها. وإذا كانت قائمة مهارات الوكيل تبدو كدرج مهملات، فستبدو تشغيلاته كذلك.
وهناك أيضًا تقسيم للعمل بين تعليمات الوكيل نفسه ومهاراته. فتعليمات الوكيل تحمل السلوك المستقر لذلك الدور الواحد: نطاقه، ومتى يطلب تدخلًا بشريًا، وصيغة الإبلاغ. أما الإجراء القابل لإعادة الاستخدام الذي قد يتشاركه عدة وكلاء فينتمي إلى مهارة. وعندما تجد نفسك تلصق الفقرة نفسها في تعليمات وكيل ثالث، فاعلم أن تلك الفقرة تريد أن تكون مهارة.
الربط هو ما يجعل بقية المنصة تتراكم أثرها. فالوكيل نفسه الذي يحمل مهارة المراجعة لديك هو الذي تُشغّله الأتمتة وفق جدول زمني أو تغيّر في الحالة، لذا يظهر معيار سُجّل مرة واحدة في تشغيلات متكررة لا يطلقها أحد يدويًا. والمهارات قابلة للاستخدام عبر السكربتات أيضًا: تعرض واجهة سطر الأوامر sharkly skill list وsharkly skill view بمخرجات JSON.
الحوكمة: من يحرر، ومن يحذف، ومن يراجع
القدرة المشتركة تحتاج تحكمًا مشتركًا، وهنا تبتعد المهارات أكثر ما تبتعد عن ملفات البرومبتات.
يمكن لمُنشئ المهارة أو مالك المؤسسة أو المدير تحريرها أو حذفها. وتتطلب المهارة ذات نطاق المساحة أيضًا صلاحية كتابة في مساحتها. كما يتطلب إنشاء مهارة بنطاق وكيل أو استيرادها، وتغيير ارتباطات مهارات وكيل، صلاحية إدارة الوكيل المستهدف. فلا أحد يعيد كتابة معيار المراجعة بهدوء عصر يوم الجمعة.
وتتبع الصيانة مبدأ المكان الواحد نفسه. فعندما تتغير عملية ما، حدّث تعليمات المهارة وملفاتها المساندة، فتلتقط التشغيلات اللاحقة النسخة الجديدة. أما الحذف فهو العملية التي ينبغي التمهّل فيها: فهو يزيل المهارة من كل وكيل يستخدمها، لذا تحقق من الارتباطات الحالية أولًا.
وقواعد الأمان قصيرة وغير قابلة للتفاوض. لا تخزّن أبدًا كلمات المرور أو رموز الوصول أو المفاتيح الخاصة أو أي أسرار أخرى في تعليمات المهارة أو ملفاتها المساندة. وراجع كل مهارة خارجية أو مستوردة محليًا قبل استخدامها. وأبقِ الأوامر والأمثلة بأقل صلاحيات ممكنة. وأعد فحص الارتباطات بعد تغيير ارتباطات المساحة لوكلٍ ما أو محتويات مهارة، لأن الأهلية قد تتغير تحت ارتباط قائم.
وفي كل ما سبق، يظل العقد بين الإنسان والوكيل قائمًا. يحمّل الوكلاء المهارات، ويتبعون العملية، ويعيدون النتائج إلى المهمة. أما البشر فيقررون أي المهارات تحمل سلطة الفريق. فالمهارة ترفع الحد الأدنى للاتساق، لكنها لا تُلغي المراجع.
متى لا تُنشئ مهارة
المهارات بنية تحتية، والبنية التحتية لها كلفة تحمّل. والثنائية الصادقة في القرار هي: أبقِ المتطلبات لمرة واحدة في وصف المهمة أو تعليقاتها؛ وأنشئ مهارة عندما ينبغي أن تكون القدرة نفسها متاحة في التشغيلات المستقبلية.
وهناك حالات أخرى تكون فيها الإجابة الصحيحة هي عدم إنشاء مهارة. فإذا كان إجراء ما موجودًا في مجلد مهارات بيئة تشغيل محلية وكانت تشغيلات ذلك الحاسوب وحده هي التي تحتاجه، فاتركه محليًا. وإذا كانت مهارتان مرشحتان ستتداخلان تداخلًا كبيرًا على الوكيل نفسه، فادمجهما أو اصقلهما قبل ربط أي منهما. وإذا لم تستطع كتابة جملة الوصف، فالعملية ليست مستقرة بما يكفي لتوثيقها بعد.
ابدأ بإجراء واحد
اختر إجراءً واحدًا يكرره فريقك ويعتمد فيه بهدوء على شخص واحد. اكتبه كمهارة واحدة ضيقة النطاق: اسم، ووصف يحدد متى تنطبق، وتعليمات تعرّف العملية والمخرجات المتوقعة. واجعل نطاقها مساحتك. ثم اربطها بوكيل واحد، وأسند إلى ذلك الوكيل مهمة حقيقية، واقرأ ما يعود.
تلك هي الحلقة كاملة. فالحرفية التي كانت تسكن رأس مطوّر واحد أصبح لها الآن اسم، ونطاق، ومالك، ومكان واحد للتحديث. وإذا كنت جديدًا على المنصة، فإن نظرة عامة على Sharkly تشرح كيف تتجاور المهارات مع المهام والوكلاء والحواسيب، والبدء مع Sharkly يمشي معك في أول اتصال من البداية إلى النهاية. أما وثائق المهارات فتغطي كل قاعدة وردت أعلاه بالتفصيل.
الأسئلة الشائعة
ما الفرق بين المهارة وتعليمات الوكيل؟
تعرّف تعليمات الوكيل سلوكًا مستقرًا لدور واحد: نطاقه، ومتى يطلب المدخلات، وكيف يبلّغ. أما المهارة فهي إجراء قابل لإعادة الاستخدام قد يتشاركه عدة وكلاء، محزّم بملفاته المساندة وأذوناته الخاصة. وإذا كانت فقرة ما تُنسخ بين الوكلاء، فهي تنتمي إلى مهارة.
هل يمكنني تغيير نطاق المهارة بعد إنشائها؟
لا. نطاق المهارة ثابت منذ إنشائها. وعندما يحتاج الجمهور إلى التغيير، أنشئ مهارة جديدة بالنطاق الصحيح وأعد ربط الوكلاء الذين يحتاجونها. ولهذا توصي الوثائق باختيار أضيق نطاق يطابق الجمهور المقصود منذ البداية.
هل تبقى المهارات المستوردة متزامنة مع مصدرها؟
لا. فالتركيب من مصدر عام مدعوم ينشئ نسخة مُدارة في النطاق الذي تختاره، والاستيراد من بيئة تشغيل محلية ينسخ المهارة إلى المؤسسة بينما تبقى النسخة المحلية الأصلية منفصلة. ومنذ تلك اللحظة تتحكم مؤسستك في نسختها.
هل يؤثر ربط مهارة جديدة على المهام الجارية حاليًا للوكيل؟
لا. فالتغييرات على ارتباطات مهارات الوكيل تُطبَّق على تشغيلاته اللاحقة. والعمل الذي بدأ بالفعل ينتهي وفق الإعداد الذي انطلق به، وتلتقط التشغيلة التالية مجموعة المهارات المحدّثة.
هل تركيب المهارات من مصادر عامة آمن؟
يمكن أن يكون آمنًا، شرط المراجعة. تعامل مع كل مهارة خارجية أو مستوردة محليًا ككود أو إعداد من طرف ثالث: اقرأ التعليمات والملفات المساندة قبل الربط، وأبقِ الأوامر بأقل صلاحيات ممكنة، ولا تسمح أبدًا بتسرب أسرار إلى مهارة. إن تحقق Sharkly عند الرفع يرفض المسارات ومدخلات الأرشيف غير الآمنة، لكن الحكم على ما إذا كانت التعليمات تستحق ثقة فريقك يبقى بيد البشر.



