Codex CLI وGit worktree: مسار عملي لعزل مهام البرمجة
دليل عملي لاستخدام Git worktree في Codex CLI 0.154.0 لعزل مهام البرمجة، وتشغيل جلسات متوازية، ومراجعة التغييرات ونقلها بأمان إلى الفرع الرئيسي.

يتيح Codex CLI الآن إسناد مهمة برمجية إلى نسخة Git مُدارة ومستقلة، مع إبقاء شجرة العمل الرئيسية بلا تغيير. ففي Codex CLI 0.154.0، يحوّل الخيار الجديد --worktree والأمر /worktree الخطوات اليدوية لإنشاء Git worktree إلى اختيار مدمج عند بدء الجلسة. وإذا كنت تدفع بالفعل $20 شهرياً مقابل Codex Plus، فلا توجد رسوم منفصلة منشورة لهذه الميزة، لكن جميع الجلسات المتوازية تستهلك من حصة Codex نفسها.
أقصر إعداد لتشغيل Codex CLI مع Git worktree
ستحتاج إلى Codex CLI 0.154.0 ومستودع Git محلي، مع تفعيل ميزة worktrees التجريبية. ابدأ بفحص الإصدار حتى لا تبحث عن خيار لا يعرفه إصدار أقدم.
codex --version
npm install -g @openai/codex@0.154.0
codex features enable worktrees
codex features listيحفظ أمر التفعيل الدائم هذا اختيار الميزة في إعدادات Codex. أما إذا أردت تجربتها لمرة واحدة فقط، فاترك الإعدادات كما هي وأضف --enable worktrees إلى ذلك الاستدعاء.
بعدها يمكنك بدء جلسة معزولة جديدة، أو مهمة بلا واجهة تفاعلية، أو تفريع محادثة قائمة:
codex --enable worktrees --worktree "Upgrade the test runner and run its suite"
codex exec --enable worktrees --worktree "Find the flaky test and propose the smallest fix"
codex fork --enable worktrees --worktree <session-id> "Try the lower-risk implementation"في التفريع التفاعلي، تمثل <session-id> معرّف المحادثة الذي يعرضه /status. ويتطلب الإصدار 0.154.0 إدخال هذا المعرّف صراحةً؛ إذ لا يقبل codex fork --worktree --last.
يتوفر المسار نفسه داخل واجهة الطرفية. اكتب /worktree، ثم اختر بين متابعة المحادثة الحالية في نسخة عمل جديدة، أو بدء محادثة جديدة فيها، أو استعراض مساحات العمل التي يديرها Codex لهذا المستودع.
ماذا ينشئ Codex فعلياً؟
شجرة العمل المُدارة هي نسخة checkout ثانية مرتبطة بمستودع Git نفسه. تخيّل المستودع كفهرس مكتبة تتشاركه قاعتا قراءة: يمكن لكل قاعة عرض صفحات مختلفة، لكن الاثنتين تستندان إلى الفروع وسجل الالتزامات نفسيهما.
ينشئ Codex النسخة الجديدة انطلاقاً من HEAD المحفوظ في المستودع المصدر، بحالة detached HEAD، ثم يربطها بالجلسة الجديدة. وتعني detached HEAD أن النسخة تشير مباشرة إلى commit بدلاً من تحريك فرع ذي اسم، بينما تبقى نسختك الأصلية في موضعها.

لهذه البداية النظيفة نتيجة مهمة: التعديلات غير المحفوظة في النسخة الأصلية لا تنتقل إلى الجلسة. وينطبق ذلك أيضاً على الملفات المتجاهلة، مثل .env أو مجلد node_modules في الإعدادات المعتادة. توثّق OpenAI آلية نسخ .worktreeinclude لمساحات العمل المحلية التي يديرها تطبيق Desktop، لكنها تستثني صراحةً المساحات المنشأة من سطر الأوامر. لذلك ينبغي تجهيز كل ما تحتاج إليه المهمة بصورة مستقلة عند استخدام CLI.
إذا شغّلت Codex من مجلد متداخل داخل المستودع، فستحافظ النسخة المُدارة على المسار النسبي نفسه. فبدء الجلسة من apps/web، مثلاً، يضعها في مجلد apps/web المقابل داخل شجرة العمل الجديدة، بشرط وجوده في النسخة المحفوظة من المستودع.
سير العمل العملي: من التشغيل إلى الاحتفاظ بالتغييرات
يتكون المسار الأكثر أماناً من خمس مراحل: ابدأ من حالة نظيفة، وتحقق من موقع الجلسة، ونفّذ المهمة، وافحص الأدلة، ثم قرر بوضوح الاحتفاظ بالنتيجة أو التخلص منها.
1. ابدأ من الالتزام الذي تريده فعلاً
الخيار --worktree مفتاح منطقي، وليس محدداً للفرع أو نقطة البداية. فهو ينطلق من HEAD للمستودع الذي تشير إليه. انتقل أولاً إلى الفرع الأساسي المقصود، واحفظ أي تغييرات في المصدر تحتاج إليها المهمة قبل التشغيل. ويمكن استخدام -C <repo-path> لتوجيه Codex إلى نسخة محلية بعينها.
استخدم جلسة جديدة عندما تكون المهمة مستقلة، واستخدم التفريع عندما تحتاج المحاولة الجديدة إلى قرارات المحادثة الأصلية وقيودها. يحافظ التفريع على سجل الحوار في محادثة جديدة، وينقل العمل الجديد إلى نسخة معزولة؛ وبذلك تبقى المحاولة الأولى سليمة للمقارنة.
2. تحقق من النسخة قبل بدء التعديل
اطلب من Codex تشغيل pwd وgit status --short وgit rev-parse --short HEAD في البداية. يجب أن يشير مسار العمل إلى النسخة المُدارة، وأن تكون الحالة نظيفة، وأن يطابق الالتزام قيمة HEAD التي قصدت استخدامها في المصدر.
هذا الفحص البسيط يمنع خطأً مكلفاً وشائعاً: إنجاز عمل ممتاز فوق أساس غير صحيح.
3. ثبّت ما تحتاج إليه هذه المهمة فقط
تعزل شجرة العمل الملفات الموجودة في النسخة، لكنها لا تنشئ حاوية، ولا تحجز منفذاً، ولا تستنسخ قاعدة بيانات، ولا تثبّت الاعتماديات. شغّل أمر الإعداد المعتاد للمستودع داخل النسخة المُدارة. وإذا كانت الجلسات تعمل بالتوازي، فخصص لكل منها منافذ وقواعد بيانات مؤقتة وأدلة cache وحسابات اختبار منفصلة عندما يكون التصادم ممكناً.

هذه هي الحدود الأهم للميزة. فقد تتداخل نسختان لهما تغييرات Git نظيفة إذا شغّلت الجلستان ترحيل قاعدة بيانات التطوير نفسها أو حاولتا استخدام المنفذ نفسه.
4. افحص الفرق، ثم استأنف المحادثة الصحيحة
داخل جلسة شجرة العمل، يستطيع /review فحص التغييرات غير المحفوظة. ومن طرفية أخرى، اكتب أولاً /worktree، واختر Browse worktrees، ثم حدد النسخة واختر Copy working directory. بعد ذلك شغّل git -C "<worktree-path>" status --short وgit -C "<worktree-path>" diff --stat وgit -C "<worktree-path>" diff.
لا تشغّل codex review --worktree؛ فالإصدار 0.154.0 يرفض هذا الجمع بين الخيارات. راجع شجرة العمل النشطة من داخل جلستها، أو وجّه أدوات المراجعة المعتادة إلى المسار الذي نسخته.
ولمتابعة العمل لاحقاً، اكتب /worktree، ثم اختر Browse worktrees وحدد النسخة المُدارة، وبعدها اختر Resume owner thread. لا تضف --worktree إلى codex resume؛ فالاستئناف يجب أن يعيدك إلى النسخة المرتبطة بالجلسة أصلاً، لا أن ينشئ نسخة أخرى.
5. احفظ التغيير قبل تنظيف شجرة العمل
إذا قررت الاحتفاظ بالتغيير، فشغّل الاختبارات المناسبة، وأنشئ commit داخل شجرة العمل، وانسخ قيمة SHA الخاصة به. ثم استخدم git cherry-pick <sha> في النسخة الأصلية لنقل ذلك الالتزام إلى فرعك الحالي. نفّذ cherry-pick قبل إزالة شجرة العمل، حتى يصبح للالتزام المنفصل مكان دائم.
أما إذا كان العمل يستحق فرع مراجعة مستقلاً، فشغّل git switch -c codex/<task> داخل شجرة العمل، ثم أنشئ commit وادفع الفرع وافتح طلب pull request. لن يسمح Git بفتح الفرع نفسه في النسخة الأصلية بالتزامن؛ لذا ادفعه من شجرة العمل، أو أزل شجرة العمل قبل فتح الفرع في مكان آخر.

لا تُنظَّف مساحات العمل المنشأة عبر CLI تلقائياً. بعد حفظ التغيير بأمان أو اتخاذ قرار واعٍ بالتخلص منه، تأكد من نظافة النسخة وشغّل git worktree remove <worktree-path> من المستودع المصدر. تجنب --force. ويمكن لـ git worktree prune إزالة تسجيلات Git القديمة لاحقاً، لكنه لا يغني عن التأكد من أن الجلسة لم تعد تستخدم النسخة.
أثر Git worktree في ميزانية Codex CLI
تلغي الميزة المدمجة طبقة صغيرة لكنها متكررة من أوامر shell المساعدة. قبل 0.154.0، كان على مستخدم CLI إنشاء مسار، وإنشاء فرع أو فصله، وتشغيل Codex داخل ذلك الدليل، وتذكر المحادثة التابعة له، ثم تنظيف حالة Git والجلسة لاحقاً. أما الخيار الجديد فينشئ النسخة ويربطها في عملية تشغيل واحدة، بينما يوفر /worktree واجهة استعراض واستئناف تدرك بنية المستودع.
لا تحمل النسخة رسوماً منفصلة منشورة للمشترك الحالي في Codex. يبلغ سعر Codex Plus مقدار $20 شهرياً. أما مساحة عمل الوكلاء التجارية Unstoppable، التي تنظّم مساحات العمل المتوازية، فتبدأ خطة Pro المدفوعة فيها من $19 شهرياً، مقابل $29 لكل مستخدم في Business، وتصل إلى $49 لكل مستخدم في Enterprise. وبذلك يستطيع Codex المدمج تغطية مهمة النسخ المعزولة واستئنافها ضمن الاشتراك الذي تستخدمه بالفعل.
لكن ذلك لا يحل محل بقية أدوات هذه الفئة المدفوعة. فلوحات التحكم التي تجمع عدة وكلاء، وتخصيص المنافذ، وإعداد البيئات المشتركة، وتجميع نتائج الاختبارات، وتتبع pull requests، وسياسات الفريق، وتقارير التكلفة كلها طبقات أعلى من مجرد نسخة عمل. كما أن الجلسات المتوازية تستهلك من حصة استخدام Codex نفسها. لذا فالقراءة المالية الدقيقة ليست «تطويراً متوازياً مجانياً»، بل «أداة تنسيق أقل إذا كان عزل الملفات هو السبب الوحيد لشرائها».
لرؤية أشمل للمنتج المحيط بهذه الميزة، تغطي مراجعة Codex تجربة CLI المحلية وسير عمل الوكيل. كما يوضح شرح Codex CLI 0.152.0 السابق سبب أهمية القيود المرتبطة بإصدار محدد عند أتمتة الطرفية.
سبع مهام لوكلاء البرمجة بالذكاء الاصطناعي مرتبة حسب العائد
1. ترقيات الاعتماديات عالية المخاطر
يستطيع مسؤول الصيانة تخصيص شجرة عمل لترقية framework أو package manager أو test runner، وترك Codex يعدّل ملفات القفل والإعدادات ويشغّل مجموعة الاختبارات كاملة من دون تلويث عمل الميزة المفتوح في النسخة الرئيسية. المحصلة مسار ترقية واضح للمراجعة، ويمكن التخلص منه من دون stash أو التراجع عن تغييرات لا علاقة لها بالمهمة.
2. تنفيذان متنافسان للميزة نفسها
يستطيع قائد تقني تفريع محادثة التخطيط نفسها إلى شجرتي عمل مُدارتين، فيطلب من جلسة أصغر patch ممكن ومن الأخرى معالجة أكثر بنيوية، ثم يقارن حجم الفرق والاختبارات ومخاطر الترحيل. النتيجة قرار يستند إلى أدلة، من دون أن تمحو المحاولة الثانية الأولى.
3. تشخيص عطل بالتوازي مع تطوير المنتج
يمكن لمهندس منتج في منتصف بناء ميزة أن يبدأ شجرة عمل نظيفة من HEAD المحفوظ لإعادة إنتاج عطل في بيئة الإنتاج. يستطيع Codex إضافة أدوات الرصد والاختبار وإصلاح العطل في ذلك المسار، بينما تبقى الميزة غير المكتملة بمنأى عنه. والنتيجة عدد أقل من عمليات stash الطارئة وفرق hotfix أنظف.
4. عمليات codemod وإعادة الهيكلة الكبيرة
يمكن لفريق المنصة عزل إعادة تسمية واسعة أو ترحيل API في نسخة مستقلة، وتشغيل أدوات التنسيق والاختبارات فيها، ثم فحص مجموعة الملفات الناتجة قبل إدخالها إلى الفرع الرئيسي. الفائدة هنا هي الاحتواء: تبقى التغييرات الآلية منفصلة حتى تستحق commit.
5. مسار مستقل لإصلاح ملاحظات المراجعة
يستطيع صاحب pull request حفظ أساس المراجعة في commit، ثم تشغيل جلسة Codex معزولة من تلك الحالة ومعالجة الملاحظات من دون تعطيل فرع آخر مفتوح محلياً. المحصلة سلسلة تصحيحات مركزة يمكن دفعها من شجرة العمل عندما تصبح جاهزة.
6. مهام صيانة قابلة لإعادة الإنتاج
يمكن لمهندس البناء استخدام codex exec --worktree لمهمة مركزة، مثل تحديث الملفات المولّدة أو تقصي اختبار متقطع. تحصل المهمة غير التفاعلية على نسخة نظيفة من الملفات المتتبعة وجلسة محفوظة يمكن فحصها لاحقاً. الفائدة هي تقليل التلوث العرضي بسبب ما هو مفتوح في شجرة العمل الرئيسية، لكن على الأتمتة تولي إعداد الاعتماديات والتنظيف.
7. استكشاف آمن للمستودع
يمكن لعضو جديد في الفريق أن يطلب من Codex رسم خريطة لقاعدة شيفرة غير مألوفة وتجربة تعديل صغير في التوثيق أو الاختبارات داخل شجرة عمل مُدارة قبل لمس النسخة المعتادة. والعائد نفسي بقدر ما هو تقني: للاستكشاف حدود واضحة ومسار سهل للتراجع.
ثلاثة منتجات يمكن بناؤها لسد الفجوة
1. الرهان الأقوى: طبقة جاهزية لمساحات العمل
ابنِ أداة محلية صغيرة تحوّل النسخة المُدارة الجديدة إلى بيئة مهمة قابلة للتشغيل وخالية من التصادم. تتعرف الأداة إلى حزمة المشروع، وتشغّل إعداد الاعتماديات المعتمد، وتحجز منفذاً، وتنشئ قاعدة بيانات أو schema مؤقتة، وتكشف الأسرار المحددة فقط، وتجري health check، ثم تطبع خطة التنظيف المناسبة.
الطلب واسع: يحصل git worktree على نحو 9,900 عملية بحث شهرية في Google داخل الولايات المتحدة، ويحصل what is a git worktree على 590 أخرى. تحل ميزة Codex المدمجة إنشاء النسخة، لكنها تترك جاهزية بيئة التشغيل بلا حل، ما يجعل هذه الفرصة الأقوى.
تحتاج أصغر نسخة قابلة للبيع إلى manifest للمستودع، وأوامر إعداد وإزالة، وحجز المنافذ، وقوالب لملفات البيئة، وفحص للحالة. أما المأخذ الحقيقي فهو الأمان؛ فأداة تنسخ الأسرار أو توجه وكيلين إلى قاعدة بيانات واحدة قد تزيد المخاطر بدلاً من تقليلها. وقد تضيف OpenAI أيضاً lifecycle hooks أصلية تضيق هذه الفجوة.
2. لوحة تحكم لمسارات عدة وكلاء
ابنِ لوحة سطح مكتب أو طرفية تكتشف مساحات العمل عبر المستودعات والأدوات، ثم تعرض الجلسة المالكة، وحالة الفرع أو detached، والملفات المتغيرة، ونتيجة الاختبار، واستخدام Codex، وpull request، والمساحة على القرص، وإجراءً آمناً للاستئناف أو التنظيف.
يحصل git worktree claude code على نحو 480 عملية بحث شهرية في الولايات المتحدة، وتحصل العبارة المطابقة parallel coding agents على 10. الرقم الأخير صغير، لكن سلوك الدفع موجود: تبدأ Unstoppable من $19 شهرياً لمنتج يتضمن مساحات عمل متوازية للوكلاء. والمشتري هنا مطور يتنقل بالفعل بين Codex وClaude Code والطرفيات المعتادة.
يمكن أن تبقى النسخة الأولية للقراءة فقط: تعدّد مساحات عمل Git، وتطابق بيانات الجلسات المعروفة، وتشغّل أوامر الحالة والاختبار عند الطلب، وتوفر رابطاً مباشراً إلى كل وكيل. المأخذ هو المنافسة الأصلية؛ إذ يستعرض Codex 0.154.0 مساحات العمل التي يديرها، ولذلك يجب أن يتفوق المنتج في الرؤية عبر عدة وكلاء، وحالة التشغيل، وتقارير الفرق.
3. بوابة للدمج والتنظيف
ابنِ حارساً يقف بين مسار الوكيل المكتمل والفرع الرئيسي. يتحقق من نظافة الحالة، ويشغّل مجموعة الاختبارات المطلوبة، ويرصد الملفات التي غيّرتها مساحات عمل نشطة أخرى، ويوصي بترتيب cherry-pick، ويرفض التنظيف المدمر ما دامت هناك التزامات لم تُدمج.
تظهر الأسئلة بالفعل في حجم البحث: يحصل git remove worktree على نحو 390 عملية بحث شهرية في الولايات المتحدة، وgit worktree vs branch على 320، وgit worktree prune على 140. وتتركز هذه الاستعلامات عند اللحظة التي ينبغي فيها تحويل العمل المعزول إلى عمل مشترك.
النسخة الأولية هي أمر Git محلي مع ملف سياسة صغير، ويمكن أن تكون مفيدة من دون تعديل أي سطر تلقائياً. أما التحدي فهو التوزيع: تستطيع برامج Git ومزودات CI إضافة الفحوص نفسها، لذا تحتاج الأداة المستقلة إلى دعم ممتاز لعدة وكلاء برمجة ولمستودعات حقيقية غير مرتبة.
قيود ينبغي أن تغيّر قرارك
استخدم مساحات العمل المدمجة عندما تكون المشكلة هي عزل الملفات، ولا تعاملها كأنها عزل كامل للبيئة.
كذلك لا يوجد في هذا الإصدار بديل ضمن CLI لزر Handoff في تطبيق Desktop. وتظل إعادة الشيفرة قراراً في Git: أنشئ commit ونفّذ cherry-pick، أو ادفع فرعاً، أو تخلص من العمل وأزل النسخة. هذه الخطوة الصريحة مفيدة؛ فقيمة العزل تأتي تحديداً من منع انتقال أي شيء إلى النسخة الرئيسية بالخطأ.
هل يدعم Codex CLI مساحات Git worktree؟
نعم. أضاف Codex CLI 0.154.0 مساحات عمل مُدارة وتجريبية للجلسات المحلية الجديدة والمتفرعة، وذلك عبر --worktree و/worktree. فعّل ميزة worktrees أولاً.
ما أمر Codex worktree في CLI؟
بعد الإعداد الدائم، شغّل codex --worktree "<prompt>" لبدء جلسة تفاعلية، أو codex exec --worktree "<prompt>" لمهمة غير تفاعلية. ولتجربة من تشغيل واحد، أضف --enable worktrees.
ما المقصود بشجرة عمل Git؟
هي نسخة checkout أخرى من المستودع نفسه. للنسخة ملفاتها وHEAD الخاص بها، بينما تتشارك commits والفروع وبيانات Git الوصفية الأخرى مع المستودع المصدر.
كيف يعمل تفريع محادثة Codex؟
استخدم codex fork --worktree <session-id> للاحتفاظ بمحادثة تفاعلية قائمة داخل محادثة جديدة مرتبطة بنسخة مُدارة ونظيفة. وتبدأ النسخة بحالة detached عند HEAD المحفوظ في المستودع المصدر.
كيف أستأنف جلسة Codex CLI مرتبطة بشجرة عمل؟
افتح TUI واكتب /worktree، ثم اختر Browse worktrees وحدد النسخة، وبعدها اختر Resume owner thread. ويستطيع المستعرض أيضاً نسخ مسار شجرة العمل لفحصها من طرفية أخرى.
خطوتك ليوم الاثنين: اختر ترقية غير حرجة لإحدى الاعتماديات، وشغّلها عبر codex --enable worktrees --worktree، ثم قارن الفرق ونتائج الاختبارات من مسار النسخة المنسوخ، ولا تنقل بـ cherry-pick سوى الالتزام المقبول، وبعدها أزل شجرة العمل. وإذا أردت بناء سير موثوق للوكلاء المعزولين حول مستودعاتك، يمكنني مساعدتك في تصميم نظام الإنتاج.
- آخر تحديث
- 10 سبتمبر 2026
- التصنيف
- Build







