00:00:00لقد أصدر فريق Claude ميزة "العملاء المدارين" (managed agents)، وهو ما يطلقون عليه التطور التالي
00:00:09بعد حزمة تطوير البرمجيات الخاصة بالعملاء (agent SDK).
00:00:11هذا شيء يتيح لك إنشاء عملاء مخصصين دون كتابة سطر برمجيات واحد.
00:00:16ويعمل هؤلاء العملاء على بنية Anthropic التحتية المدارة، والتي تتمتع بهيكلية رائعة جدًا
00:00:22مثالية لتقديم عملاء آمنين وقابلين للتوسع وجاهزين للإنتاج يمكنهم فعل أي
00:00:27شيء تريده تقريبًا.
00:00:28يمكنهم أيضًا الرد على استفسارات العملاء بناءً على قاعدة معرفتك، أو حتى إجراء أبحاث منتظمة
00:00:32لك وإرسالها إليك في وقت محدد باستخدام Slack.
00:00:36ولكن لماذا قد يستخدم أي شخص هذا بدلاً من تثبيت كود Claude على خادمه الخاص (VPS)؟
00:00:40اضغط على زر الاشتراك ولندخل في التفاصيل.
00:00:46ولكن قبل أن نبدأ، دعونا نتحدث قليلاً عن Anthropic لأنهم كانوا مشغولين للغاية
00:00:49في الأسابيع القليلة الماضية.
00:00:50أعني أنهم منعوا مؤخرًا الأشخاص من استخدام اشتراك Claude على أدوات
00:00:55طرف ثالث مثل OpenClaw، وهو ما يعتقد الناس أنه بسبب العملاء المدارين، لكنهما
00:01:00ليسا نفس الشيء تمامًا.
00:01:01أعني، أود أن أقول إن OpenClaw يشبه إلى حد ما نظام Linux.
00:01:04إنه عميل للمبتكرين والهواة.
00:01:06تختار أجهزتك الخاصة، وتختار النموذج الخاص بك، وتتعامل مع الأمان وكل شيء
00:01:11بينهما.
00:01:12بينما تشبه ميزة Claude المدارة شركة Apple، إذا جاز لي القول، لأنك لست بحاجة إلى
00:01:17القيام بأي من تلك الأشياء.
00:01:19تتولى Claude مسؤولية البنية التحتية والأمان، أنت فقط تخبرها بما تريده
00:01:24بلغة إنجليزية بسيطة، وسوف تمضي قدمًا وتبني لك عميلك المثالي.
00:01:28في الواقع، دعني أريك مدى سهولة ذلك من خلال استعراض مثال بسيط وشخصي للغاية.
00:01:34لدي مستودع GitHub خاص يحتوي على جميع معلوماتي الطبية المستخرجة من
00:01:39تطبيق NHS.
00:01:40وأريد التواصل مع تلك البيانات أو الحصول على معلومات منها باستخدام Slack.
00:01:45حتى أتمكن من استخدامها من حاسوبي المكتبي، أو هاتفي المحمول، في أي مكان أتواجد فيه.
00:01:49بين هذين الشيئين، أود أن يقوم عميل Claude المدار بمهام استخراج
00:01:54البيانات، أي استخدام الأدوات للحصول على المعلومات الصحيحة وترجمتها بطريقة يمكنني فهمها.
00:02:01هكذا.
00:02:02للبدء، يمكنني الذهاب إلى واجهة تحكم Claude، والانتقال إلى خيار العملاء المدارين الجديد
00:02:07والكتابة هنا باللغة الطبيعية لإنشاء العميل الخاص بي من الصفر.
00:02:11الآن سيتواصل هذا مع واجهة برمجة تطبيقات Claude باستخدام أوامر curl وسيستضيف أي
00:02:16كود ضروري على بنية Anthropic التحتية.
00:02:19لكن يمكنني أيضًا استخدام مهارة العميل المدار بأي لغة أفضلها.
00:02:23في هذه الحالة، سأختار TypeScript وستستخدم هذه المهارة حزمة تطوير Claude لـ TypeScript
00:02:29لإنشاء عميل لي.
00:02:31للقيام بذلك، ستحتاج إلى هذا الإصدار من كود Claude أو إصدار أعلى، والذي يحتوي على
00:02:36مهارة العميل المدار المدمجة.
00:02:38في حالتي، لدي إصدار أعلى من ذلك ويمكنني تفعيل المهارة باستخدام أمر
00:02:42واجهة برمجة تطبيقات Claude المتبوع بـ managed agents onboarding.
00:02:46بعد أن أضغط على إدخال، يسألني عما إذا كنت أعرف نوع العميل الذي أريد بناءه، وهو ما
00:02:50لا أعرفه، لكننا سنرى ما سيفعله.
00:02:52ويخبرني أنه سيمر بي عبر هذه الخطوات الثلاث.
00:02:55الأدوات، والمهارات، والملفات، والمستودعات، ثم البيئة والهوية.
00:02:59من المدهش أنه يستخدم الكثير من السياق، لذلك قد يكون هناك بعض الضغط، لكننا
00:03:04سنرى ما سيحدث.
00:03:05على أي حال، سأعطيه أمرًا لإنشاء عميل طبي يقرأ ملفات markdown من
00:03:10مستودع GitHub خاص، ويفهم المعلومات كطبيب ويسمح لي بالتواصل
00:03:15معه باستخدام Slack.
00:03:17ثم يوصيني باستخدام مجموعة الأدوات المعدة مسبقًا، مثل read و glob و grep وألا
00:03:22أستخدم write أو edit أو bash، حيث لا يوجد سبب للطبيب لتعديل المستودع، وهذا منطقي.
00:03:27كما يسأل عن رابط المستودع، لذا سأخبره بالمضي قدمًا في الأدوات الموصى بها
00:03:31والأذونات، وسأعطيه رابط المستودع.
00:03:35بعد ذلك، يقترح ما يجب أن تكون عليه الجولة ب والجولة ج، وبما أن هذا
00:03:39عميل أساسي للغاية، فهي واضحة تمامًا.
00:03:41ثم ينشئ موجه نظام (system prompt) لعميلي، ويقترح النموذج الذي يجب
00:03:45استخدامه.
00:03:46سأخبره باستخدام Sonnet لأنني لا أريد إنفاق الكثير من المال على Opus.
00:03:49سأشرح السبب لاحقًا، ولكن بخلاف ذلك، يبدو هذا جيدًا وسأزوده بهذه
00:03:53الاعتمادات بالإضافة إلى اللغة التي أريدها.
00:03:56والآن أنشأ لي ملفين بلغة TypeScript.
00:03:59الأول هو الإعداد، والذي سيقوم بإعداد أشياء مثل البيئة، والعميل،
00:04:04وأي مهارات ضرورية داخل بنية Anthropic التحتية.
00:04:07والثاني هو وقت التشغيل (runtime)، وهو الشيء الذي سيتواصل بالفعل مع
00:04:12خوادم Anthropic ويرسل تلك المعلومات إلى Slack.
00:04:15لذا سأقوم بإعداد كل هذا وسأريكم كيف يبدو الأمر عندما ينتهي.
00:04:19بعد تشغيل ملف الإعداد هذا، يعطيني معرف البيئة، الموجود هنا.
00:04:24ويعطيني أيضًا معرف العميل، الموجود أيضًا هنا.
00:04:27وكما ذكرت سابقًا، يتم إنشاء هذه الأشياء على بنية Anthropic التحتية.
00:04:32لذا داخل واجهة تحكم Claude، يمكنني رؤية عميلي هنا، بالإضافة إلى البيئة التي
00:04:36أنشأتها للتو.
00:04:37لقد أنشأت أيضًا تطبيق Slack الخاص بي ووضعت جميع المعلومات داخل ملف .env الخاص بي لكي
00:04:42يستخدمها ملف apps.ts، مما يعني أنه إذا قمت بتشغيل هذا الملف، فسيقوم بتشغيل بوت Slack الخاص بي.
00:04:48لذا يمكنني سؤاله، ما هو النموذج الذي تستخدمه؟
00:04:50وبعد فترة يستجيب قائلاً: أنا Claude من صنع Anthropic.
00:04:54هل هناك شيء طبي يمكنني مساعدتك به؟
00:04:56هذا رائع جدًا.
00:04:57لكن الأروع هو أنه يمكنني رؤية الجلسة هنا في واجهة تحكم Claude.
00:05:01نعم، لقد كنت أختبر هذا عدة مرات وهنا نحصل على مزيد من التفاصيل عما حدث.
00:05:04إذا قمت بإغلاق هذا لتكبيره، يمكنك رؤية السؤال الذي طرحه المستخدم.
00:05:09ثم استخدم أداة رسائل Slack ثم استجاب العميل.
00:05:12لقد نسيت أن أذكر سابقًا كيف يعمل التسعير لهذا.
00:05:15إذا ذهبنا إلى الوثائق، يمكننا أن نرى أن جميع الرموز (tokens) المستخدمة من قبل العملاء المدارين
00:05:20يتم تسعيرها وفقًا لنموذج التسعير الذي تستخدمه واجهة برمجة تطبيقات Claude، الموجود هنا.
00:05:25للأسف، اشتراكك pro max أو team ليس مفيدًا للعملاء المدارين، ولكن بالإضافة إلى
00:05:30الدفع مقابل الرموز، سيتعين عليك أيضًا الدفع مقابل الجلسات، وهي 8 سنتات لكل ساعة
00:05:35جلسة.
00:05:36وهذا فقط عندما تكون الجلسة قيد التشغيل.
00:05:38لذا إذا عدت إلى واجهة تحكم Claude ونقرت على الجلسات لجميع هذه الجلسات الخاملة،
00:05:42فلن يتم تحصيلي.
00:05:43حسنًا، لنفعل شيئًا أكثر إثارة مع هذا البوت.
00:05:46سأسأله: بناءً على ما تعرفه عني طبيًا، هل من المقبول بالنسبة لي تناول
00:05:50الكالاماري؟
00:05:51لقد ذهب هنا واستخدم أداة bash للحصول على معلومات من المستودع.
00:05:56لقد قام بقراءتين للملفات، وبعد بضع ثوانٍ، أرسل لي رسالة Slack تخبرني
00:06:01أنه يجب علي توخي الحذر مع الكالاماري لأنني أعاني من حساسية تجاه الروبيان، وهذا صحيح.
00:06:06أود أن أقول إنه قدم الكثير من المعلومات متحدثًا عن حكة لساني وتورم الحلق
00:06:11وما إلى ذلك.
00:06:12لكن للأمانة، إنه يعمل بشكل جيد حقًا.
00:06:13في الواقع، لقد قمت بتعديل العميل قليلاً.
00:06:15إذا نقرنا هنا في واجهة تحكم Claude، يمكننا أن نرى أن هناك ثلاثة إصدارات تشير
00:06:19إلى أن هذا العميل قد تم تغييره ثلاث مرات.
00:06:21لقد غيرت موجه النظام لجعله يبدو بشريًا أكثر قليلاً وغيرت النموذج
00:06:26من Opus إلى Sonnet.
00:06:27هنا في واجهة المستخدم، يمكنني تغيير موجه نظام العميل، ويمكنني تغيير النموذج
00:06:32والأدوات التي يمكنه الوصول إليها، وهو أمر مفيد للاختبار.
00:06:35هذا كل شيء تقريبًا.
00:06:36باستثناء بعض التعديلات البرمجية الصغيرة التي اكتشفتها من خلال المراجعة المستمرة مع Claude، هكذا
00:06:41يكون بناء عميل بهذه السهولة.
00:06:44لا داعي لتعلم كيفية عمل حزمة تطوير عملاء Claude.
00:06:47يمكنك فقط التواصل مع Claude باستخدام مهارة وإنشاء عميلك الخاص.
00:06:51ولكن كيف يعمل كل هذا في الكواليس؟
00:06:54كتبت Anthropic مقالاً مفصلاً للغاية حول كيفية عمل كل شيء، وسأترك
00:06:58رابطًا له في الوصف.
00:07:00لكنني سأقول إن الهيكل بالكامل يتكون من ثلاثة مكونات رئيسية.
00:07:05الجلسة (session) والعدة (harness) والتنسيق (orchestration)، وهذا لا يعني أن البيئة المعزولة (sandbox) والأدوات أقل
00:07:09أهمية، لكنني سأقول إن هذه الثلاثة فريدة جدًا.
00:07:12العدة، المعروفة أيضًا باسم أيدي النظام، هي المكان الذي يتم فيه استخدام نموذج Claude.
00:07:17وتعرف أيضًا باسم الموجه عديم الحالة (stateless router) لأنها توجه استدعاءات الأدوات والموارد وبروتوكولات MCP إلى
00:07:23مكانها المناسب أو تشغل الكود وتعدل الملفات في بيئة معزولة.
00:07:28سأتحدث عن فوائد فصل استدعاءات الأدوات عن العدة
00:07:32نفسها.
00:07:33لكن الجلسة هنا تشبه ذاكرة النظام وتحتوي على سجلات للعدة لا يمكن إلا الإضافة إليها (append only).
00:07:37إليها.
00:07:38قد تعتقد أن العدة هي كود Claude، لكنها في الواقع عدة مخصصة
00:07:43للعملاء المدارين.
00:07:44سأشرح السبب أيضًا بعد قليل.
00:07:47وأخيرًا، المنسق (orchestrator) هو الذي يقرر الأوضاع التي يجب أن تكون عليها العدة.
00:07:51مثل وضع البناء والخطة وما إلى ذلك.
00:07:54والأهم من ذلك، أنه ينشئ عدة جديدة إذا فشلت هذه العدة.
00:07:58تخيل أن لديك عدة هنا تفشل أو تتوقف.
00:08:02يمكن للمنسق إنشاء عدة جديدة.
00:08:04وبما أن سجلات الجلسة منفصلة عن العدة نفسها، يمكن للعدة الجديدة قراءة
00:08:09السجلات لمعرفة ما كان يحدث ومن أين تبدأ بالضبط.
00:08:13في الواقع، النظام بأكمله مصمم للتوسع.
00:08:15لذا يمكنك الحصول على عدد غير محدود من النماذج والبيئات، وستتمكن الهيكلية
00:08:20من التعامل مع ذلك.
00:08:21فائدة أخرى لهذه الهيكلية هي جانب الأمان.
00:08:25إذا عدت إلى واجهة تحكم Claude ونقرت على خزنة الاعتمادات، يمكنك أن ترى أن
00:08:30الاعتمادات مخزنة في مكان آمن.
00:08:32الآن، إذا كان لدي عميل يعمل محليًا، فقد يكون ذلك ملف .env أو شيئًا مخصصًا
00:08:36وضعته.
00:08:37لكن إذا كنت أستخدم واجهة تحكم Claude أو واجهة المستخدم، فسيتم تخزين جميع الاعتمادات
00:08:41هنا.
00:08:42والجميل في ذلك هو أنه يتم استدعاء هذه الاعتمادات في وقت التشغيل.
00:08:45لذا إذا كان لديك مفتاح واجهة برمجة تطبيقات خاص بـ MCP أو مفتاح خاص بأداة ما، فإن العدة أو النموذج
00:08:50لا يعرف أي شيء عنه ولا يمكنه الوصول إليه.
00:08:54فمثلاً، إذا كنت بحاجة لاستدعاء أداة الطقس MCP وكان لدي مفتاحها، فإن العدة
00:09:00ستستدعي الأداة وسيكون المفتاح موجودًا ضمن استدعاء الأداة نفسها أو بروتوكول MCP.
00:09:05وسيتم استخدامه في وقت التشغيل.
00:09:07بالمثل، إذا احتاجت البيئة المعزولة لاستخدام مفتاح، فسيتم تخزينه في الخزنة.
00:09:12وسيتم استخدامه أيضًا في وقت التشغيل ولن يعرف النموذج عنه شيئًا.
00:09:15في الواقع، إنه لا يعرف حتى عن مفتاح واجهة برمجة تطبيقات Anthropic الخاص به، بما أنه يُستخدم أيضًا
00:09:20في وقت التشغيل.
00:09:21أوصي بشدة بقراءة بقية هذا المقال للحصول على نظرة عامة مفصلة حول كيفية
00:09:25بناء النظام بأكمله، فهو فريد جدًا.
00:09:28بصراحة، أنا أستمتع حقًا بإنشاء عملاء Claude المدارين.
00:09:31أعني، هناك أشخاص يعتقدون أن هذا سيموت، تمامًا مثل عملاء OpenAI.
00:09:36المخصصة.
00:09:37إذا لم يمت عملاء OpenAI بعد، فيرجى إخباري في التعليقات لأنني لا أسمع
00:09:39الكثير عنهم.
00:09:40لكنني أعتقد أن هذا سيستمر لفترة طويلة لمجرد أنه من السهل جدًا
00:09:45إنشاء عميل.
00:09:46ليس عليك أن تتعلم عن حزم تطوير البرمجيات، وليس عليك استخدام الجهاز الطرفي (terminal) لإنشاء واحد إذا
00:09:51لم تكن ترغب في ذلك، ويمكنك تقريبًا القيام بكل عمليات الربط بخوادم وأدوات MCP كلها
00:09:56داخل واجهة المستخدم، وهو أمر رائع للأشخاص الذين لا يريدون كتابة أي كود.
00:10:01لكن يجب أن أقول شيئًا مخيبًا للآمال بعض الشيء وهو حقيقة أنه يجب عليك الدفع باستخدام
00:10:06رموز واجهة برمجة التطبيقات أو الدفع باستخدام فواتير واجهة برمجة التطبيقات، لأنني كمشترك في Claude Pro،
00:10:12كنت أود استخدام حدودي، أي الحدود التي تقع ضمن نطاق Pro على العملاء المدارين،
00:10:17حتى لا أضطر للدفع مقابل شيئين مختلفين.
00:10:20لكن بكل صراحة، ليس الأمر باهظ الثمن بجنون إذا استخدمت نموذجًا أرخص مثل Sonnet أو Haiku.
00:10:26وعلى الرغم من أنه منسق نوعًا ما، فكما ترون، يمنحك الوصول إلى Notion،
00:10:31وخوادم Slack MCP وما إلى ذلك، ولكن إذا كنت تريد إنشاء شيء لا يوجد ضمن
00:10:36تلك الحدود، فسيتعين عليك المضي قدمًا وكتابة الكود الخاص بك، وهو ما يتميز به
00:10:40OpenClaw حقًا.
00:10:41أعني، OpenClaw مفتوح للغاية، وهذا واضح من اسمه ولديه العديد من القنوات من Telegram إلى
00:10:46Discord إلى WhatsApp، بينما إذا كنت تريد فعل الشيء نفسه مع العملاء المدارين، فقد
00:10:51تضطر لبرمجة حلك الخاص أو جعل Claude يبرمج واحدًا لك.