كيفية تشغيل Claude Code وCodex طوال الليل عبر /goal في 2026: وضع مستقل لمدة 14 ساعة
Markdownيشغّل الأمر /goal في Claude Code 2.1.139 وCodex CLI وكيل ذكاء اصطناعي بشكل مستقل لساعات. أشرح الإعداد وأمثلة واقعية وعدد الرموز التي يستهلكها.
قراءة المقال كاملًا
أهم النقاط
ظهر الأمر /goal في Claude Code 2.1.139 (11 مايو 2026) وCodex CLI 0.128.0 (30 أبريل 2026، وأصبح مستقراً منذ 21 مايو). تحدد معيار «الإنجاز» مرة واحدة، ثم يكرر الوكيل التخطيط والتنفيذ والتحقق تلقائياً حتى يتحقق المعيار أو تنفد الرموز. عرضت OpenAI علناً تشغيلًا استمر 25 ساعة واستخدم 13 مليون رمز. يناسب ذلك عمليات الترحيل والاختبارات المعيارية وإعادة الهيكلة ذات المعايير القابلة للقياس. ولا يناسب مهام واجهة المستخدم أو قواعد بيانات الإنتاج أو الطلبات المبهمة مثل «اجعله أفضل».
تتوفر معلومات حول العمل مع Ailoot في الوثائق.
ما هو /goal ولماذا ظهر في 2026؟
أهم النقاط
قبل /goal، كان كل دور للوكيل يتطلب كتابة «متابعة» يدوياً. كان يفتح ملفاً ويقرأه ويكتب شيئاً ثم يتوقف وينتظر. يحدد الأمر /goal معيار الإنجاز مرة واحدة، ويقرر الوكيل بنفسه متى تنتهي المهمة، ولا يعيد إليك التحكم حتى ينتهي منها.
هذا هو السيناريو الذي عشنا جميعاً قبل أبريل 2026: أكلّف Claude بمهمة: «رحّل المشروع من Pydantic v1 إلى v2». يبدأ، ثم يتوقف بعد 30 ثانية، فأراجع ما فعله وأكتب «متابعة». ينفذ الخطوة التالية، ويتوقف، فأكتب «متابعة» مرة أخرى. في عملية ترحيل كبيرة، يعني ذلك كتابة «متابعة» يدوياً 200–300 مرة، وينتهي بي الأمر بمراقبة الوكيل بدلاً من كتابة شيفرة أخرى بالتوازي.
خلص تحليل OpenAI إلى أن المشكلة لم تكن «غباء» النموذج، بل بنية الحلقة. لم يكن النموذج يعرف متى يتوقف، لذا كان يضغط المكابح في كل دور. أعطه معياراً للإنجاز، وسيقرر بنفسه.
هكذا ظهر /goal — آلية مدمجة في الـ harness، لا في النموذج.
قيلت هذه العبارة في مؤتمر Code with Claude في لندن يومي 19 و20 مايو 2026. وهي تصف ما حدث فعلياً خلال الشهر الذي تلا إطلاق /goal في الأداتين.
كيف تضبط وضع Goal في Claude Code؟
أهم النقاط
صدر Claude Code 2.1.139 في 11 مايو 2026 مع الأمر /goal. يتحقق نموذج صغير (Haiku افتراضياً) من المعيار بعد كل دور. إذا لم يتحقق المعيار، ينفذ Claude دوراً آخر. يمكن أن يصل طول المعيار إلى 4,000 حرف، ويوجد هدف واحد لكل جلسة.
مثال بسيط من وثائق Anthropic الرسمية:
claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"
يشغّل هذا الأمر الوكيل في الخلفية مع هدف واحد. يعثر Claude على طلبات الدمج (PR)، ويتحقق منها مقابل CHANGELOG.md، ويضيف أي أسطر ناقصة، ثم يتوقف عندما يتحقق المعيار.
في الوضع التفاعلي، اكتب /goal متبوعاً بالشرط:
/goal all pytest tests pass and mypy strict reports zero errors
ما يفعله Claude بعد ذلك:
- بعد كل دور، يتلقى نموذج سريع منفصل (Haiku افتراضياً) الشرط الحالي وسجل المحادثة
- يجيب هذا النموذج بـ«نعم» أو «لا» مع سبب موجز
- إذا كانت الإجابة «لا»، ينفذ Claude تلقائياً دوراً آخر من دون إعادة التحكم إليك
- إذا كانت الإجابة «نعم»، يُمسح الهدف ويعود التحكم إليك
بعد كل دور، يتحقق نموذج صغير وسريع مما إذا كان الشرط قد تحقق. وإذا لم يتحقق، يبدأ Claude دوراً آخر من دون إعادة التحكم إليك.
حدود صارمة لا يخبرك بها أحد حتى تصطدم بها:
- لا يعمل
/goalإلا في أدلة العمل التي قُبل فيها مربع حوار الثقة. إذا كنت تستخدم جهازاً جديداً ولم يتذكر Claude ذلك الدليل بعد، فسيفشل الأمر - في بيئات الشركات التي تستخدم
disableAllHooksأوallowManagedHooksOnly، لا يتوفر الأمر - يمكن أن يصل طول الشرط إلى 4,000 حرف
- لا يمكن أن يكون هناك سوى هدف نشط واحد في الجلسة. يؤدي
/goalجديد إلى إعادة ضبط الهدف السابق - مع
--resume، يُحفظ الشرط، لكن تُصفّر عدادات الأدوار والوقت والرموز
أوامر التحكم:
/goalمن دون وسيط: يعرض الحالة الحالية/goal clear(أوstopأوoffأوresetأوnoneأوcancel): يمسح الهدف
وفقاً لـ Anthropic، فإن تكلفة المُقيّم «ضئيلة عادةً مقارنة بتكلفة الدور الرئيسي». يقيّم Haiku المعيار ونص المحادثة ولا يستدعي الأدوات، لذا فالفحص منخفض التكلفة؛ أما الجزء المكلف فهو أدوار النموذج الرئيسي.
كيف تضبط /goal في Codex CLI؟
أهم النقاط
أضاف Codex CLI 0.128.0 الأمر /goal في 30 أبريل 2026 كميزة تجريبية. وفي 21 مايو أصبح الوضع مستقراً في الإصدار 26.519 / npm 0.133.0. يعمل عبر قالبَي مطالبة: continuation.md («تابع») وbudget_limit.md («توقف»). يرتبط الهدف بسلسلة المحادثة ويظل قائماً بعد إعادة التشغيل.
يبدو الأمر كما في Claude:
codex
> /goal all vitest tests pass and there are no eslint errors
يوفر Codex مزيداً من عناصر التحكم بالأهداف:
| الأمر | وظيفته |
|---|---|
/goal condition | يحدد هدفاً |
/goal | يعرض الحالة |
/goal pause | يوقف مؤقتاً |
/goal resume | يستأنف |
/goal edit | يغيّر الشرط (مع GA) |
/goal clear | يمسح الهدف |
الفرق الرئيسي عن Claude هو أن Codex نفسه يتحقق مما إذا كان قد «انتهى»، بدلاً من استخدام نموذج منفصل. بعد كل دور، يُدرج Codex تلقائياً قالب continuation.md من مستودع openai/codex في السياق. وترجمته الحرفية:
«واصل العمل نحو هدف سلسلة المحادثة النشط. لا تكرر العمل المنجز. اختر الإجراء الملموس التالي نحو الهدف. لا تعلن تحقيق الهدف إلا عندما يثبت التدقيق أنه تحقق فعلاً ولم يعد هناك عمل مطلوب.»
عندما تقترب الرموز من حدها، يُدرج قالب ثانٍ هو budget_limit.md:
«بلغ الهدف حد الرموز المسموح به. لا تبدأ عملاً جديداً كبيراً. اختتم هذا الدور في أسرع وقت ممكن: لخّص التقدم المفيد، وحدد الأعمال والعوائق المتبقية، واترك للمستخدم خطوة تالية واضحة.»
المنطق واحد: «لا تكذب بشأن ما أنجزته». يجب ألا يستمر العمل إلا إذا لم يتحقق الهدف فعلياً. أما budget_limit فيتطلب التوقف مع وصف صادق لما تبقى.
على خلاف Claude، يربط Codex الهدف بسلسلة المحادثة لا بالجلسة. على سبيل المثال، يمكنك إغلاق الطرفية وإعادة فتحها في الصباح، ثم استئناف /goal resume الهدف نفسه بالمعلومات نفسها في الذاكرة. وهذا مفيد لعمليات التشغيل التي تقسّمها إلى فترات وفق جدولك الخاص.
ما الفرق بين /goal في Claude Code و/goal في Codex؟
أهم النقاط
يفصل Claude بين الكاتب والحَكَم: يكتب النموذج الرئيسي الشيفرة، ويحكم نموذج صغير منفصل على العمل. أما Codex فهو وكيل واحد يتحقق من عمله بنفسه ويذكّر نفسه: «لا تكذب بشأن ما أنجزته». تختلف البنيتان، لكن خطر الوقوع في حلقة متكررة واحد.
هذه أكثر نقطة يغفل عنها الناس عند المقارنة، لذا لننظر إليها بالتفصيل.
| الجانب | Claude Code /goal | Codex /goal |
|---|---|---|
| الإصدار | v2.1.139، 11 مايو 2026 | v0.128.0، 30 أبريل 2026 (تجريبي) → v0.133.0 / 26.519، 21 مايو 2026 (مستقر) |
| نطاق الهدف | الجلسة | سلسلة المحادثة (يستمر بعد إعادة التشغيل) |
| عناصر التحكم | set، clear (+ أسماء بديلة) | set، view، pause، resume، edit، clear |
| من يتحقق مما إذا كان «قد انتهى» | نموذج منفصل (Haiku افتراضياً) | الوكيل نفسه عبر مطالبة مدرجة |
| وصول المُقيّم إلى الملفات | لا؛ يحكم من نص المحادثة فقط | نعم؛ يمكنه فحص الملفات والاختبارات والسجلات |
| الميزانية | في نص الشرط: «أو توقف بعد 20 دوراً» | حد رموز مدمج + إدراج تلقائي لـ budget_limit.md |
| حد أقصى صارم للإنفاق | لا يوجد؛ يقتصر على حد الاشتراك | لا يوجد؛ يقتصر على حد الاشتراك |
| طول الشرط | حتى 4,000 حرف | غير محدد |
| أماكن العمل | الوضع التفاعلي، -p، تطبيق سطح المكتب، Remote Control | التطبيق، إضافة IDE، CLI، عملاء ACP |
يكمن الفرق المفاهيمي في أن Claude يتعامل مع الحلقة كعقد جودة (مُقيّم خارجي)، بينما يتعامل Codex معها كآلية تنفيذ (يدير الوكيل نفسه).
عملياً، اختر Claude إذا أردت أن يكون معيار «الإنجاز» محايداً. واختر Codex إذا أردت أن يتمكن الوكيل من فحص الملفات والسجلات أثناء التقييم.
اقرأ المزيد عن الأداتين في دليل المقارنة بين Codex وClaude Code.
مثال واقعي: الترحيل من Pydantic v1 إلى v2 في 31 ساعة
أهم النقاط
أكمل Codex /goal ترحيل 14,000 سطر من خدمة داخلية من Pydantic v1 إلى v2 في 31 ساعة فعلية، موزعة على أربع جلسات. بلغت التكلفة نحو $44 باستخدام gpt-5.3-codex.
صيغت المهمة كما يلي: «رحّل من Pydantic v1 إلى v2، ويجب أن تجتاز جميع اختبارات pytest وأن يبلغ mypy strict عن صفر أخطاء».
ما حدث:
- الجلسة 1 (8 ساعات): حلّل Codex عمليات الاستيراد، وأعاد كتابة تعريفات
BaseModel، وأعدّ mypy - الجلسة 2 (10 ساعات): أعاد كتابة المدققات وأخفق نحو 200 اختبار
- الجلسة 3 (7 ساعات): أصلح الاختبارات واكتشف تبعيات دائرية
- الجلسة 4 (6 ساعات): حل أخطاء mypy المتبقية والتراجعات
تكلفة الرموز:
«إجمالي الوقت الفعلي: نحو 31 ساعة موزعة على أربع جلسات. بلغ إجمالي تكلفة رموز Codex وفق أسعار gpt-5.3-codex نحو $44.»
تأتي معظم التكلفة من رموز مخرجات gpt-5.3-codex، بسعر $14 لكل مليون. وهذا يعني أن 31 ساعة من العمل المستقل تكلف تقريباً ما يعادل أسابيع من اشتراك ChatGPT Plus.
ما لم يفعله الوكيل من تلقاء نفسه:
- لم يكتب وثائق الترحيل للفريق (لم يفهم Codex أن ذلك جزء من «الترحيل»)
- لم يحدّث ملفات الإعداد للنشر باستخدام إصدار Pydantic الجديد
- أغفل تراجعاً واحداً في الإنتاج، ولم يُكتشف إلا بعد يوم
بعبارة أخرى، أنجز /goal نسبة 95% من العمل؛ أما الـ5% الباقية فما زالت تتطلب عملاً يدوياً. وهذا طبيعي في الجيل الحالي، وليس سبباً لعدم استخدامه.
14 ساعة طوال الليل على برنامج تشغيل macOS
أهم النقاط
تتناسب برامج التشغيل بوصفها فئة من المهام مع الحلقات طويلة التشغيل، ولا تلائم العمل التفاعلي.
أنواع المهام التي يحقق فيها هذا النهج أكبر فائدة:
- الأعمال منخفضة المستوى التي تستغرق فيها الدورة والتحقق دقائق (الترجمة، وتشغيل الاختبارات)
- عمليات الترحيل ذات المعايير الرسمية الواضحة (الأنواع، والاختبارات، وlint)
- الاختبارات المعيارية والتحسينات ذات النتائج القابلة للقياس
- الوثائق وسجلات التغييرات ذات البنية الواضحة
يؤدي Claude /goal هذه المهام بالكفاءة نفسها، لكن Codex يُختار غالباً للعمل على برامج التشغيل لأنه يفحص الملفات والسجلات بنفسه بدلاً من الاعتماد على حَكَم خارجي.
كم تبلغ التكلفة، وكيف تتجنب استنزاف الرموز طوال الليل؟
أهم النقاط
لا يوجد حد أقصى صارم للإنفاق في /goal؛ فالحدود الوحيدة هي حدود خطتك. تبلغ تكلفة ساعة فعلية من Codex نحو $1.50–$3 باستخدام gpt-5.3-codex. وتكلفة تشغيل Claude أعلى، بينما تكلفة تقييمه أقل. والإجراء الوقائي الوحيد هو كتابة «أو توقف بعد N دوراً» ضمن الشرط نفسه.
أرقام من تقارير منشورة:
| التشغيل | المدة | الرموز | التكلفة |
|---|---|---|---|
| عرض أداة التصميم من OpenAI | 25 ساعة | 13M | (تشغيل داخلي) |
| Pydantic v1→v2 | 31 ساعة، 4 جلسات | نحو 3.1M مخرجات | نحو $44 |
| نظام مقابلات صوتية | 6 ساعات و44 دقيقة إجمالاً (41 دقيقة حساب) | 6.8 مليون إدخال، 94% مخزنة مؤقتاً | - |
| اختبار سريع للخطوط | 5 دقائق | 188,832 | أقل من 5% من الحصة الأسبوعية |
أهم ما ينبغي فهمه هو أن Claude Code وCodex لا يوفران حداً صارماً من نوع «توقف عن الإنفاق عند $N». توجد ثلاثة إجراءات وقائية:
- حدود الاشتراك — Pro أو Max أو Enterprise. ضمن خطة Max من Anthropic ($100 شهرياً)، تتسع الحصة الأسبوعية لتشغيل ليلي مدته 14 ساعة مع هامش وفير
- حد نصي في الشرط — اكتب «أو توقف بعد 20 دوراً» مباشرةً في
/goal. سيقرأ حَكَم Claude ذلك وينهي الهدف - حد الرموز في Codex — آلية مدمجة تُدرج
budget_limit.mdعند نفاد الرموز
ما يرفع الفاتورة أثناء الليل:
- معيار مبهم مثل «اجعله أكثر ملاءمة»: لن يتوقف الوكيل أبداً لأن المُقيّم لا يعرف معنى «أفضل»
- الوصول إلى واجهات API خارجية من دون بدائل وهمية؛ فكل محاولة جديدة تكلف رموزاً
- السياق الطويل: بعد 6.7M رمز، يبدأ ضغط السياق وتُفقد بعض الذاكرة
اقرأ المزيد عن توفير التكاليف في دليلي أين تذهب رموز Claude Code وكيف لا تستنفد حدودك.
متى لا تشغّل /goal: 5 حالات
أهم النقاط
المعايير المبهمة مثل «اجعله يبدو جميلاً»، والتعديلات ذات السطر الواحد، وقواعد بيانات الإنتاج التي تحتوي على بيانات المستخدمين، والتغييرات الحساسة أمنياً، والمهام ذات التبعيات الخارجية غير الواضحة. في الحالات الخمس كلها، إما أن يعلق الوكيل في حلقة أو يهدر الرموز بلا فائدة.
توضح وثائق OpenAI صراحةً ما يجب عدم فعله:
- التعديلات ذات السطر الواحد — استخدام
/goalلإعادة تسمية متغير يكلف أكثر من القيام بذلك يدوياً - الأهداف المبهمة — «حسّن الأداء»، «اجعل الشيفرة أنظف»، «اجعلها أكثر ملاءمة». ليس لدى المُقيّم معيار، لذا سيدور الوكيل في حلقة إلى الأبد
- قواعد بيانات الإنتاج التي تحتوي على بيانات المستخدمين — قد يفسد الوكيل عملية ترحيل، وتكلفة الاستعادة من نسخة احتياطية أكبر من أي توفير
- التغييرات الأمنية — المصادقة والتشفير ومعالجة المدفوعات. يجب أن يراجع شخص كل commit هنا
- واجهات API خارجية بلا بدائل وهمية — كل إخفاق شبكي يكلف رموزاً وهو خارج سيطرتك
ماذا تفعل إذا علق الوكيل؟
أهم النقاط
من علامات الدخول في حلقة أن الوكيل يعدّل المكان نفسه على مدى 3–4 أدوار ثم يتراجع عن التعديلات. أوقفه باستخدام Ctrl+C، وافحص السجل، ثم اجعل المعيار أكثر صرامة أو قلّص المهمة إلى جزء واحد. في Claude، يفيد /goal clear؛ وفي Codex، استخدم /goal pause وعدّل الشرط.
كيفية اكتشاف الحلقة بسرعة:
- يتعامل الوكيل مع الملفات نفسها لأكثر من 3 أدوار ثم يعيدها إلى حالتها السابقة
- تظهر أخطاء متكررة في السجل، رغم أنه سبق أن تعامل معها
- يبدو لك أن الشرط تحقق، لكن الوكيل يقول «لم يتحقق»
- يزداد استخدام الرموز في كل دور، من دون إحراز تقدم في الشيفرة
ما عليك فعله بعد ذلك:
- في Claude Code: استخدم
/goal clear، ثم اجعل الشرط أكثر تحديداً - في Codex: استخدم
/goal pause، وافحص سلسلة المحادثة الحالية، وعدّل الشرط باستخدام/goal edit، ثم نفّذ/goal resume - في كليهما: تحقق من إمكانية التحقق فعلياً من المعيار (أن يعيد أمر ما exit 0 أو ينتج مخرجات محددة)
غالباً ما يكون سبب الحلقة هو المهمة نفسها، لا الوكيل. يفترض شرط «اجتياز جميع الاختبارات» أن اجتياز الاختبارات ممكن أصلاً. إذا كانت في الشيفرة مشكلة معمارية عميقة، فسيواصل الوكيل الدوران حول العَرَض.
معايير «الإنجاز»: الانضباط في المهام باستخدام /goal
أهم النقاط
المعيار الجيد هو أمر يعيد exit 0 أو يخرج نتيجة محددة. «اجتازت جميع الاختبارات» يصلح. أما «أصبحت الشيفرة أنظف» فلا يصلح. الأفضل هو الجمع بين فحص رسمي ومقياس قابل للقياس، مثل الاختبارات مع حد أدنى للتغطية.
تذكر OpenAI هذه القاعدة بوضوح في Codex Cookbook الرسمي:
لا يُعد الهدف مكتملاً لمجرد أن النموذج يعتقد أنه كذلك. لا يكتمل الهدف إلا بعد التحقق من النتيجة بمقارنتها بالملفات أو الاختبارات أو السجلات أو الاختبارات المعيارية أو غيرها من المخرجات الملموسة.
قوالب معايير تحقق نتائج فعلية:
| نوع المعيار | طريقة صياغته |
|---|---|
| الاختبارات | «يعيد pytest tests/ القيمة exit 0 وتبلغ التغطية 80% على الأقل» |
| الأنواع | «يُبلغ mypy strict عن صفر أخطاء في src/» |
| Lint | «يعيد eslint . القيمة exit 0 في جميع الملفات المعدّلة» |
| البناء | «ينفّذ npm run build بنجاح من دون أخطاء TypeScript» |
| الاختبار المعياري | «يُظهر k6 run perf test أن p95 أقل من 200 ms» |
| Diff | «يُظهر git diff تغييرات في الملفات X وY وZ فقط» |
| مركب | «اجتاز pytest الاختبارات، وأبلغ mypy strict عن صفر أخطاء، واجتاز ruff check» |
يجمع مثال Combo بين الاختبارات وmypy وlint. إذا ظل أي فحص واحد في حالة فشل، فلن يُغلق الهدف. ولن يكون لدى المُقيّم مجال للتحايل.
أنماط مضادة:
- «الشيفرة أفضل»
- «تحسنت سهولة الاستخدام»
- «تحسن الأداء»
- «اكتملت الوثائق»
يكمن الفرق بين «يعمل» و«لا يعمل» في إمكانية التحقق. إذا تعذر التحقق من معيار بأمر، فلا يمكن التحقق منه على الإطلاق. وهذا أيضاً ما تعنيه OpenAI بـ«الاتساق على مدى أفق زمني طويل»: يستطيع الوكيل التفكير طويلاً، لكنه لا يستطيع أن يقرر بنفسه ما الذي يُعد «جيداً بما يكفي».
يمكنك اختبار فكرة «مطالبة واحدة، نتيجة واحدة» في مشروع حقيقي: عيّن /goal، وصغ معياراً، وشغّله، ثم حلّل ما حدث من أخطاء.
المصادر
تعرّف على Ailoot.
المزيد من التفاصيل
أسئلة شائعة
ما معيار الإتمام المفيد لأمر /goal؟
حدد نتيجة قابلة للفحص: اسم الاختبار أو فحص الأنواع أو البناء أو المعيار ونتيجته المطلوبة. اجمع الفحوص اللازمة صراحة وحدد الملفات المسموح تعديلها؛ فعبارة «حسّنه» لا تمنح الوكيل نقطة توقف قابلة للقياس.
ماذا أفعل عندما يكرر الوكيل التعديلات الفاشلة نفسها؟
قاطع التشغيل وافحص السجل. إذا كان يغير الملفات نفسها ثم يتراجع عنها مرارًا، فضيّق المهمة أو اجعل المعيار أدق. تحقق من إمكان نجاح الفحوص المطلوبة فعلًا قبل الاستئناف.