Codex أصبح الآن أفضل نظام لتشغيل المهام الوكيلية الطويلة

CChase AI
Computing/SoftwareVideo & Computer GamesInternet Technology

Transcript

00:00:00قد يتفوق Codex على Claude Code هنا مع إصدار ميزة الأهداف التجريبية الجديدة تمامًا
00:00:05أصبح Codex الآن أسهل طريقة لتنفيذ مهام البرمجة المستقلة طويلة الأمد دون
00:00:10الحاجة إلى تضمين أي نوع من طبقات التنسيق الإضافية، حيث تعمل الأهداف مثل
00:00:15حلقة RALPH متكاملة وأكثر تطوراً، فأنت تعطيه هدفاً معيناً وسيعمل
00:00:19لساعات وساعات لترجمة وحل تلك المشكلة دون حاجتك للتدخل على الإطلاق
00:00:25واليوم سأريكم كيف يعمل، وكيف يمكنك إعداده، وسنمر عبر عرض
00:00:29حقيقي حتى تتمكن من رؤية هذا الشيء قيد التشغيل، لذا سنقوم اليوم بإنشاء Rift Salvage، وهي لعبة
00:00:35فيديو قتالية ثنائية الأبعاد تستخدم أصولاً أصلية تماماً قمنا ببنائها حصرياً من خلال ميزة الأهداف
00:00:42تعتبر ميزة الأهداف أحد الفوارق الحقيقية لـ Codex حالياً وهي سهلة الاستخدام بشكل مضحك
00:00:47نحن نتحدث عن أمر واحد فقط، لذا هناك قيمة كبيرة يمكن الحصول عليها هنا، فسواء
00:00:51كنت تستخدم تطبيق سطح المكتب لـ Codex أو واجهة الأوامر، يجب عليك تمكين الأهداف لأنها
00:00:56ميزة تجريبية الآن، يمكنك توجيه Codex للقيام بذلك أو يمكنك فعل ذلك بنفسك بسرعة كبيرة
00:01:01داخل تطبيق Codex، سأذهب ببساطة إلى الإعدادات ثم سأنتقل إلى التكوين
00:01:07هنا حيث يقول فتح config.toml سأضغط على ذلك وسأفتحه في برنامج VS Code
00:01:15وهنا بالأسفل تحتاج لإضافة سطرين إذا لم يكونا موجودين بالفعل: features و goals تساوي true
00:01:22هذا كل شيء، لن يستغرق الأمر سوى ثانيتين، وإذا كان ذلك معقداً جداً يمكنك أيضاً إخبار Codex
00:01:27“مهلاً، هل يمكنك تمكين الأهداف لي؟”، الميزات، الأهداف تساوي true، هذا كل شيء، والآن لاستخدام الأهداف فعلياً
00:01:35داخل تطبيق سطح المكتب وواجهة الأوامر، ستقوم فقط بكتابة /goal، والآن لأي
00:01:40سبب كان، أعتقد لأن الميزة جديدة وتجريبية، فعندما تكتب /goal لن
00:01:43تحصل على أي إشعار بأنها تعمل بالفعل، وسترى بمجرد أن نعطيها أمراً مناسباً
00:01:48أننا سنحصل بالفعل على شارة صغيرة تخبرنا أن الهدف قيد التنفيذ، لذا إذا قمت بتمكينها تأكد
00:01:53من إعادة تشغيل Claude Code بعد ذلك لضمان تطبيق التغييرات، ولكن عندما تكتب /goal
00:01:58لن ترى أي شيء كما تعتاد، مثلاً إذا قمت بإضافة مهارة أو
00:02:02شيء من هذا القبيل حيث تحصل على استجابة مناسبة بأن الأمر يعمل، ولكن هذا جيد
00:02:08لكن قبل أن نستعرض الهدف داخل التطبيق، دعوني أشرح كيف يعمل فعلياً من وراء الكواليس
00:02:13ولكن أولاً كلمة سريعة من راعي اليوم وهو أنا، كما تعلمون داخل Chase AI Plus لدي
00:02:18دورة Claude Code الشاملة ولكنني أطلقت أيضاً دورة Codex الشاملة، لذا أصبح لديك الآن أداتان
00:02:24يمكنهما مساعدتك للانتقال من الصفر إلى مطور ذكاء اصطناعي، وهذا هو أفضل مكان لتعلم ذلك لأنني
00:02:29أفترض عدم وجود معرفة تقنية لديك ونحن نركز على حالات استخدام حقيقية، فإذا أردت الحصول على هذا
00:02:34أو إذا أردت الاستماع إلى الندوة المجانية التي سأقيمها خلال يومين، الرابط سيكون بالأسفل في التعليق المثبت
00:02:40أتمنى رؤيتكم هناك، إذاً كما قلت في المقدمة، أهداف Codex هي أساساً
00:02:46حلقة RALPH مدمجة وأكثر تطوراً، والآن ما هي حلقة RALPH قد تسألون؟ حسناً سنقوم بـ
00:02:51مراجعة سريعة لمن لا يتذكر، في جوهرها حلقة RALPH إذا كنا نستخدمها في
00:02:57شيء مثل Claude Code هي ببساطة سطر واحد من الكود، هي مجرد حلقة bash، تماماً كما ترون
00:03:03هنا، والفكرة هي أنني أقوم بتشغيل هذا السطر من الكود وما سيحدث هو أنه سيقوم بتشغيل
00:03:09Claude Code أو تشغيل Codex أو أي نظام ذكاء اصطناعي، وسيقوم بإلقاء نظرة على ملف prompt.md
00:03:16وهذا التوجيه سيقول “مهلاً، هذا ما نحاول القيام به، وهذه هي الطريقة التي أريد فعلها بها، وبالمناسبة
00:03:21هذه هي المعايير التي سنعتبرها اكتملت”، ففي هذا المثال نريد رفع التغطية في
00:03:28ملفات المصادقة، مما يعني أساساً أننا بحاجة لإنشاء المزيد من الاختبارات وسنتوقف عندما تصل التغطية
00:03:33تصل التغطية إلى 75%، وهذا هو الهدف النهائي، وهكذا تعمل العملية؛ حيث تبدأ هذه الحلقة ثم
00:03:41تلقي الحلقة نظرة على التوجيه ثم تحقن ذلك في جلسة الذكاء الاصطناعي، وتعمل الجلسة لدورة
00:03:48واحدة حيث تقرأ التوجيه وتقرأ أيضاً ملف state.md، ملف الحالة هو أساساً ملف يمكنه
00:03:56الاطلاع عليه ليقول “حسناً، إذا كان لدينا المهام 1 و 2 و 3، فما الذي أنجزناه حتى الآن وهل
00:04:03يعمل؟” لنفترض أنه في الدورات القليلة الأولى أكمل المهمة 1، ثم في الدورة التالية سيذهب
00:04:10ليلقي نظرة على ملف الحالة ويقول “مهلاً، المهمة 2 لم تكتمل، خمن ماذا سنفعل في هذه
00:04:14الجلسة؟” سنقوم بالجلسة الثانية، وربما لا ينجح الأمر في الدورة الأولى فيقول
00:04:18“مهلاً، هذا ما جربته بعد ذلك” وهكذا حتى يكمل جميع المهام، وبعد أن يقوم هذا العميل
00:04:25بتشغيل دورته يقوم بتحديث الملف وينتهي الدور وتستمر الحلقة، لذا تحصل على هذا النوع
00:04:30من الحلقة المستمرة حيث يتحقق باستمرار من ملفين مختلفين ليرى ما الذي فعلناه
00:04:35وما الذي نحتاج لفعله وما هي الحالة النهائية، وفي النهاية بمجرد وصوله إلى معايير الإكمال
00:04:41يقول “مهلاً لقد انتهينا” بشكل مستقل تماماً، هذه هي فكرة حلقات Ralph، الآن إذا أردت من حلقات Ralph
00:04:48فعل المزيد من الأشياء، فإن ذلك يتطلب هيكلة إضافية، أشياء تتعلق بالفوترة، ماذا
00:04:53تفعل؟ هل هناك أي نوع من الاستخدام الذكي للرموز؟ ليس بالضرورة، ماذا يحدث إذا توقف؟
00:04:58تحطم العميل، ضغطت Control C، كيف يعرف أنه انتهى بالفعل؟ هل هناك فعلياً
00:05:02طرف ثالث مدمج يتحقق من انتهاء كل شيء؟ ليس حقاً، لأنه في جوهره مجرد سطر
00:05:08واحد من الكود، الآن قارن ذلك بالأهداف، الأهداف من منظور عام تعمل بنفس الطريقة، نحن نخبره أن يفعل
00:05:15شيئاً ما، ولديه فكرة عن كيفية القيام بذلك ويقوم باستمرار بتحديث ملفات داخلية قائلاً
00:05:19“هذا ما فعلته، وهذا ما لا نزال نحتاج لفعله” وهو يحاول الوصول لتلك الحالة النهائية، لذا بالصورة
00:05:23العامة هو متشابه جداً، ولكن هناك بعض الاختلافات، أولاً لدينا هذان
00:05:29الملفان بصيغة markdown وهما غير مرئيين بالنسبة لك أساساً: continuation و budget limit، ما الذي
00:05:35يفعله هذان الملفان؟ حسناً، هذان يسمحان لـ Codex بالتصرف بطريقة مختلفة إذا كنت
00:05:40على وشك الاصطدام بحدود الاستخدام، وهو أمر مهم، لذا هناك فعلياً نوع من النهاية
00:05:46السلسة لكيفية تعامل نظامك مع مهمة في حلقة أهداف مقابل حلقة ralph، في حلقة ralph
00:05:52تصل لميزانيتك فتنتهي، أما في Codex فليس بالضرورة، فهو سيبتكر طريقة جيدة لـ
00:05:57إيصالك لنقطة يمكنك العمل عليها لاحقاً، والطريقة التي يحدث بها ذلك في الواقع هي أن Codex يدير
00:06:03دورته في حلقة الأهداف أو حلقة ralph مهما أردت تسميتها، وعندما يصل إلى نهاية
00:06:08الدورة يكون أمامه أربعة مسارات يمكنه اتباعها: 1- إذا كان لا يزال لديه عمل والميزانية جيدة
00:06:13“مهلاً، سنستمر فقط في التقدم”، 2- إذا اقتربنا من حد الرموز، ما سيفعله هو
00:06:19أنه سيحقن ملف budget limit.md وسيقوم أساساً بإنهاء الدورة بسلاسة
00:06:25ويعطيك تقريراً نهائياً عما تم إنجازه وما تحتاج لفعله مستقبلاً إذا قمت بتحديث
00:06:29حدودك، 3- إذا انتهينا من المشروع فسيقوم بإجراء نداء لأداة تحديث الهدف، حيث
00:06:34يذهب ويغير حالته، وسيتأكد من مراجعة جميع النتائج وإذا
00:06:39كان كل شيء جيداً، سيعلن اكتمال الهدف، وأخيراً لدينا طرق لإيقاف الهدف مؤقتاً
00:06:45أو تعديل الهدف أو التعامل مع حالات التعطل، لذا في حال حدوث خطأ ما أثناء قيامنا بحلقتنا
00:06:49فالأمر ليس مثل حلقة ralph التقليدية حيث نكون عالقين تماماً، بل هو أكثر
00:06:54تطوراً من حلقة ralph وشبيه جداً بالصورة الكبيرة، ولا يتعين علينا القيام بأي
00:06:59عمليات تنسيق إضافية، هذا الشيء كله يجب أن يبدو مألوفاً لك جداً إذا سبق وعملت مع
00:07:05شيء مثل GSD أو GSD Superpowers، كل هذه الأدوات هي طبقات تنسيق تعمل فوق Claude Code لـ
00:07:11القيام أساساً بما نفعله بأمر واحد مائل داخل Codex باستخدام الأهداف، وبما أنه
00:07:18حرفياً مجرد أمر مائل واحد، فهذا يجعله سهل التنفيذ للغاية، لا تحتاج لمشاهدة
00:07:24عرض مدته 40 دقيقة عن جميع تعقيدات GSD، أنت فقط تكتب /goal وسينطلق Codex
00:07:30وينجز المهمة، ومع وضع ذلك في الاعتبار دعونا نضعه تحت الاختبار فعلياً، أولاً
00:07:35سنضعه في وضع التخطيط لأنه يمكننا الانتقال من وضع التخطيط إلى الأهداف بسهولة بالغة
00:07:39وسنجعله ينشئ لنا أساساً لعبة بقاء أركيد من الأعلى إلى الأسفل، وسنجعله
00:07:44ينشئ جميع أصوله الخاصة، الشيء الرائع في Codex مقارنة بشيء مثل
00:07:49Claude Code مثلاً هو أنه منتج من OpenAI، لذا لدينا وصول إلى نماذج صور GPT
00:07:56أيضاً، لذا سينشئ جميع أصوله لهذه اللعبة، أريد طائرة بدون طيار للاعب وثلاثة
00:08:01أعداء، مخلوق زعيم، نواة طاقة، لغم خطير، خلفية ممزقة، شارات واجهة مستخدم
00:08:07وأصول جمالية، لذا سأجعله ينشئ قدراً كبيراً من الأشياء، حسناً التوجيه متطور نسبياً
00:08:15لأن هذا قد يستمر لفترة طويلة جداً، ربما كان علي إظهار لقطة الشاشة لكم بالفعل
00:08:18لذاك الشخص الذي يقول “سأجعله يعمل لمدة 50 ساعة متواصلة”، من يدري ما إذا كانت 50 ساعة
00:08:23متواصلة هي حقاً أفضل طريقة لفعل ذلك، لكن الفكرة هي أن لدينا فكرة غامضة فنذهب لوضع التخطيط
00:08:31لنحصل على شيء محكم جداً، والأهم من ذلك مع شيء مثل هذا
00:08:36هو أنك يجب أن تكون محدداً للغاية بشأن النتيجة النهائية التي يجب أن تكون عليها، لأننا إذا لم نملك
00:08:43نتيجة نهائية محددة جداً نسعى إليها، مجموعة من الأشياء القابلة للقياس التي يجب أن يحققها
00:08:50من أجل إكمال الحلقة، فستحصل على نتيجة متوسطة نوعاً ما، قد تكون غير مكتملة، لذا
00:08:55أقترح بشدة أن تمر عبر وضع التخطيط وتأخذ الوقت الكافي لتفصيل
00:09:02الخطة بدلاً من قول “/goal اصنع لي منتج SaaS يربح مليار دولار”، وهذه هي
00:09:07الخطة للعبتنا، وعندما يتعلق الأمر بالتحقق فهذا هو ما سينظر
00:09:12إليه، هذا ما سيختبره فعلياً قبل أن يقول إنه اكتمل، فمن الواضح أنه يحتاج إلى
00:09:17تشغيل npm run build وإصلاح جميع الأخطاء، وبدء خادم التطوير وتقديم الرابط المحلي، وإضافة
00:09:24وتشغيل نص برمجى آلي للتحقق بواسطة Playwright يفتح التطبيق ويؤكد تحميل كل شيء
00:09:29ويتحقق من أن مساحة الرسم ليست فارغة، ويحاكي حركات لوحة المفاتيح ويحاكي أحداث الجمع ويفرض الضرر
00:09:34ويؤكد تغييرات الصحة وحالة فوز الزعيم وواجهات المستخدم وغيرها الكثير، لذا هذا ما تريد حقاً
00:09:39الاطلاع عليه، فإذا نظرت للتحقق وقلت “مهلاً، إذا اكتمل كل
00:09:44ذلك سأكون سعيداً”، حسناً فأنت مستعد للمضي قدماً، والآن عندما يقول تنفيذ الخطة
00:09:49ستحتاج للذهاب إلى... سأخبرك ماذا تفعل، يمكنك كتابة /goal استخدم الهدف
00:09:54لتنفيذ هذه الخطة وسنرسل الأمر، وهنا في الأعلى ماذا ترون؟ لديكم هذه
00:10:02الشارة الصغيرة التي تقول “هدف”، لذا أعلم الآن أننا نقوم بالهدف ويقول ذلك هنا أيضاً
00:10:09وكما أخبرتكم سابقاً عندما تكتب /goal لن تحصل على أي أوامر ولكنها
00:10:12تعمل، أعتقد أنه مجرد خطأ في واجهة المستخدم لكونها ميزة تجريبية، تقول إنها
00:10:17لا تزال في وضع التخطيط، لذا سنلغي ذلك الهدف، “استخدم الهدف لتنفيذ هذه الخطة”، لا تزال خشنة بعض الشيء
00:10:28حول الحواف ولكن لنرَ ما ستفعله لنا، الفكرة هي أنني الآن غير مضطر للتدخل تماماً
00:10:34فستقوم بتنفيذ حلقة ralph الصغيرة، شيء الهدف الخاص بها، وفي النهاية
00:10:39سيكون لدينا منتج نهائي، لقد استغرق العمل حوالي 12 دقيقة الآن ويمكنكم رؤية أنه
00:10:43بالفعل في عملية إنشاء جميع الأصول المختلفة باستخدام نموذج توليد الصور الثاني
00:10:49وهو أمر رائع جداً، ومرة أخرى الشيء الجميل الآخر هو عندما تستخدم تطبيق سطح المكتب مقابل
00:10:54مجرد العمل في واجهة الأوامر الخام، كل هذا يُعرض لك بشكل مباشر وهو أمر لطيف
00:11:00لقد أعجبني شخصياً تطبيق سطح المكتب لـ Codex جداً، ولا يعني هذا أنني لا أزال أحب Claude
00:11:06Code، أعتقد أنني أستخدم هاتين الأداتين بالتبادل، يمكنك مشاهدة الفيديو السابق لتعرف
00:11:11رأيي الكامل في ذلك حيث أعتقد أن فكرة حاجتنا للاختيار بين هاتين الأداتين غبية نوعاً ما
00:11:15لماذا لا نستخدم كليهما؟ وغالباً نستخدمهما معاً بالتزامن، ولكن مع Claude Code أنا
00:11:20أستخدم واجهة الأوامر الصرفة، أما مع Codex فقد استمتعت حقاً بتطبيق سطح المكتب
00:11:26وقد يكون جزء من ذلك هو أنه تغيير جميل في الوتيرة أحياناً مقابل البقاء دائماً في
00:11:32واجهة الأوامر طوال الوقت، لذا حتى الآن أعجبني حقاً، وبعد حوالي 30 دقيقة قالت إنها انتهت وفي الواقع
00:11:38أنهت الأمر أسرع مما توقعت، لذا دعونا نرى كيف كان أداؤها في المحاولة الأولى وبما
00:11:44أنها فعلت ذلك بسرعة كبيرة سأطلب منها على الأرجح القيام ببعض الأشياء في النهاية، تقول إنها نفذت
00:11:49Rift Salvage، خادم التطوير المحلي يعمل هنا، إنها لعبة مساحة رسم مع تحكم بلوحة المفاتيح واللمس، تظهر فيها
00:11:56الأعداء والألغام والنتائج والدروع والزعيم ومراحل الفوز والخسارة والإيقاف وإعادة التشغيل، 11 أصل صور نقطية
00:12:03مع قطع الشفافية، ومحقق Playwright آلي، ثم ترينا جميع الأشياء التي بنتها
00:12:10وهو أمر رائع حقاً، لذا دعونا نرى ما إذا كانت تعمل وما يمكننا إضافته لندفعها قليلاً
00:12:17أكثر، أوه دعونا نفعل ذلك في المتصفح الحقيقي، حسناً لدي شاشة تحميل صغيرة
00:12:27والتباين منخفض قليلاً، قد يكون من الصعب رؤيته ولكن
00:12:32لدي سفينتي الفضائية الصغيرة، هذا لغم على ما أعتقد، ومن المفترض أن ألتقط هذه الأشياء
00:12:39بينما تظهر الأعداء التي تطاردني، كما ترون هي تعمل وتبدو رائعة نوعاً ما، أعتقد أنه كان بإمكاننا
00:12:49تحسين الرسومات قليلاً ولكن من الرائع أن كل شيء هنا تم إنشاؤه
00:12:56كصور فريدة، أعتقد ما يمكننا فعله هو إضافة... حسناً أولاً أريد أن أرى كيف
00:13:00تبدو معركة الزعيم إذا تمكنا من تسريع ذلك وأيضاً إضافة نوع من
00:13:04نظام الرماية سواء بالليزر أو شيء رائع من هذا القبيل، لذا دعونا نفعل
00:13:11ذلك، لنجعلها تفعل ذلك قبل أن نجلس هنا لفترة أطول، لذا سأضعها في وضع التخطيط
00:13:15ونرى ما إذا كان بإمكاننا جعلها تعمل بجهد أكبر، حسناً أعتقد أنها كانت محاولة أولى جيدة جداً
00:13:19كل شيء يعمل ولكن أود جعلها أكثر تعقيداً قليلاً، هل يمكننا إضافة نوع من
00:13:24نظام القتال سواء كان ليزراً يطلق النار على أعداء مختلفين وهم
00:13:31يردون بإطلاق النار علينا؟ هل يمكننا أيضاً جعل مرحلة الزعيم تأتي بشكل أسرع أو تضمين نوع
00:13:37من الأزرار التي يمكنني الضغط عليها لبدء مرحلة الزعيم فوراً؟ هل يمكننا أيضاً تغيير التباين قليلاً
00:13:42لأن كل شيء يندمج حالياً في الخلفية؟ وإذا كان لديك أي أفكار أخرى
00:13:49لجعل هذا أكثر تعقيداً ودفعك لحدود قدراتك، أرني تلك الأفكار
00:13:53هذه هي الخطة التي اقترحتها، والآن هناك شيء واحد يجب معرفته عند استخدام نظام الأهداف
00:13:58هو أن كل تشغيل للهدف مرتبط بالخيط أو الجلسة التي تستخدمها في ذلك
00:14:07الوقت، لقد كنا في نفس الدردشة مما يعني أننا في نفس خيط الهدف، إذا أردت القيام
00:14:12بالأهداف مرة أخرى، أريد القيام بدورة أهداف ثانية لنفس المشروع، يمكننا فعل ذلك ولكن يجب علينا فعله في
00:14:18خيط ثانٍ أو دردشة ثانية مثل فتح واجهة أوامر أخرى، لذا كل ما سأفعله هو نسخ
00:14:24هذه الخطة، وسأفتح دردشة أخرى وسنقوم بكتابة /goal وسنقوم
00:14:33بلصق هذا هناك، بعد 15 دقيقة أكملنا دورة الأهداف الثانية، لذا فقد نفذت ترقية
00:14:40القتال، لذا دعونا نرى كيف تبدو هذه اللعبة الآن، هذه شاشة التحميل مرة أخرى، مشابهة جداً
00:14:44لما رأيناه في المرة الأولى باستثناء أنها أضافت بعض الأدوات البرمجية في الأعلى هنا، لدينا الهدف
00:14:50المتتابع وكذلك إشارة الزعيم الآن، لذا إذا بدأناها فوراً فأنا أطلق
00:14:56النار من سلاحي، والأعداء قادرون على الرد بإطلاق النار ولديكم نوع من نقاط الصحة، يمكنني أيضاً
00:15:01الضغط على إشارة الزعيم، ها هو الزعيم، يبدو رائعاً حقاً في الواقع، أعتقد أن أروع شيء
00:15:09في هذه اللعبة وما فعلته هو مجرد كل الأصول الفريدة، حقيقة أن كل شيء
00:15:13هو أصل أصلي وأنها فعلت كل ذلك باستخدام نموذج توليد الصور الثاني الذي أعتقد أنه كان
00:15:19رائعاً جداً، وأعلم بوضوح أن هذا استغرق حوالي 45 دقيقة إجمالاً بين الدورتين ورأينا
00:15:24بعض الأشخاص يقومون بدورات لمدة ثلاثة أيام حسب لقطات شاشاتهم، ولكن أعتقد أن أفضل جزء
00:15:30في هذا هو مدى سهولة تنفيذ تلك الأهداف، كما تعلمون أنتم تعطونها هدفاً
00:15:36وستنطلق بجنون بافتراض أنكم حددتم المسار، هل فزنا؟ لا أدري إن كنا
00:15:43متنا أم لا، ولكن كما كنت أقول الشيء الرائع في هذا وفي الأهداف بشكل عام هو
00:15:48فكرة أنه إذا كان لديك هدف شمالي واضح ومعايير واضحة لما يبدو عليه النجاح
00:15:54يمكنك الحصول على الكثير من هذا وهذا يمكنه الاستمرار للأبد، فبدلاً من الاضطرار لإعداد
00:15:59حلقة ralph الخاصة بك وهيكلتك الخاصة أو استخدام شيء خارجي كطبقة
00:16:05تنسيق مثل GSD أو Superpowers، فهو مدمج لك نوعاً ما ومثلما فعلنا هنا
00:16:10يمكنك إضافة الكثير من الأشياء الأنيقة التي يصعب تنفيذها ولكن يمكنك ذلك داخل Claude Code، مثلاً
00:16:15لو استخدمنا Claude Code لهذا لكان بإمكاننا بالتأكيد فعل ذلك، كنا سنضطر فقط لـ
00:16:18تنفيذ شيء مثل واجهة أوامر Higgsfield أو Higgsfield MCP للقيام بكل ذلك التوليد للصور
00:16:24لنا بدلاً من أن يكون نظاماً واحداً متكاملاً وشاملاً، لذا أتمنى أن تكونوا قد تمكنتم من
00:16:31الحصول على فائدة من هذا الفيديو وأقترح بشدة أن تجربوا Codex يا رفاق، لقد استمتعت حقاً بـ
00:16:35تطبيق سطح المكتب كما كنت أتحدث من قبل، أعتقد أن هذا الشيء الرائع رائع حقاً ومرة أخرى
00:16:40كان بإمكاننا فعل ذلك بالتزامن مع Claude Code أيضاً، كان بإمكاننا جعل الخطة تُنشأ في
00:16:44Claude Code ثم نلقيها في Codex للأهداف، ونجعل Claude Code يلقي نظرة على العمل الذي
00:16:49قام به ونوعاً ما نحصل على هذا التفاعل المتبادل، وهو ما أعتقد أنه المكان الذي تحصل فيه على أكبر قيمة، الأمر يشبه
00:16:53أن يكون المجموع أكبر من مجرد أجزائه، وكما هو الحال دائماً أخبروني
00:17:02برأيكم، تأكدوا من زيارة Chase AI Plus، هناك رابط لذلك بالأسفل في التعليق
00:17:07المثبت، سأقيم أيضاً ندوة عبر الإنترنت في غضون أيام قليلة وسيكون هناك رابط لها أيضاً، لذا آمل رؤيتكم هناك
00:17:12وبخلاف ذلك، أراكم لاحقاً

Key Takeaway

تتيح ميزة الأهداف التجريبية في Codex تنفيذ حلقات برمجة مستقلة ومتطورة تتكامل مع توليد الصور واختبارات الأداء الآلية لإنشاء تطبيقات معقدة خلال أقل من ساعة وبأمر واحد فقط.

Highlights

  • تسمح ميزة الأهداف (Goals) الجديدة في نظام Codex بتنفيذ مهام البرمجة المستقلة طويلة الأمد دون الحاجة إلى طبقات تنسيق خارجية مثل GSD.

  • يتطلب تفعيل ميزة الأهداف التجريبية إضافة سطر البرمجة features و goals = true داخل ملف config.toml في إعدادات التطبيق.

  • يعالج Codex تعارضات حدود الميزانية وعدد الرموز (Tokens) عبر ملفات budget_limit.md لضمان إنهاء الدورات البرمجية بشكل سلس وتقديم تقارير نهائية.

  • يوفر Codex وصولاً مباشراً لنماذج توليد الصور GPT-4o لإنشاء أصول الألعاب الفريدة مثل الطائرات بدون طيار والأعداء والخلفيات تلقائياً.

  • نجح نظام Codex في بناء لعبة Rift Salvage كاملة الميزات مع نظام قتال واختبارات Playwright آلية خلال 45 دقيقة من العمل المستقل.

  • تتفوق ميزة الأهداف على حلقات RALPH التقليدية بقدرتها على إيقاف المهام مؤقتاً وتعديل الأهداف والتعامل مع حالات تعطل العميل بشكل متطور.

Timeline

تفعيل وإعداد ميزة الأهداف التجريبية

  • تعمل ميزة الأهداف كحلقة RALPH متكاملة قادرة على العمل لساعات دون تدخل بشري.
  • يتطلب التفعيل تعديل سطر الميزات في ملف التكوين config.toml أو توجيه Codex برمجياً للقيام بذلك.
  • يتم تشغيل المهام المستقلة عبر إدخال الأمر /goal متبوعاً بالمهمة المطلوبة في تطبيق سطح المكتب أو واجهة الأوامر.

تعتبر ميزة الأهداف الحل الأسهل حالياً لتنفيذ مهام البرمجة الطويلة لأنها لا تتطلب أدوات تنسيق إضافية. يظهر تفعيل الميزة شارة صغيرة في واجهة المستخدم تدل على أن الهدف قيد التنفيذ. يجب إعادة تشغيل تطبيق Claude Code أو Codex بعد تعديل ملف التكوين لضمان تطبيق التغييرات البرمجية بشكل صحيح.

آلية عمل حلقة الأهداف مقابل حلقة RALPH

  • تعتمد حلقة RALPH التقليدية على سطر برمج واحد في بيئة bash للتحقق من ملفات التوجيه والحالة.
  • يستخدم Codex ملفات markdown غير مرئية لإدارة الميزانية واستمرارية العمل عند الاقتراب من حدود الاستخدام.
  • يختار النظام بين أربعة مسارات عند نهاية كل دورة تشمل الاستمرار أو الإنهاء السلس أو إعلان اكتمال الهدف.

تفتقر حلقات RALPH البسيطة إلى القدرة على التعامل مع حالات تعطل العميل أو الاستخدام الذكي للرموز والفوترة. يعالج Codex هذا القصور عبر نظام داخلي يراقب ميزانية الحوسبة ويقوم بحقن ملفات تحذيرية لضمان عدم ضياع العمل المنجز. يحل هذا النظام المدمج محل الأدوات الخارجية المعقدة التي كانت تعمل كطبقات فوق Claude Code لتنفيذ المهام المتعددة الخطوات.

بناء مشروع لعبة فيديو ثنائية الأبعاد بشكل مستقل

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

بدأ المشروع بإنشاء لعبة Rift Salvage من خلال وضع التخطيط لتفصيل الأهداف قبل بدء حلقة العمل. قام Codex بإنشاء طائرة اللاعب وثلاثة أنواع من الأعداء وزعيم نهائي مع خلفيات شفافة تماماً. استغرق بناء النسخة الأولى حوالي 12 دقيقة، شملت بناء الكود وإصلاح أخطاء npm وتأكيد تحميل مساحة الرسم في المتصفح.

تطوير نظام القتال وتحسين الأداء في دورة ثانية

  • ترتبط كل دورة أهداف بخيط محادثة مستقل لضمان عدم تداخل المهام.
  • أضافت الدورة الثانية نظام رماية بالليزر للأعداء ونقاط صحة وشاشة تحميل متطورة.
  • يوفر دمج Claude Code مع Codex قوة إنتاجية أكبر من استخدام أداة واحدة بشكل منفرد.

تطلبت إضافة ميزات معقدة مثل نظام القتال المتطور والتباين البصري العالي فتح خيط محادثة جديد وتمرير خطة العمل المحدثة. نجح النظام في إضافة زر استدعاء الزعيم الفوري وتحسين استجابة لوحة المفاتيح واللمس خلال 15 دقيقة إضافية. تظهر النتائج أن استخدام Codex في تطبيق سطح المكتب يوفر واجهة بصرية لمتابعة تقدم المهام المستقلة التي تستمر لفترات طويلة.

Community Posts

View all posts