OpenAI
هذه الصفحة مترجمة باستخدام الترجمة الآلية. تفضل بالاطّلاع على المقال الأصلي بالإنجليزية.

استخدام Daybreak في Codex CLI

استخدم هذا الدليل لتفعيل Daybreak في واجهة سطر الأوامر Codex CLI، وتهيئته لسير العمل المؤتمت والتكامل مع حزم تطوير البرمجيات (SDK)، واستكشاف مشكلات الوصول أو رفض الطلبات وحلها. 

تم التحديث: 2 days ago

للاستفادة من هذه التغييرات، يجب الترقية إلى الإصدار 0.163.0 أو أحدث من Codex CLI. ترقيات واجهة سطر الأوامر اختيارية: تظل النسخ المثبّتة تعمل بالطريقة الحالية إلى أن تحدّثها.

  • إذا كانت عمليات الأتمتة لديك تثبّت @openai/codex@latest، فقد يُطبَّق هذا التغيير عند التثبيت أو التحديث التالي. إذا ثبّتّ Codex CLI على مستوى النظام باستخدام npm، فشغّل npm install -g @openai/codex@latest، ثم شغّل codex --version للتأكد من الترقية.

  • لتأجيل التغيير، ثبّت الإصدار المستخدم عند @openai/codex@0.162.0. التثبيت لمرة واحدة باستخدام @latest لا يؤدي إلى تحديث النسخة تلقائيًا. تظل مسارات العمل المقيّدة بإصدارات أقدم تعمل بالطريقة السابقة.

  • لتكاملات TypeScript، حدّث @openai/codex-sdk وبيئة التشغيل المضمّنة معها. لتكاملات Python، حدّث openai-codex وبيئة تشغيل Codex الخاصة بها. قد لا يكفي تحديث واجهة سطر الأوامر المثبّتة على مستوى النظام لتحديث بيئة تشغيل حزمة SDK. إذا حدّدت مسارًا مخصّصًا لملف تنفيذي، فحدّث ذلك الملف أيضًا.

ستظل معرّفات النماذج التي أُعدّت يدويًا ولا تظهر في الكتالوج، رغم توفّره، تُعامَل تلقائيًا بالطريقة السابقة في واجهة سطر الأوامر وتطبيق Codex لسطح المكتب، حتى مع تفعيل Daybreak. عدم ظهورها في الكتالوج لا يمنع بحد ذاته نجاح الطلب. 

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

تفعيل Daybreak في واجهة سطر الأوامر التفاعلية

  1. شغّل Codex باستخدام طريقة المصادقة المعتادة.

  2. لتفعيل Daybreak، أدخِل /daybreak.

  3. سيعرض Codex الرسالة تم تفعيل Daybreak. ينطبق على الجولات الجديدة.

  4. سيُطبَّق ذلك على المحادثة النشطة ويُحفظ بوصفه الخيار الافتراضي للجلسات الجديدة.

  5. لإيقاف Daybreak، شغّل الأمر نفسه (/daybreak) مرة أخرى.

تفعيل Daybreak في واجهة سطر الأوامر غير التفاعلية

تعمل مسارات العمل غير التفاعلية من دون واجهة مستخدم تفاعلية، عادةً عبر codex exec في البرامج النصية أو المهام المجدولة أو بيئات التكامل المستمر (CI). لا تظهر هنا رسالة تفاعلية بعنوان «تفعيل Daybreak» ‏(/daybreak). بدلًا من ذلك، يمكنك:

  1. تفعيل Daybreak لعملية تشغيل محدّدة في واجهة سطر الأوامر بإضافة -c daybreak=true إلى كل أمر تريد تشغيله مع تقليل حالات الرفض. على سبيل المثال، يمكنك إدخال:

codex exec -c daybreak=true "Review the changes in this repository."

  1. أبقِ المطالبة الحالية وخيارات الأمر الأخرى كما هي. أضف هذا الإعداد إلى كل استدعاء تريد استخدام Daybreak فيه، بما في ذلك الأوامر الواردة في البرامج النصية والمهام المجدولة وإعدادات التكامل المستمر.

  2. جعل Daybreak الخيار الافتراضي للجلسات وعمليات التشغيل الجديدة في واجهة سطر الأوامر بإضافة daybreak=true إلى ملف الإعدادات الذي يحمّله Codex.

  3. ملف إعدادات المستخدم الافتراضي هو ~/.codex/config.toml. إذا كانت الأتمتة لديك تضبط المتغيّر CODEX_HOME، فاستخدم $CODEX_HOME/config.toml بدلًا من ذلك. ضع الإعداد في المستوى الأعلى من الملف، خارج الأقسام مثل [features].

  4. أجرِ التغيير في البيئة التي تعمل فيها الأتمتة فعليًا. تحديث إعدادات حاسوبك المحمول لا يحدّث إعدادات مشغّل التكامل المستمر أو الجهاز البعيد.

  5. ينطبق الإعداد أيضًا على الجلسات التفاعلية الجديدة التي تستخدم الإعدادات نفسها. تحتفظ الجلسات المستأنفة والمتفرّعة بخيار Daybreak المحفوظ فيها؛ ولا يحلّ الإعداد الافتراضي الجديد محلّه.

  6. لاحظ أن الإعداد المحدّد في سطر الأوامر يتجاوز الإعدادات المحفوظة لذلك الاستدعاء. لذلك يمكنك الإبقاء على daybreak = true في إعداداتك واستخدام -c daybreak=false لعملية تشغيل بعينها.

تفعيل Daybreak مع مزوّد استدلال عبر خادم وكيل

يمكنك استخدام Daybreak في Codex CLI مع توجيه طلبات الاستدلال عبر خادمك الوكيل الحالي. يُجري Codex استعلامًا منفصلًا في كتالوج النماذج لمعرفة النماذج التي تدعم Daybreak لمشروعك.

قبل البدء، تأكّد من أن لديك مزوّدًا يعمل عبر خادم وكيل في Codex CLI، ومفتاح OpenAI API من مشروع يتيح الوصول إلى Daybreak والنموذج الذي تريد استخدامه، بالإضافة إلى الإصدار v0.167.0 من Codex CLI.وثائق OpenAI حول إتاحة الوصول إلى Daybreak للمشاريع

  1. حدّث إعدادات المزوّد الذي يعمل عبر خادمك الوكيل بفتح ~/.codex/config.toml والعثور على القسم [model_providers.<id>] الخاص بخادمك الوكيل. أضف آخر سطرين من المثال أدناه إلى ذلك القسم. أبقِ معرّف المزوّد وعنوان URL للخادم الوكيل وإعدادات المصادقة الحالية كما هي.


    [model_providers.proxy]

    name = "Proxied with Cyber"

    base_url = "https://<your-proxy>/v1"

    model_catalog_url = "<https://chatgpt.com/backend-api/codex/models>"

    capabilities.cyber_access_programs = true

    إذا كانت إعداداتك تتضمّن بالفعل قسمًا باسم [model_providers.<id>.capabilities]، فضع cyber_access_programs = true فيه، وأبقِ model_catalog_url في قسم المزوّد الرئيسي.مرجع إعدادات Codex

  2. اضبط المصادقة لاستعلام الكتالوج باختيار الخيار الذي يتوافق مع بيانات الاعتماد التي تستخدمها واجهة سطر الأوامر لديك.

    1. إذا كان Codex يستخدم مفتاح OpenAI API، فأبقِ عنوان URL لكتالوج OpenAI الوارد في الخطوة 1 كما هو. شغّل Codex باستخدام المفتاح من مشروعك المفعّل فيه Daybreak حتى يتمكّن من المصادقة مباشرةً لدى الكتالوج.

    2. إذا كان Codex يستخدم بيانات اعتماد خادمك الوكيل، فاضبط model_catalog_url على عنوان URL الكامل لمسار الكتالوج على خادمك الوكيل. اضبط ذلك المسار لتنفيذ ما يلي:

      1. مصادقة طلب واجهة سطر الأوامر باستخدام بيانات اعتماد الخادم الوكيل المعتادة.

      2. تمرير الطلب إلى https://chatgpt.com/backend-api/codex/models باستخدام مفتاح OpenAI API من مشروعك المفعّل فيه Daybreak.

      3. إعادة استجابة الكتالوج إلى Codex.

  3. فعّل Daybreak ببدء جلسة جديدة في Codex CLI باستخدام المزوّد الذي يعمل عبر خادمك الوكيل. اختر نموذجًا مؤهلًا لاستخدام Daybreak، ثم أدخل /daybreak لتفعيله.

    1. إذا لم يكن Daybreak متاحًا، فتحقّق أولًا من استعلام الكتالوج. قد ينجح الاستدلال حتى لو فشل طلب الكتالوج. تحقّق من أن الطلب يصل إلى OpenAI باستخدام مفتاح من المشروع المقصود، وأن المشروع يتيح الوصول إلى كلٍّ من Daybreak والنموذج المحدّد.

تفعيل Daybreak عبر حزمة SDK للغة TypeScript

مرّر إعداد Daybreak عبر إعدادات العميل:

import { Codex } from "@openai/codex-sdk";

const codex = new Codex({

  config: { daybreak: true },

});

const thread = codex.startThread();

const result = await thread.run("Review the changes in this repository.");

console.log(result.finalResponse);

استخدم daybreak: false لإيقاف Daybreak والعودة إلى آلية الرفض المعتادة. احتفظ بإعدادات المصادقة الحالية.

تفعيل Daybreak عبر خادم التطبيقات أو حزمة SDK للغة Python

1. اقرأ قيم availableAccessPrograms.cyber الخاصة بالنموذج المحدّد من model/list، ثم اضبط cyberAccessProgram ضمن معاملات turn/start.

أ. لنموذج من السلسلة الرئيسية وحساب يملك صلاحية الوصول إلى Daybreak Blue:

{ "cyberAccessProgram": "daybreakBlue" }

ب. لنموذج أمن سيبراني وحساب يملك صلاحية الوصول إلى Daybreak Red:

{ "cyberAccessProgram": "daybreakRed" }

ج. لاستخدام آلية الرفض المعتادة:

{ "cyberAccessProgram": "standard" }

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

3. يمكن للعميل منخفض المستوى CodexClient في حزمة SDK للغة Python تمرير المعامل نفسه:

from openai_codex.client import CodexClient

with CodexClient() as client:

client.initialize()

thread = client.thread_start()

turn = client.turn_start(

thread.thread.id,

"Review the changes in this repository.",

params={"cyberAccessProgram": "daybreakBlue"},

)

client.wait_for_turn_completed(turn.turn.id)

4. يفترض هذا المثال توفّر Daybreak Blue للنموذج المحدّد. يفعّل عميل Python إمكانية واجهة API التجريبية افتراضيًا. لا يكفي التفضيل المحفوظ للمحادثة وحده لاختيار برنامج لجولة على خادم التطبيقات.

إذا أضفت كتالوج نماذج محليًا قبل هذه التغييرات

إذا لم تكن النماذج التي تتوقّعها تظهر سابقًا عند تسجيل الدخول باستخدام مفتاح API، فربما أضفت كتالوجًا محليًا باستخدام model_catalog_json في config.toml. يستخدم Codex ذلك الملف المحلي بدلًا من الكتالوج التلقائي، لذا قد تصبح قائمة النماذج لديك قديمة. بمجرد توفّر دعم الكتالوج التلقائي في بيئتك، اتبع هذه الخطوات للعودة إلى استخدامه:

  1. افتح config.toml. في Codex CLI، افتح ~/.codex/config.toml (أو $CODEX_HOME/config.toml إذا ضبطت CODEX_HOME). في تطبيق Codex لسطح المكتب، انتقل إلى الإعدادات > التكوين، ثم اختر فتح config.toml.

  2. عطّل الكتالوج المحلي مؤقتًا. أضِف # في بداية سطر model_catalog_json، واحفظ الملف، ثم أعِد تشغيل Codex باستخدام الحساب أو مفتاح API نفسه. اترك أي عنوان URL لكتالوج تشترطه مؤسستك كما هو.

  3. تحقّق من صلاحية وصولك. في واجهة سطر الأوامر، شغّل codex، ثم أدخِل /daybreak داخل الجلسة. في تطبيق سطح المكتب، افتح أداة اختيار النماذج المتقدمة وفعّل Daybreak. إذا كانت لديك صلاحية الوصول إلى Daybreak Red، فتأكّد من ظهور نموذج الأمن السيبراني المتوقّع ومن إمكانية إرسال طلب باستخدامه.

  4. احتفظ بالإعدادات التي تعمل بنجاح. إذا نجح التحقّق، فاحذف السطر الذي عطّلته واحفظ الملف. إذا فشل، فأزِل #، واحفظ الملف، ثم أعِد تشغيل Codex لاستعادة إعداداتك السابقة.

استكشاف حالات الرفض في واجهة سطر الأوامر وإصلاحها

  • شغّل مهمة تمثّل عملك المعتاد باستخدام بيانات الاعتماد والنموذج والإعدادات نفسها التي تستخدمها عمليات الأتمتة لديك.

  • إذا لم يكن Daybreak متاحًا، فتأكّد مما يلي:

    • أن حسابك أو مشروع API لديك يملك صلاحية الوصول إلى Daybreak.

    • أن النموذج المحدّد يدعم Daybreak.

  • في واجهة سطر الأوامر التفاعلية، تأكّد من تفعيل Daybreak. قد تعرض الواجهة رسالة رفض عندما يكون Daybreak متاحًا لكنه غير مفعّل: Daybreak غير مفعّل حاليًا. إذا كنت تنفّذ عملًا أمنيًا مصرّحًا به، ففعّله وأعِد محاولة إرسال طلبك.

    • تسأل الرسالة هل تريد تفعيل Daybreak لطلبك التالي؟ وتعرض الخيارين تفعيل Daybreak أو ليس الآن.

    • اختر تفعيل Daybreak لتفعيله لطلبك التالي، ثم أعِد محاولة إرسال الطلب. لاحظ أن الطلب المرفوض لا يُعاد تلقائيًا؛ بل عليك إرساله مرة أخرى. قد تظل بعض الطلبات عرضة للرفض حتى مع تفعيل Daybreak.

    • اختر ليس الآن لإبقاء Daybreak غير مفعّل.

  • في عمليات الأتمتة، تأكّد من تمرير daybreak=true إلى عملية Codex الفعلية، ومن أن إعدادًا آخر في سطر الأوامر لا يتجاوزه.

استخدام Daybreak مع Codex Security CLI

تستخدم أداة Codex Security CLI الحزمة @openai/codex-security لإجراء الفحوصات الأمنية. وخيارات برامج الوصول فيها منفصلة عن أمثلة Codex CLI العامة الواردة أعلاه.

للمصادقة باستخدام مفتاح API، استخدم مفتاحًا من مشروع API مفعّل فيه Daybreak، وحدّد صراحةً البرنامج الذي حصل المشروع على الموافقة لاستخدامه. بالنسبة إلى Daybreak Blue:


npx @openai/codex-security scan . --auth api-key --cyber-access-program daybreak_blue

استخدم daybreak_red فقط إذا حصل مشروعك على الموافقة لاستخدام Daybreak Red، أو standard لاستخدام تدابير الحماية القياسية. لا يمنحك اختيار برنامج حق الوصول إليه أو إلى نماذج إضافية.

راجع مرجع Codex Security CLI للاطّلاع على خيارات المصادقة والفحص.

استخدام Daybreak مع Codex Security SDK

تُجري حزمة Codex Security SDK للغة TypeScript ‏(@openai/codex-security) فحوصات أمنية من داخل تطبيق أو أداة للمطوّرين. وهي منفصلة عن حزمة Codex SDK العامة الموضّحة أعلاه.

استخدم بيانات اعتماد حسابك أو مشروع API الذي حصل على الموافقة. تتطلّب بعض طلبات الأمن السيبراني والنتائج المحمية الانضمام إلى برنامج الوصول الموثوق للأمن السيبراني (Trusted Access for Cyber). لا يمنحك تثبيت حزمة SDK أو اختيار نموذج حق الوصول إلى Daybreak.

اتّبع دليل Codex Security SDK للاطّلاع على طرق المصادقة المدعومة والإعدادات وأمثلة الفحص.

هل كانت هذه المقالة مفيدة؟