لا أحد يثق بزميل جديد بسبب سيرته الذاتية. الثقة تأتي من البنية: مسؤولية محدَّدة النطاق، وعمل يجري على مرأى الفريق، ومراجعة قبل إطلاق أي شيء. أزِل أيًّا من هذه العناصر، وسيتحول حتى الزميل اللامع إلى عبء. والأمر نفسه ينطبق على وكلاء الذكاء الاصطناعي كأعضاء في الفريق. السؤال ليس أبدًا: «هل النموذج ذكي بما يكفي؟»، بل: «هل أعرف ما المسموح لهذا الشيء بالتعامل معه؟ وهل أستطيع رؤية ما فعله؟ وهل يُطلَق أي شيء دون موافقة إنسان؟»
تجيب Sharkly عن ذلك بالإعداد لا بالوعود. فالوكيل في Sharkly إعداد عمل محفوظ وليس أمرًا لمرة واحدة: تعليماته، وبيئة تشغيله، ومهاراته، ومستودعاته، وبيئته، وإعدادات التشغيل هي ما يحدد كيفية تعامله مع العمل. الأمر النصي (prompt) يختفي بمجرد إغلاق الطرفية، أما الإعداد فيمكن فحصه ومشاركته ويبقى ثابتًا في كل عملية تشغيل.
إذا أردت نظرة عامة على المنصة أولًا، فابدأ بـما هي Sharkly ثم عُد إلى هنا.
باختصار
الوكيل في Sharkly هو إعداد عمل محفوظ وقابل لإعادة الاستخدام لفاعل ذكاء اصطناعي: تعليمات التشغيل، وربط بحاسوب وبيئة تشغيل، ومهارات مرتبطة، ومستودعات Git، ومتغيرات بيئة، وإعدادات تشغيل مثل التزامن والمهلات ووضع دليل العمل. أنت تثق به كما تثق بزميل، أي بالبنية لا بالإيمان: نطاقه واضح في الإعداد، وحالات تشغيله وأثره مرئية، ونتائجه تعود إلى المهمة حيث يراجعها إنسان ويقبلها. الوكلاء يبحثون وينفذون ويختبرون ويقدّمون التقارير. أما البشر فيحددون الاتجاه، ويمنحون الصلاحية، ويقبلون النتيجة.
ما هو الوكيل وما ليس هو
الوكيل فاعل ذكاء اصطناعي مُهيَّأ للتعامل مع العمل في Sharkly. يمكنه استقبال المهام المُسنَدة إليه، وكتابة التعليقات، وتحديث حالة المهمة عبر سير العمل المتاح، وإنتاج أثر للتنفيذ. ولأن الإعداد محفوظ، يمكن للفريق أن يحتفظ بوكلاء منفصلين لتعديلات الشيفرة والمراجعة والاختبار والتوثيق والفرز التشغيلي، دون إعادة كتابة التعليمات نفسها في كل مهمة.

هناك حدّان مهمان يجب توضيحهما منذ البداية.
الوكيل ليس مضيف التنفيذ. فعمل الوكيل يجري عبر بيئة تشغيل مختارة على حاسوب متصل. الوكيل يحدد كيف ينبغي التعامل مع العمل؛ والحاسوب يوفّر المضيف؛ وبيئة التشغيل تنفّذ الجلسة الفعلية؛ وتبقى المهمة هي السجل المشترك. لكل دور وظيفة واحدة، ولهذا يمكن لحاسوب واحد أن يخدم عدة وكلاء.
الوكيل لا يختار نموذجه بنفسه. بل يتبع النموذج الافتراضي لبيئة التشغيل، مع عدم وجود أي مُحدِّد للنموذج أو تحكّم في عمق التفكير على مستوى الوكيل. لاستخدام نموذج مختلف، غيّره في إعدادات أداة بيئة التشغيل أو الحاسوب، مثل Claude Code أو Codex نفسها.
الثقة سمة في النظام لا في النموذج
هذه هي الحجة التي يقوم عليها هذا المقال: الوكيل جدير بالثقة عندما يكون عمله محدَّد النطاق ومرئيًا وقابلًا للمراجعة. لا عندما يكون النموذج مبهرًا.
محدَّد النطاق يعني أن صلاحية الوكيل مكتوبة قبل تشغيله: أي مستودعات يمكنه لمسها، وعلى أي حاسوب ينفّذ، وما تسمح به تعليماته، وكم مهمة يمكنه تشغيلها في الوقت نفسه، وكم يجوز أن تستمر عملية التشغيل. ومرئي يعني أن حالات التشغيل وأحداث التتبع والنتائج تعود إلى المهمة حيث يمكن لأي شخص فحصها، بدل أن تختفي في طرفية خاصة. وقابل للمراجعة يعني أن إنسانًا يجلس عند نهاية الحلقة: يمكن للوكيل أن يترك المهمة في انتظار رد بشري أو في انتظار مراجعة بشرية، وتصل هذه الإشارات إلى صندوق الوارد الخاص بالشخص المسؤول.
هذا هو العقد بين الإنسان والوكيل على أرض الواقع. تتوقف الأتمتة عند النقطة التي يلزم فيها حكم الفريق. وإذا كنت لا تزال تقيّم سير العمل نفسه، فإن مقالنا التمهيدي عن البرمجة الوكيلية يغطي الانتقال من كتابة الأوامر النصية إلى إسناد العمل.
واجهة إعداد الوكيل
قد يتضمن الوكيل اسمًا ووصفًا وصورة رمزية ومالكًا؛ وتعليمات تشغيل؛ وإعداد الرؤية والموضع في المساحة؛ واتصالًا بحاسوب ومزوّد بيئة تشغيل؛ ومهارات مُسنَدة؛ ومستودعات Git خاصة بالوكيل؛ ومتغيرات بيئة عادية وسرية؛ ووسائط إضافية لبيئة التشغيل؛ وإعدادات دليل عمل المهمة؛ وحدًّا أقصى للمهام المتوازية قيد التشغيل مع مهلة لكل مهمة. وكل عنصر من هذه العناصر هو رافعة للثقة.
التعليمات تُدرَج في كل عملية تشغيل. استخدمها للسلوك الذي يجب أن يسري على كل مهمة: النطاق والدور، وكيفية فحص المهمة قبل التصرف، ومتى يُطلب تدخّل بشري، والفحوص المتوقعة، وصيغة تقديم التقارير. وترسم الوثائق خطًا ثلاثيًا مفيدًا: المتطلبات الخاصة بمهمة معينة مكانها وصف المهمة أو تعليقاتها، والإجراء القابل لإعادة الاستخدام الذي قد تتشاركه عدة وكلاء مكانه المهارة، أما تعليمات الوكيل نفسه فتحمل هويته الثابتة. عبارة مثل «اقرأ وصف المهمة والتعليقات الأخيرة قبل التعديل. أبقِ التغييرات ضمن السلوك المطلوب. شغّل أقرب الفحوص ذات الصلة وأبلغ عن الإخفاقات دون إخفائها» مكانها الوكيل، لأنها يجب أن تظل صحيحة يوم الاثنين وتبقى صحيحة في مارس. أما الوصف فيخدم قارئًا مختلفًا: فهو يخبر البشر بما يجب إسناده، بينما تخبر التعليمات الوكيل بكيفية العمل.
الرؤية إما شخصية، أي متاحة لمالكها الحالي فقط، وإما مساحة، أي متاحة للأشخاص الذين يمكنهم الوصول إلى مساحة الوكيل. وهي أيضًا تتحكم في من يجوز له إسناد مهام إلى الوكيل، أو بدء محادثة وكيل معه، أو تفعيله عبر تعليق أو إشارة. ابدأ بالوضع الشخصي أثناء الضبط، وانتقل إلى المساحة عندما يصبح الإعداد جديرًا بالمشاركة. تلك الترقية هي اللحظة التي تتحول فيها ممارسة عمل مطوّر واحد إلى بنية تحتية للفريق.
الحاسوب وبيئة التشغيل يتحدان معًا لتكوين هدف التنفيذ. كون الحاسوب متصلًا يعني فقط أن خدمته المحلية ترسل نبضات، ولا يعني أن بيئة التشغيل المختارة قادرة على تنفيذ مهمة. وإذا كان الحاسوب غير متصل، تنتظر عمليات التشغيل الجديدة عادةً عودته؛ وإذا اختفت بيئة التشغيل المختارة، فاختر غيرها من المؤهَّلة. التفاصيل الكاملة للإعداد في أجهزة الحاسوب في Sharkly.
المهارات تحزم تعليمات قابلة لإعادة الاستخدام وملفات مساندة: قواعد المراجعة، وقوائم التحقق قبل التسليم، وإجراءات الفريق. تبقى مهارات بيئة التشغيل المحلية متاحة تلقائيًا على ذلك الحاسوب؛ أما مهارات المساحة المشتركة فيجب إسنادها صراحةً. وهناك تحذير يستحق التكرار: تجنّب ربط مهارات كثيرة متداخلة، لأن التعليمات المتضاربة تجعل التنفيذ أقل قابلية للتوقّع. راجع المهارات في Sharkly للتعمق أكثر.
المستودعات هي أنظف رافعة لتحديد النطاق تملكها. اربطها بالوكيل عندما يحتاج إلى نطاق شيفرة أضيق من الافتراضي في المساحة؛ وإذا لم توجد أي روابط، تعود Sharkly إلى المستودعات المُهيَّأة لمساحة المهمة. وكيل توثيق مرتبط بمستودع الوثائق لا يملك أي مسار إلى خدمة الدفع لديك.
البيئة وإعدادات التشغيل تحدّان مما يمكن لعملية تشغيل أن تستهلكه. فمتغيرات البيئة العادية والسرية، إضافة إلى الوسائط الإضافية لبيئة التشغيل، تتيح لعملية التشغيل حمل الإعداد دون أن يلصق أحد بيانات اعتماد في مهمة. لا تضع أبدًا رموز المستودعات أو المفاتيح الخاصة أو رموز التثبيت في وصف مهمة أو تعليق أو تعليمة وكيل أو مهارة. وتتحكم إعدادات تشغيل المهمة في المهام المتوازية، والحد الأقصى لمدة التشغيل، ووضع دليل العمل:
| الوضع المؤقت | الوضع المحدد | |
|---|---|---|
| ما تحصل عليه عملية التشغيل | دليل معزول لكل مهمة؛ ويمكن لعمليات التشغيل المدعومة بمستودعات تهيئة worktree جديدة | دليل محلي مطلق واحد مُهيَّأ من مجموعة أدلة الوكيل |
| التزامن | تنفيذ متوازٍ أكثر أمانًا؛ القيمة الافتراضية 50% من حد الحاسوب | عملية تشغيل واحدة لكل دليل في المرة؛ والقيمة الافتراضية تطابق عدد الأدلة |
| التوفر | أي حاسوب متصل | أجهزة الحاسوب المحلية فقط |
| الأفضل لـ | معظم أعمال المستودعات، وفي كل مرة قد تُعدِّل فيها عدة مهام قاعدة الشيفرة نفسها بالتوازي | المستودعات الضخمة جدًا، أو الذاكرات المؤقتة المحلية المكلفة، أو المهام المرتبطة بخدمات محلية |
وإذا ضبطت قيمة تزامن يدوية أعلى من عدد الأدلة، يحذّرك المنتج من احتمال تعارض عمليات الكتابة. أما آليات العزل فهي موضوع مقال كيف تشغّل Sharkly الوكلاء بالتوازي دون تعارضات الدمج.
المحادثات مقابل المهام: واجهتان وقاعدة واحدة
محادثة الوكيل محادثة مستقلة لطرح سؤال أو التحقيق في موضوع أو تشكيل خطة قبل أن يصبح العمل بحاجة إلى مهمة متتبَّعة. وتدعم المحادثة ثلاثة أوضاع: الاستكشاف للتحقيق القرائي فقط، والتخطيط للمقترحات التي تراجعها وتؤكدها قبل أن تنشئ Sharkly المهمة والمهام الفرعية المخطط لها، والتنفيذ للتصرف المباشر عبر واجهة سطر الأوامر (CLI) المُهيَّأة للوكيل. وكل جلسة تخص الشخص الذي أنشأها.
أما المهمة فهي المكان الذي يذهب إليه العمل عندما يحتاج إلى ملكية أو حالة أو سجل تنفيذ أو مراجعة. والقرار بين الاثنين: استخدم المحادثة للاستكشاف أو التخطيط أو التصرف قبل أن يصبح العمل بحاجة إلى مهمة متتبَّعة؛ واستخدم المهمة عندما يحتاج العمل إلى مسؤول إسناد أو حالة أو معايير قبول أو سجل دائم.
هناك حدّ واحد يمنع الفرق من فقدان السياق. فإرسال رسالة في محادثة الوكيل لا ينشئ تعليقًا على المهمة، والرسائل في محادثة وكيل المهمة لا تظهر في النشاط كتعليقات. وإذا كان الفريق بحاجة إلى رؤية نتيجة ما، فانسخها إلى وصف المهمة أو إلى تعليق. الثقة تعتمد على السجل المشترك، والسجل المشترك هو المهمة.
ماذا تخبرك حالات التشغيل والمهمة
الرؤية هنا مجموعة محددة من الحالات يمكنك قراءتها، وليست شعارًا على لوحة تحكم.
تمر عملية تشغيل المهمة بحالات: في قائمة الانتظار، ومُرسَلة، وفي انتظار الدليل المحلي، وقيد التشغيل، ومكتملة، وفاشلة، وملغاة. وحالات التشغيل منفصلة عن حالة سير عمل المهمة: فقد تفشل عملية تشغيل بينما تبقى المهمة مفتوحة لمحاولة أخرى. ويسجّل سجل التنفيذ سبب دخول عملية التشغيل في قائمة الانتظار، ووقت بدئها وانتهائها، واستدعاءات الأدوات وأحداث بيئة التشغيل، ومصدر التفعيل، وتفاصيل الإخفاق.
وتوفر الوكيل إشارة ثالثة منفصلة. فقد يكون الوكيل متصلًا ومع ذلك لديه عمل في قائمة الانتظار لأن حد التزامن أو سعة الأدلة ممتلئ. وتعمل قائمة الانتظار (Backlog) كمنطقة توقف: المهمة المُسنَدة إلى وكيل تنتظر ما دامت في قائمة الانتظار، ونقلها إلى حالة جاهزة للعمل هو ما يبدأ التشغيل. وإسناد مهمة إلى وكيل لا يفعّل العمل أبدًا بشكل مفاجئ.
وكيلك الأول: جولة عملية يمكنك الوثوق بها
أسرع طريق لبناء الثقة هو أصغر حلقة مفيدة، كما توضحه وثائق Sharkly: صِل حاسوبًا واحدًا، وأنشئ وكيلًا واحدًا، وأسند مهمة واحدة منخفضة المخاطر.
- صِل حاسوبًا. افتح الإعدادات، ثم أجهزة الحاسوب، واختر «توصيل حاسوب». وانتظر حتى يظهر كمتصل مع وجود بيئة تشغيل واحدة متاحة على الأقل.
- أنشئ الوكيل بدور ضيق. الاسم: قارئ الشيفرة. الوصف: يقرأ مستودعًا، ويشرح التنفيذ الحالي، ويبلّغ عن المخاطر دون تعديل أي ملف. الرؤية: شخصية.
- اكتب تعليمات تفرض النطاق: «اقرأ المهمة كاملة والتعليقات ذات الصلة قبل التصرف. أبقِ النطاق ضمن الطلب. في المهمة الأولى، لا تعدّل أي ملف. أبلّغ عمّا فحصته، والدليل على كل استنتاج، وكل ما بقي غير مؤكد».
- اربط الشيفرة. أرفق مستودع Git أو هيّئ دليلًا محليًا محددًا يحتوي عليها بالفعل. يمكن تأجيل المهارات.
- أنشئ مهمة صغيرة نصية فقط: راجع مسار خطأ المصادقة، وحدّد ثلاث حالات إخفاق يراها المستخدم، واستشهد بالملف ذي الصلة لكل حالة، ولا تغيّر شيئًا.
- أسند المهمة وابدأها، باستخدام حالة جاهزة للعمل لا قائمة الانتظار. راقب انتقال حالة التشغيل من قائمة الانتظار إلى قيد التشغيل، ثم اقرأ النتيجة في المهمة.
- راجع بجدية. تحقق من أن الوكيل فحص الشيفرة المقصودة، والتزم بحد عدم التعديل، وقدّم الأدلة، وسجّل عدم اليقين بدل التخمين.

هذه الخطوة الأخيرة هي بيت القصيد. فالمهمة الأولى القرائية فقط تتيح للوكيل أن يستحق الصلاحية قبل أن يحمل أي صلاحية. وبعد أن تنجح الحلقة، وسّع النطاق عن قصد. وتفاصيل الإسناد الكاملة في كيفية إسناد مهمتك الأولى إلى وكيل برمجة بالذكاء الاصطناعي.
وإذا توقف وكيل عن استحقاق تلك الثقة، فإن سحبها نظيف. فالأرشفة تزيله من الإسناد والإشارات وتلغي أعماله الجارية، بينما تبقى مهامه وتعليقاته وسجل تشغيله السابق متاحة. والزميل الذي يمكنك إنهاء عمله دون فقدان سجل أعماله هو زميل يمكنك تحمّل تكلفة ضمّه.
الأسئلة الشائعة
ما هو الوكيل في Sharkly بالضبط؟
الوكيل فاعل ذكاء اصطناعي مُهيَّأ للتعامل مع العمل في Sharkly: إعداد محفوظ من التعليمات، وربط بحاسوب وبيئة تشغيل، ومهارات، ومستودعات، ومتغيرات بيئة، وإعدادات تشغيل. يمكنه استقبال المهام المُسنَدة، وكتابة التعليقات، وتحديث حالة المهمة، وإنتاج أثر للتنفيذ. ولأن الإعداد محفوظ، تتحول ممارسة عمل شخص واحد إلى شيء قابل لإعادة الاستخدام عند مشاركة الوكيل في مساحة.
أي نموذج يستخدم وكيل Sharkly؟
يتبع الوكيل النموذج الافتراضي لبيئة التشغيل المختارة، مثل Claude Code أو Codex، ولا يعرض اسم نموذج محددًا ولا يَعِد به. ولا يوجد على مستوى الوكيل أي مُحدِّد للنموذج أو تحكّم في عمق التفكير. لتغيير النموذج، حدّث إعدادات أداة بيئة التشغيل أو الحاسوب.
ما الفرق بين محادثة الوكيل وإسناد مهمة إليه؟
محادثة الوكيل محادثة مستقلة للاستكشاف أو التخطيط أو التصرف قبل أن يصبح العمل بحاجة إلى سجل متتبَّع. أما المهمة فهي وحدة العمل المشتركة، وتتضمن مسؤول الإسناد والحالة وسجل التنفيذ والمراجعة. ورسائل المحادثة لا تتحول إلى تعليقات على المهمة، لذا فإن الاستنتاجات التي يجب أن يراها الفريق مكانها المهمة.
كيف أحدّ مما يمكن للوكيل فعله؟
يُضبط النطاق في الإعداد: فالتعليمات تحدد الدور وقواعد الحذر، وروابط المستودعات تحدّ من الشيفرة التي يراها الوكيل، وإعدادات تشغيل المهمة تضع حدًا للمهام المتوازية ومدة التشغيل. ويضيف وضع دليل العمل المؤقت مزيدًا من العزل بمنح كل مهمة دليلها الخاص. ويبقى القبول النهائي من نصيب إنسان.
لماذا لا تبدأ المهمة التي أسندتها؟
تحقق من ثلاثة أمور. المهمة الموجودة في قائمة الانتظار (Backlog) تنتظر بحكم التصميم؛ فانقلها إلى حالة جاهزة للعمل. وكون الحاسوب متصلًا يعني فقط وصول نبضات، لذا تأكد من أن بيئة التشغيل المختارة تظهر كمتاحة. وقد يضع الوكيل المتصل عمله في قائمة الانتظار أيضًا عندما يمتلئ حد التزامنه أو أدلته المحددة.



