بطاقة عنوان تحمل النص «ابنِ حلقة وكيل استباقية على Claude Opus 5.5»، مع عنوان فرعي عن خمس مراحل، ونموذج واحد، وكل ما لا يمنحك إياه تطبيق Anthropic للمستهلكين، فوق أربع كبسولات مؤطّرة تحمل تسميات «الجدولة»، و«الموجّه المخزّن مؤقتًا»، و«بوابة الموافقة»، و«التبديل الاحتياطي»، وزخرفة هندسية خفيفة من مستطيلات مستديرة الزوايا متزاحة على اليمين.
Guides & Insights

أنشئ حلقة وكيل استباقية على Claude Opus 5.5

الكاتب

Rowan Sterling

تاريخ النشر

أحدث النماذج · 20عرض جميع النماذج →
المعايير: Artificial Analysis · يُحدَّث يوميًا
العودة إلى جميع المقالات

الجزء المزعج في بناء وكيلك الاستباقي الخاص هو أن العمل المثير للاهتمام ليس استدعاء النموذج. يمكنك جعل Claude Opus 5.5 يجيب عن الأسئلة في أمسية واحدة. أما جعله يستيقظ وفق جدول زمني، ويقرأ فقط ما تغيّر منذ المرة السابقة، ويقرر ما إذا كان أي شيء يستحق تدخل إنسان، ويصوغ الإجراء، ثم يتوقف وينتظر — فهذا يستغرق أسابيع، ولا يحدث تقريبًا أي منه داخل النموذج. أصدرت Anthropic نسخة من هذه الحلقة باسم Claude Duet، وما هو مفيد في ذلك المنتج لأي شخص يبني نسخته الخاصة ليس قائمة ميزاته بل القرارات الظاهرة في كيفية تجميعه. ليس لديها واجهة برمجة تطبيقات منشورة ولا يمكن إعادة توجيهها إلى أنظمتك الخاصة، لذا إذا أردت الحلقة لا التطبيق، فأنت تبنيها. في ما يلي البنية، مرحلة بمرحلة، مع التكلفة الصادقة لكل منها.

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

An architecture card titled The loop, stage by stage, showing five numbered stages from left to right, Scheduler firing every few hours rather than continuously, Digest reading a diff of what changed since the last sweep, Decide where Claude Opus 5.5 reads the diff against a byte-identical system prompt and tool schema, Approval gate as a separate service that can say no, and Act executing only the approved action, with a blue callout on Decide and a cyan callout noting the gate can refuse.

المرحلة الأولى: مُجدوِل يعمل كل بضع ساعات

القرار الأول هو الذي يخطئ فيه الناس بدافع الحماس لا بدافع الهندسة: لا تُجرِ استقصاءً مستمرًا. تشرح وثائق Duet من Anthropic الفاصل الزمني الخاص بها — الفحص كل بضع ساعات — بقولها إن الفحص بلا توقف سيستهلك حدود الخطة بوتيرة أسرع بكثير. هذا ليس حذرًا تسويقيًا. بل هو الإجابة الصحيحة عن مشكلة تكلفة حقيقية، وهو الفخ الذي يقع فيه كل وكيل مطوَّر داخليًا في الأسبوع الأول.

الاستقصاء المستمر مُدمّر لسببٍ بنيوي. فكل عملية مسح هي سياق كامل: التعليمات، وتعريفات الأدوات، والمواد التي جلبتها، وأي استدلال يُجريه النموذج عليها. وبوتيرة مرة كل دقيقة، يعني ذلك 1,440 سياقًا كاملًا يوميًا، والغالبية العظمى منها لا تجد شيئًا جديدًا. أنت تدفع الثمن كاملًا لتُخبَر بأن صندوق البريد لم يتغير. أما عند ثلاث ساعات فتحصل على ثمانية، وتصبح نسبة النتائج إلى الإنفاق شيئًا يمكنك الدفاع عنه أمام من يوقّع الفاتورة.

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

المرحلة الثانية: بادئة واحدة متطابقة بايتًا ببايت، محفوظة في الذاكرة المؤقتة

هنا تؤدي الأرقام المنشورة الدور الأكبر. سعر Claude Opus 5.5 على OrcaRouter هو 4.00 دولارات لكل مليون رمز إدخال، و20.00 لكل مليون رمز إخراج، مع نافذة سياق بسعة مليون رمز، وقراءات من الذاكرة المؤقتة بسعر 0.20 لكل مليون، وذلك بسعر القائمة لدى المزوّد دون أي هامش ربح (0 بالمئة). اقرأ هذه الأرقام كقيد تصميمي لا كقائمة أسعار: فتكلفة القراءة من الذاكرة المؤقتة تعادل واحدًا من عشرين من تكلفة رمز إدخال جديد، لذا فكل بايت تُبقيه ثابتًا عبر عمليات المسح هو بايت تتوقف عن دفع السعر الكامل مقابله.

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

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

المرحلة الثالثة: ملخّص لكل اتصال، لا تفريغٌ لصندوق البريد

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

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

ينبغي أن تكون خطوة الموجز كودًا لا توجيهًا نصيًا (prompting). اجلب البيانات لكل اتصال باستخدام أي مؤشر (cursor) أو دلتا يوفّرها الـAPI، ثم اختصر النتيجة إلى ملخص منظّم: ما ظهر، وما عُدّل، وما حُلّ. امنح كل عنصر معرّفًا ثابتًا كي تتمكن المراحل اللاحقة من الإشارة إليه، وسجّل آخر مؤشر ناجح لكل اتصال حتى لا تعيد عملية جلب فاشلة تشغيل مواد الأمس وكأنها جديدة. إن الموجز الذي لا يستطيع التمييز بين "لم يحدث شيء" و"لم أتمكن من التحقق" سينتهي به الأمر إلى الإبلاغ بثقة عن حالة لم يرصدها قط.

المرحلة الرابعة: خطوة قرار تُصدر كائنًا، لا نصًا

هنا يقع Claude Opus 5.5، وما يُصدره هو ما يحدد ما إذا كان بناء بقية النظام ممكنًا من أساسه. النزعة الطبيعية هي أن يُطلب من النموذج كتابة ملخص ثم يقرأه إنسان. هذا يصلح للوحة معلومات ويفشل عند بوابة: إذ يجب على المرحلة التالية أن تقرر ما إذا كان ستسمح بإجراء ما، ولا يمكن منح الإذن لفقرة نصية.

ينبغي أن تُرجع خطوة القرار مقترح إجراء محدد النوع: اسم إجراء من قائمة مغلقة، والهدف الذي ينطبق عليه، والمعاملات، وتبرير من سطر واحد، وعلامة صريحة للثقة أو التصعيد. ليست قائمة الإجراءات المغلقة بيروقراطية؛ بل هي الآلية التي تجعل بوابة الموافقة قابلة للإنفاذ، لأن البوابة لا يمكنها التحقق إلا من الإجراءات التي تستطيع تعدادها. الوكيل الذي يمكنه إصدار أي فعل لا يمكن تقييده ببوابة، بل يمكن فقط الوثوق به.

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

المرحلة الخامسة: بوابة موافقة تستطيع فعلاً أن تقول لا

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

سياسة Anthropic المنشورة الخاصة بـ Duet جديرة بالنسخ من حيث الشكل حتى حيث تختلف قائمتك. تطلب البوابة موافقة قبل أن يُرسل إجراءٌ رسالةً، أو يجري دفعةً، أو يوقّع مستندًا، أو يحذف أي شيء. وفوق ذلك تقع طبقة ثانية تُرفض حتى مع الموافقة — في حالة Duet: تداول الأوراق المالية ونقل الأموال بين الحسابات. النمط هو سياسة من طبقتين: مجموعة كبيرة من الإجراءات المبوَّبة يجوز لإنسان أن يأذن بها، ومجموعة صغيرة لا تفتحها أي موافقة. انسخ الطبقتين حتى لو تغيّر كل بند، لأنهما تحلان مشكلتين مختلفتين. تحمي البوابة من الخطأ. وتحمي قائمة الحظر من مشغّل مخترَق، بما في ذلك المشغّل البشري.

النصف الآخر من البوابة الحقيقية هو أنها تقاطع. طلب الموافقة في Duet يعرض الإجراء الدقيق وينتظر، مما يوقف التدفق عمدًا بدلًا من مجرد تدوينه. البوابة التي تكتب سطرًا في سجل لا يقرأه أحد ليست بوابة؛ بل هي إيصال. إذا كانت خطوة الموافقة لديك تتطلب شخصًا يراقب لوحة معلومات في الثالثة صباحًا، فإما أن الفترة الفاصلة قصيرة جدًا أو أن قائمة الإجراءات واسعة جدًا. كلاهما قابل للإصلاح، ولا يُصلَح أي منهما بإضافة إشعار.

الذاكرة، وبيانات الاعتماد، والسطحان اللذان لا يمكنك الهروب منهما بالاختبار

تكمن تحت المراحل الخمس مشكلتان صعبتان، وكلتاهما تبدوان كسمتين إلى أن يتبيّن أنهما ليستا كذلك.

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

• حيازة بيانات الاعتماد. يتبع Duet التصميم المستخدم في وكلاء Anthropic المُدارين، لذلك لا يرى كلمات المرور أو رموز تسجيل الدخول الخاصة بك مباشرةً أبدًا. إن إعادة إنتاج هذا الانضباط هي الجزء الذي تتخطاه معظم الوكلاء المطوّرين داخليًا، وتخطيه يعني أن لكل موجّه مسارًا إلى بيانات اعتماد. يجب ألا يحتفظ النموذج برمز أبدًا، وألا يُعطى مفتاح API كنص، وألا يكون المكوّن الذي يتولى المصادقة. دع خطوة الهضم والمنفّذ يحتفظان ببيانات الاعتماد ويسلّمان النموذج النتائج فقط.

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

التجاوز عند الفشل، وأين يفيد التوجيه فعليًا

بعد بناء الحلقة، يُتاح خيار معماري لا يوفّره تصميم قائم على مورّد واحد. تجمع لغة التوجيه DSL الخاصة بـ OrcaRouter عدة نماذج في استدعاء واحد، ويشغّل اندماج النماذج لوحة من النماذج التي تجيب بالتوازي؛ وكلاهما يضع أكثر من نموذج خلف طلب واحد. والاستخدام العملي هنا غير برّاق: توجيه نموذج أرخص إلى ملخّص الموجز، حيث يكون العمل ضغطًا لا حكمًا، والإبقاء على Claude Opus 5.5 في خطوة القرار، حيث تُصاغ المقترحات. ويصل مفتاح واحد متوافق مع OpenAI إلى أكثر من 200 نموذج، لذا فإن تغيير أي نموذج يخدم أي مرحلة هو تغيير في الإعدادات لا إعادة كتابة.

OrcaRouter's own Claude Opus 5.5 model page. The site navigation lists Products, Models, Pricing, Docs and Blog, and the page hero carries the model name Claude Opus 5.5 above a specifications card showing a 1M-token context window, input priced at 4.00 dollars per million tokens, output at 20.00 dollars per million tokens, cached reads at 0.20 dollars per million tokens, zero percent markup, and access to more than 200 models through one OpenAI-compatible key.

التبديل الاحتياطي (Failover) هو النصف الآخر. فعندما يمرّ مزوّد ما بساعة سيئة، فإن الوكيل القادر على الوصول إلى نقطة نهاية واحدة فقط يمرّ هو الآخر بساعة سيئة، والحلقة المجدولة التي لا تملك بديلًا احتياطيًا تفوّت جولتها ببساطة. ويحوّل التوجيه الجولة الفائتة إلى جولة أبطأ — وهي ليست ميزة مبهرة إلى أن يأتي الأسبوع الذي تحتاجها فيه، وحينها تصير الفرق بين ثغرة في السجل وألّا تكون هناك ثغرة.

OrcaRouter's own model catalogue page, headed Every frontier model, one key, with a subhead reading 200+ models from 20+ providers with a single OpenAI-compatible API, a search field for the models, a row of vendor filter pills, and a list where each row gives the model, its vendor, its context length and its input and output price, with Claude Opus 5.5 at 1M context and $4.00 and $20.00 visible in view.

ما الذي تسجّل فيه فعليًا

تشغيل هذه الحلقة هو تشغيل خدمة، وللخدمة أربع خصائص قد تولّيتَ ملكيتها للتو.

• مدة التشغيل. تطبيق Anthropic هو جهاز نداء شخص آخر؛ أما جهازك فهو لك. المجدول الذي يتوقف عن الإطلاق بصمت لا يُنتج خطأً ولا مخرجات، وتكتشفه من إنسان لاحظ غياب موجزه الصباحي، لا من تنبيه.

• حيازة بيانات الاعتماد. كل رمز مميز تحتفظ به خطوة الملخص الخاصة بك هو رمز تتحمل مسؤوليته، ونطاق تأثير أي تسريب هو كل ما يمكن لذلك الاتصال الوصول إليه. يحافظ تصميم Anthropic على إبعاد بيانات الاعتماد عن النموذج؛ وإذا لم يكن تصميمك كذلك، يصبح النموذج سطح هجوم لكل حساب قمت بربطه.

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

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

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