يعتمد OpenAI Codex، وكيل البرمجة السحابي الصادر عن OpenAI، على بنية نظام متعددة الطبقات تتجاوز نطاق نموذج الذكاء الاصطناعي الأساسي بكثير. النموذج الجوهري codex-1 هو إصدار من نموذج o3 الخاص بـ OpenAI، جرى ضبطه الدقيق لمهام هندسة البرمجيات. غير أن الفريق الهندسي قال إن أصعب التحديات تمثّلت في بناء طبقة التنسيق المحيطة بذلك النموذج.
حلقة الوكيل في قلب OpenAI Codex
تقع حلقة الوكيل في مركز Codex. يأخذ الوكيل مدخلات المستخدم، ويبني موجّهاً، ويرسله إلى النموذج، ثم يتلقى استجابة. كثيراً ما تكون هذه الاستجابة استدعاءً لأداة لا إجابةً نهائية. عندها ينفّذ الوكيل استدعاء الأداة، ويُلحق ناتجه بالموجّه، ويستعلم النموذج مجدداً. تتكرر هذه الدورة حتى يُنتج النموذج رسالةً للمستخدم.
قد يؤدي طلب واحد كـ”أصلح الخطأ في وحدة المصادقة” إلى قراءة الوكيل لملفات متعددة، وتشغيل الاختبارات، وتعديل الكود، وحل أخطاء التدقيق، ثم إعادة تشغيل الاختبارات قبل إنتاج الإيداع النهائي. يتولى النموذج الاستدلال في كل خطوة، فيما تتولى الحزمة المحيطة تنفيذ الأوامر وجمع المخرجات وإدارة الأذونات وإنهاء الحلقة.
بناء الموجّه وإدارة نافذة السياق
تقع رسالة المستخدم في أسفل موجّه متعدد الطبقات. فوقها، يُكدّس النظام سياق البيئة، ومحتويات ملفات AGENTS.md، وقواعد أذونات بيئة الاختبار، وتعليمات إعداد المطوّر، وتعريفات الأدوات، ورسالة النظام. تحمل كل طبقة دوراً — نظام أو مطوّر أو مستخدم — يُشير إلى أولويتها للنموذج.
يتضاعف حجم JSON المُرسَل إلى واجهة برمجة التطبيقات تضاعفاً تربيعياً عبر المحادثة. اختارت OpenAI عدم استخدام تخزين الحالة من جانب الخادم، لأن ذلك سيُخلّ بعدم الحالة في الطلبات ويمنع دعم العملاء الذين يشترطون عدم الاحتفاظ بالبيانات. وبالتالي، يحمل كل طلب تاريخ المحادثة الكامل.
يتمثّل الحل الرئيسي في التخزين المؤقت للموجّه. بما أن Codex يُلحق المحتوى الجديد دائماً بنهاية الموجّه الحالي، يكون الموجّه القديم دائماً بادئةً دقيقة للجديد. تتيح هذه الخاصية لـ OpenAI إعادة استخدام الحسابات من استدعاءات الاستدلال السابقة. بيد أن هذه البادئة هشّة؛ إذ يؤدي تغيير النماذج أو الأدوات أو إعداد بيئة الاختبار إلى كسر ذاكرة التخزين المؤقت. وحين أضافت OpenAI دعم أدوات MCP، أدى خطأ برمجي إلى إدراج الأدوات بترتيب غير متسق بين الطلبات، مما أفسد وحده نتائج التخزين المؤقت.
حين تتجاوز المحادثات حد نافذة السياق، يُضغط Codex المحادثة. يستبدل التاريخ الكامل بنسخة أصغر تمثيلية تحافظ على فهم النموذج لما جرى عبر حمولة مشفّرة تحمل الحالة الكامنة للنموذج. صرّح الفريق الهندسي في OpenAI بأن إدارة نافذة السياق مشكلة هندسية من الدرجة الأولى لا هامشية.
ملفات AGENTS.md والسياق الخاص بالمشروع
تتيح ملفات AGENTS.md للمطوّرين وضع تعليمات خاصة بالمشروع مباشرةً في مستودعاتهم. تُخبر هذه الملفات Codex بكيفية التنقل في قاعدة الكود، والأوامر التي يجب تشغيلها للاختبار، وكيفية اتباع اصطلاحات المشروع. يؤدي النموذج بشكل أفضل معها، لكنه يعمل أيضاً بدونها. يُبقي هذا التصميم معرفة المشروع في المستودع بدلاً من ترميزها في النظام.
App Server: تمكين النشر متعدد الأسطح
بدأ Codex كأداة سطر أوامر. احتاجت OpenAI لاحقاً إلى تشغيله داخل VS Code وتطبيق ويب وتطبيق سطح مكتب macOS وبيئات تطوير متكاملة تابعة لجهات خارجية كـ JetBrains وXcode. حاول الفريق أولاً كشف Codex كخادم MCP، غير أن دلالات MCP لم تستطع دعم أنماط التفاعل الكاملة التي يتطلبها الوكيل، كبث التقدم وإيقاف المهام للموافقة وإخراج الفروق المنظّمة.
بناءً على ذلك، بنت OpenAI App Server. تعيش كل منطق الوكيل الجوهري — حلقة الوكيل وإدارة الخيوط وتنفيذ الأدوات والإعداد والمصادقة — في قاعدة كود واحدة تسمّيها OpenAI “Codex core”. يُغلّف App Server هذا الجوهر ببروتوكول JSON-RPC يمكن لأي عميل استخدامه عبر الإدخال/الإخراج القياسي. البروتوكول ثنائي الاتجاه بالكامل؛ يمكن للعميل إرسال طلبات إلى الخادم، ويمكن للخادم إرسال طلبات إلى العميل، كطلب الموافقة قبل تنفيذ أمر shell.
تُجمّع إضافة VS Code وتطبيق سطح المكتب ملف App Server الثنائي وتُشغّلانه كعملية فرعية. يُشغّل تطبيق الويب App Server داخل حاوية سحابية، ويبثّ الأحداث إلى المتصفح عبر HTTP. تعيش الحالة على الخادم، لذا يستمر العمل حتى لو أغلق المستخدم علامة تبويب المتصفح. يفصل شركاء كـ Xcode دورات إصداراتهم عن دورات OpenAI بتوجيه عملائهم الثابتين نحو ملفات App Server الثنائية الأحدث عند توفّرها.
القيود الحالية والتوجه المستقبلي
لا يستطيع OpenAI Codex حالياً قبول مدخلات الصور لأعمال الواجهة الأمامية. كما لا يمكن للمستخدمين تصحيح مسار الوكيل في منتصف المهمة. علاوةً على ذلك، يستغرق التفويض لوكيل بعيد وقتاً أطول من التحرير التفاعلي، ويتطلب هذا التحوّل في سير العمل تكيّفاً. قالت OpenAI إن الفريق يعمل نحو نموذج يُشبه فيه التفاعل مع Codex التعاون غير المتزامن مع زميل، غير أن الفجوة بين تلك الرؤية والمنتج الحالي لا تزال كبيرة.
“النموذج مكوّن والوكيل هو النظام. معظم الهندسة تكمن في النظام.”
الفريق الهندسي في OpenAI
لم تكن بنية App Server مخطّطة منذ البداية. تطوّرت من أداة CLI، عبر محاولة MCP الفاشلة، إلى البروتوكول الذي يدعم الآن كل أسطح Codex. قال الفريق الهندسي في OpenAI إن هذا المسار يُجسّد مبدأً أشمل في تصميم الأنظمة: التجريد الصحيح لا يوجد عادةً حتى يجرّب المطوّرون التجريد الخاطئ.

