# Claude Code: حد 30 دقيقة للأوامر التي تعمل في الخلفية

> يوقف Claude Code أمرًا يعمل في الخلفية بعد 30 دقيقة في عمليات التشغيل غير المراقبة: -p وAgent SDK وCI والسحابة. تعرّف على كيفية زيادة الحد وما يجب فعله بعد توقف الأمر.

Source: https://ailoot.ai/blog/ar/claude-code-background-30-min-timeout/
Canonical: https://ailoot.ai/blog/ar/claude-code-background-30-min-timeout/
Language: ar
Publisher: Ailoot (https://ailoot.ai/)
Translation: guide-043
Revision: sha256-233c57f0bac166993651b710be4cee681bfd9bb78b00b81d37fe2675c6232e90


يوقف Claude Code أمرًا يعمل في الخلفية بعد 30 دقيقة عندما يعمل من دون مراقبة: عند تشغيله باستخدام العلامة `-p`، أو في تطبيق Agent SDK، أو مهمة CI، أو جلسة سحابية. إذا حدّد Claude مدة للأمر نفسه، فسيعمل لمدة لا تتجاوز ساعتين، بينما لا توجد قيود على المدة في الطرفية العادية وتطبيق سطح المكتب وVS Code منذ الإصدار 2.1.288.

كنت أقضي اليوم كله أمام الشاشة: أعطي الوكيل خطوة، وألقي نظرة على النتيجة، وأجري تصحيحًا، ثم أطلب منه المتابعة. مرحلة تلو الأخرى. ربما كانت الآلة تكتب الشيفرة، لكنني كنت أنا من يقودها. الآن أكتب خطة، وأقسمها إلى مراحل، وأوكل التنفيذ إلى وكلاء فرعيين طوال الليل ثم أغادر. خلال 8 ساعات من دوني، يتابع Claude تنفيذ الخطة: يدرس ويبني ويحسّن. وفي الصباح، أقضي وقتًا أطول في قبول العمل بدلًا من إعادة تنفيذه.

لكن إذا استخدم تشغيل ليلي `-p`، أو نُفّذ وفق جدول على خادم، أو في CI، أو في السحابة، فسيعمل خادم التطوير والبناء الذي يعمل في الخلفية لمدة 30 دقيقة. بعد ذلك سيوقفهما Claude Code، وسيتعثر العمل الليلي في منتصف الطريق. سأشرح من يشمله الحد، وكيفية زيادته، وما يجب فعله إذا كان الأمر قد توقف بالفعل. لنبدأ.

للحصول على مساعدة في استخدام الخدمة، راجع [وثائق Ailoot](https://ailoot.ai/docs/).



<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway for this section">

النقطة الأساسية

منذ الإصدار 2.1.285، يوقف Claude Code الأوامر التي تعمل في الخلفية بنفسه عند بلوغها الحد الزمني، ويخبر Claude بالسبب. ومنذ الإصدار 2.1.288، لا ينطبق الحد إلا على عمليات التشغيل غير المراقبة: `-p` وAgent SDK وCI والجلسات السحابية. يعمل الأمر الذي يبدأ مباشرة في الخلفية لمدة 30 دقيقة أو للمدة المحددة له، على ألا تتجاوز ساعتين. أما الأمر الذي يُنقل إلى الخلفية بعد انتهاء المهلة، فيعمل لمدة 30 دقيقة ابتداءً من لحظة نقله. يمكنك زيادة الحد باستخدام متغيرين في ملف الإعدادات `~/.claude/settings.json`.

</div>

## من يشمله الحد

الأمر الذي يعمل في الخلفية هو أمر يبدأه Claude ويتركه قيد التشغيل بينما ينشغل بشيء آخر. ومن أمثلته خادم تطوير يبدأ باستخدام `npm run dev`، أو عملية بناء تراقب التغييرات في الملفات.

تقول وثائق Claude Code:

<figure>
<blockquote>
<p>في جلسة تعمل من دون مراقبة، مثل تشغيل يستخدم العلامة <code><bdi>-p</bdi></code>، أو تطبيق Agent SDK، أو مهمة CI، أو جلسة سحابية، تخضع أوامر Bash وPowerShell التي تعمل في الخلفية لحد زمني. أما الجلسة المحلية التي تعمل فيها من الطرفية أو تطبيق سطح المكتب أو إضافة VS Code، فلا تخضع فيها الأوامر التي تعمل في الخلفية لحد زمني.</p>
<p>يتطلب الحد الزمني الإصدار Claude Code v2.1.285 أو إصدارًا أحدث. وقبل الإصدار v2.1.288، كان ينطبق على كل الجلسات.</p>
</blockquote>
<figcaption>— Anthropic، مرجع الأدوات، https://code.claude.com/docs/en/tools-reference.md</figcaption>
</figure>

بعبارة أخرى، ينطبق الحد عندما لا تكون حاضرًا: في تشغيل يستخدم `-p`، أو تطبيق Agent SDK، أو مهمة CI، أو جلسة سحابية. ولا يوجد حد في الطرفية أو تطبيق سطح المكتب أو VS Code عندما تعمل بنفسك في الجلسة. أُضيف الحد في الإصدار 2.1.285، وكان ينطبق في كل مكان قبل الإصدار 2.1.288.

إليك كيفية معرفة ما إذا كان هذا ينطبق عليك:

- **فتحت Claude Code في الطرفية أو VS Code، وأسندت إليه مهمة، ثم ذهبت للنوم.** لا يوجد حد إذا كان الإصدار 2.1.288 أو أحدث. أما في الإصدارات من 2.1.285 إلى 2.1.287، فينطبق الحد هنا أيضًا. شرحت كيفية التحديث إلى أحدث إصدار [في مقالة منفصلة](https://ailoot.ai/blog/ar/update-claude-code/).
- **يُشغّل Claude Code باستخدام `claude -p "task"`** وفق جدول، أو من تطبيق Agent SDK خاص بك، أو في CI. ينطبق الحد.
- **تُنفذ المهمة في جلسة سحابية.** ينطبق الحد.

عندما أكلّف الوكلاء بالعمل بصورة مستقلة، أكتب في التوجيه: «اكتب هذه الشروط وأسباب التوقف في خطة العمل. تحقّق من أن العملية لا تعتمد على نافذة سأغلقها أو على الكمبيوتر نفسه». حد الثلاثين دقيقة أحد هذه الأسباب.





## ما مدة تشغيل الأمر في الخلفية؟

يبدأ العد التنازلي عندما ينتقل الأمر إلى الخلفية. هناك حالتان.

**يبدأ Claude الأمر في الخلفية فورًا.** تكون مدته 30 دقيقة. إذا حدّد Claude مدة عند بدء الأمر (المعامل `timeout`)، فستكون تلك هي مدته، على ألا تتجاوز ساعتين.

**لا ينتهي الأمر بينما ينتظره Claude.** ينتظر Claude دقيقتين للأمر العادي. إذا لم ينتهِ، لا يوقفه Claude Code، بل ينقله إلى الخلفية. ومنذ تلك اللحظة، تكون مدته 30 دقيقة.

عند انتهاء الوقت، يوقف Claude Code الأمر ويخبر Claude بما يلي:

```
Background command "<description>" was stopped after reaching its background time limit
```

إذا لم يكتمل العمل، يمكن لـClaude تشغيل الأمر مجددًا بمدة أطول.

وهناك نقطة أخرى بخصوص `-p`. في هذا النوع من التشغيل، تنتهي الأوامر التي تعمل في الخلفية بعد نحو 5 ثوانٍ من رد Claude النهائي. ولن يستمر الخادم الذي يبدأ في تشغيل ليلي باستخدام `-p` إلا بقدر مدة التشغيل نفسه. ويصبح حد الثلاثين دقيقة مهمًا عندما يستمر التشغيل فترة أطول: يبدأ Claude خادمًا في البداية ثم يمضي ساعة في إجراء الفحوصات عليه.

## كيفية تنظيم العمل الليلي في Claude Code

سئمت من قيادة الوكيل طوال اليوم، فاستبدلت ذلك بتوجيه واحد للمنسّق. أبدأ تشغيله مساءً، ويعمل Claude طوال الليل متبعًا المراحل بالترتيب: يكتب ويفحص ويصلح وينشئ عمليات الإيداع بنفسه.

تكتب مجموعات من الوكلاء الفرعيين الشيفرة، ولكل وكيل ملفاته الخاصة كي لا يعوق بعضهم بعضًا. وتتولى مجموعة أخرى جديدة مراجعة العمل: مراجعة الشيفرة، وفحوصات الأمان، والفحوصات المباشرة. وإذا عثروا على مشكلة، تُصلح فورًا وتُعاد الفحوصات. ويتضمن التوجيه العبارة التالية: «إذا نفد سياقك، فسجّل الحالة؛ وسيُكمل التشغيل التالي العمل».

في المثال المذكور، أُنجزت بهذه الطريقة 8 مراحل من أصل 14 خلال 3 أيام.

هناك نقطتان فقط ينبغي وضعهما في الحسبان. لا يفكر المنسّق نيابة عنك: اكتب أولًا خطة مفصّلة بمراحلها، ثم ابدأ العمل الليلي. كما أنه يستهلك قدرًا كبيرًا من حصة اشتراكك، لذا لا جدوى كبيرة من إعداده لمهمة صغيرة. احرص دائمًا على تحديد عدد المحاولات، وإلا فسيستهلك الوكيل حصة اشتراكك كاملة خلال الليل. شرحت كيفية تعيين حدود الإنفاق هذه [في مقالة منفصلة](https://ailoot.ai/blog/ar/ai-agent-burned-budget-claude-code/).

## كيفية زيادة الحد

**الخيار الأول: اطلب من Claude.** يختار Claude مدة أمر معين؛ ولا تحددها بنفسك. لكن يمكنك كتابة ما يلي في المهمة: «أبقِ خادم التطوير في الخلفية لمدة ساعتين». لا يمكنك تجاوز ساعتين بهذه الطريقة.

**الخيار الثاني: استخدام متغيرات في ملف الإعدادات.** القيم بوحدة المللي ثانية. لا يمكنك خفض الحدين عن 30 دقيقة وساعتين؛ بل يمكنك زيادتهما فقط.

- **`BASH_DEFAULT_TIMEOUT_MS`**: يؤدي ضبطه على قيمة أعلى من `1800000` (30 دقيقة) إلى تغيير القيمة الافتراضية البالغة 30 دقيقة. وينطبق على الأوامر التي يبدأها Claude في الخلفية من دون تحديد مدة، وعلى الأوامر التي تُنقل إلى الخلفية بعد انتهاء المهلة. وإذا ضبطته على قيمة أعلى من `7200000` (ساعتين)، فسيزداد الحد الأقصى أيضًا.
- **`BASH_MAX_TIMEOUT_MS`**: يؤدي ضبطه على قيمة أعلى من `7200000` إلى زيادة الحد الأقصى البالغ ساعتين. لكنه لا يغيّر القيمة الافتراضية البالغة 30 دقيقة؛ فالأمر الذي لا تُحدَّد له مدة سيظل يتوقف بعد 30 دقيقة.

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

إذا كنت لا تريد الخوض في التفاصيل: إذا كنت تحتاج إلى 3 ساعات للأوامر العادية وللحد الأقصى، فاضبط `BASH_DEFAULT_TIMEOUT_MS` على `10800000`. هذا يكفي؛ ولا تحتاج إلى المتغير الثاني.

يوجد ملف الإعدادات في مجلد `.claude` داخل مجلدك الرئيسي: `~/.claude/settings.json` على macOS وLinux، و`%USERPROFILE%\.claude\settings.json` على Windows. إذا لم يكن الملف موجودًا، فأنشئه. يبدو إعداد حد مدته ساعة واحدة كما يلي:

```json
{
  "env": {
    "BASH_DEFAULT_TIMEOUT_MS": "3600000"
  }
}
```

إذا كان الملف يحتوي بالفعل على كتلة `env`، فأضف السطر إليها. تعتمد الجلسة قيد التشغيل القيم الجديدة عند حفظ الملف. أما حذف متغير، فلا يسري مفعوله إلا عند تشغيل `claude` في المرة التالية.

يجب أن يكون الملف على الكمبيوتر الذي يعمل عليه الوكيل. ولكي يعمل الوكيل طوال الليل، يجب ألا يدخل الكمبيوتر في وضع السكون. وبدلًا من ذلك، يمكنك تشغيل Claude Code على خادم بعيد ووضع الإعدادات هناك.

## إذا كان الأمر قد توقف بالفعل

لا تحتاج إلى فعل أي شيء يدويًا. يخبر Claude Code Claude بسبب توقف الأمر، لذا اسأله أولًا عما حدث.

ثم تابع خطوة بخطوة:

1.  **تشغيل طويل لمرة واحدة، بمدة تصل إلى ساعتين.** اطلب من Claude إعادة تشغيل الأمر بمدة أطول.
2.  **تحتاج الأوامر بانتظام إلى أكثر من 30 دقيقة.** اضبط `BASH_DEFAULT_TIMEOUT_MS` على قيمة أعلى من `1800000` في ملف الإعدادات، كما في المثال أعلاه. وإذا كنت تحتاج إلى أكثر من ساعتين، فاضبط `BASH_MAX_TIMEOUT_MS` هناك أيضًا على قيمة أعلى من `7200000`.
3.  **شغّل الأمر مرة أخرى.** لا تقدم الوثائق أي ضمانات بشأن أمر كان يعمل بالفعل في الخلفية قبل إجراء التغيير.
4.  **تحقق من نتيجة التشغيل التالي.** إذا احتوى تقرير Claude مجددًا على العبارة “stopped after reaching its background time limit”، فهذا يعني أن الإعداد لم يُطبّق على ذلك الأمر.

الوكلاء الفرعيون والروتينات هما ما يُبقي الوكيل يعمل أثناء غيابك.

شرحت كيفية تشغيل وكيل في حلقة طوال الليل [في مقالة منفصلة](https://ailoot.ai/blog/ar/claude-code-loop-engineering/). وشرحت [هنا](https://ailoot.ai/blog/ar/claude-code-safe-overnight-setup/) كيفية إعداد Claude Code كي لا يفسد المشروع أثناء الليل.

تحقق من الخطوة التي توقف تشغيلك الليلي، وقارن السبب بالحدود المذكورة أعلاه.

<div class="section" role="doc-bibliography" aria-label="Sources">

### المصادر

- [Claude Code: مرجع الأدوات](https://code.claude.com/docs/en/tools-reference.md) - الحالات التي ينطبق فيها الحد، والإصداران 2.1.285 و2.1.288، ومدتا 30 دقيقة وساعتين، ونقل الأوامر إلى الخلفية بعد انتهاء المهلة، ونص الإشعار، والمتغيران BASH_DEFAULT_TIMEOUT_MS وBASH_MAX_TIMEOUT_MS.
- [Claude Code: متغيرات البيئة](https://code.claude.com/docs/en/env-vars.md) - القيمة الافتراضية البالغة دقيقتين للأمر العادي، وكتلة env في ~/.claude/settings.json، وموعد اعتماد الجلسة القيم الجديدة.
- [Claude Code: التشغيل دون واجهة تفاعلية](https://code.claude.com/docs/en/headless.md) - عمليات التشغيل باستخدام <bdi>-p</bdi>؛ وتنتهي الأوامر التي تعمل في الخلفية بعد نحو 5 ثوانٍ من الرد النهائي.
- [Claude Code: الإعدادات](https://code.claude.com/docs/en/settings.md) - موقع ~/.claude/settings.json على Windows.

</div>





تعرّف على [Ailoot](https://ailoot.ai/).

## أسئلة شائعة

### هل يؤدي ترك جلسة تفاعلية طوال الليل إلى حد الثلاثين دقيقة؟

في Claude Code 2.1.288 فما بعده، ينطبق الحد المذكور في المقال على التشغيل غير المراقب مثل `-p` وAgent SDK وCI والجلسات السحابية. مجرد ترك جلسة محلية تفاعلية عادية مفتوحة لا يضعها في هذه الفئة.

### هل يبقي رفع المهلة خادمًا حيًا بعد انتهاء تشغيل -p؟

لا. تنتهي أوامر الخلفية في تشغيل `-p` بعد الرد النهائي بقليل. يغير رفع المهلة مدة الأوامر أثناء التشغيل؛ ولا يحول التشغيل إلى استضافة دائمة.


## Ailoot · الشركة ومحفظة مشاريعها

تستند Ailoot إلى خبرة تشغيلية متراكمة وقاعدة عملاء واسعة وخدمة مستقرة ومراقبة مستمرة لمؤشرات الأداء KPI.

الشركة ومحفظة مشاريعها: ملايين العملاء؛ مبيعات بالمليارات شهريًا.

توظف Ailoot هذه الخبرة التشغيلية لإتاحة الوصول عبر API إلى قدرات الذكاء الاصطناعي في منتجات العملاء ووكلائهم وتطبيقاتهم وعمليات الأتمتة.
