كيف تجعل جلسات Claude Code أسرع وأقل تكلفة؟
تصبح جلسات Claude Code بطيئة بسبب إعادة إرسال السياق بالكامل في كل طلب. اكتشف كيف تستخدم أمر context وcompact لتقليل استهلاك الرموز وتجنب التكاليف المرتفعة غير الضرورية.
كيفية منع جلسة Claude Code الطويلة من أن تصبح بطيئة ومكلفة
تصبح جلسة Claude Code الطويلة بطيئة ومكلفة لأن كل طلب يعيد إرسال السياق بالكامل، ولأن هذا السياق يزداد باستمرار. الحل هو اتباع ترتيب ثابت لتنظيف السياق. شغّل /context لمعرفة ما الذي يملأ نافذة السياق، واحذف العناصر التي تدفع تكلفتها في كل طلب، ثم استخدم /clear بين المهام غير المرتبطة، واستخدم /compact مع وضع تعليمة داخل المهمة الطويلة نفسها. اعمل في جلسات متواصلة، لأن برودة prompt cache تحوّل القراءة الرخيصة إلى إعادة كتابة كاملة لكل ما قلته.
تجد تفسير سبب احتساب التكلفة أصلاً في عداد الرموز المميز خلف جلسة الوكيل.
اقرأ /context قبل إجراء أي تغيير
لا تخمّن ما يملأ النافذة. سيخبرك Claude Code بذلك.
يرسم /context [all] استخدام السياق الحالي كشبكة ملونة، مع اقتراحات تحسين للأدوات كثيفة السياق وتضخم الذاكرة؛ بينما يوسّع all تفاصيل كل عنصر في وضع ملء الشاشة. اقرأ النتيجة كخمس فئات:
- مطالبة النظام (System prompt): تعليمات التشغيل الخاصة بـ Claude Code. ثابتة طوال الجلسة.
- تعريفات الأدوات: مخططات الأدوات المحملة، بالإضافة إلى أسماء الأدوات وتعليمات الخادم من خوادم MCP (بروتوكول سياق النموذج) المتصلة التي تم تأجيل تعريفاتها.
- ملفات الذاكرة:
CLAUDE.mdوالذاكرة التلقائية، التي يتم تحميلها عند بدء الجلسة. - الملفات ونتائج الأدوات: كل ملف تمت قراءته، وكل ما طبعته أوامرك.
- سجل الرسائل: أدوارك وردود النموذج.
الفئات الثلاث الأولى هي ضريبة ثابتة، تُدفع مع كل طلب طوال عمر الجلسة. أما الفئتان الأخيرتان فتنموان. قلل الضريبة الثابتة مرة واحدة في البداية؛ وأدر الجزء المتنامي باستمرار.
هناك سلسلتان نصيتان تخبرانك بأن النافذة ممتلئة:
Context exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue.
Context is 94k tokens past the 200k-token compaction window — run /compact to reduce usage.الأولى هي حد أقصى صارم، ويتم رفض الطلب؛ ويقرأ خطأ واجهة برمجة التطبيقات (API) المطابق Prompt is too long. الثانية هي نافذة ضغط، والتي يمكن أن تقع تحت نافذة السياق الحقيقية للنموذج في نموذج بمليون رمز (token). تنجح الطلبات بعد تجاوزها، لذا فهي تحذير وليست رفضاً.
في الخطة المدفوعة، يضيف /usage النصف الآخر، ويحدد السلوكيات مثل السياق الطويل أو إخفاقات التخزين المؤقت (cache misses) ويعزو الاستخدام الأخير إلى مهارات فردية، وعملاء فرعيين، وخوادم MCP. إذا أخبرك بأن المخصص قد استُنفد بالفعل، فإن نافذة الحد التي تنتظرها تحدد ما إذا كان تقليم السياق سيساعدك الآن أم أنك بحاجة إلى مسار مختلف للعودة إلى العمل.
ملف CLAUDE.md هو ضريبة دائمة، لذا حافظ على اختصاره
يتم تحميل CLAUDE.md الخاص بك في السياق عند بدء الجلسة ويبقى هناك. إذا كان يحتوي على إجراء نشر مفصل، فستظل هذه الرموز (tokens) موجودة أثناء إصلاح خطأ مطبعي في ملف اختبار. توجيهات Anthropic هي تضمين الأساسيات فقط والحفاظ على الملف تحت 200 سطر.
انقل الإجراءات إلى المهارات (skills). يتم تحميل المحتوى الكامل للمهارة عند استخدامها؛ بينما يتم تحميل وصفها عند بدء الجلسة ما لم تقم بضبط disable-model-invocation: true، الذي يبقيها خارج السياق حتى تستدعي المهارة. للمهارات ميزانيتها الخاصة بعد الضغط: يتم إعادة حقن النصوص، بحد أقصى 5,000 رمز لكل مهارة و25,000 رمز في الإجمالي، مع حذف الأقدم أولاً. يحافظ الاقتطاع على بداية الملف، لذا ضع أهم التعليمات بالقرب من أعلى SKILL.md.
ما ينجو من الضغط يحدد مكان التعليمات المناسب.
- يظل موجه النظام (system prompt) وأسلوب المخرجات دون تغيير، لأنهما ليسا جزءاً من سجل المحادثة.
- يتم إعادة حقن
CLAUDE.mdالخاص بجذر المشروع، والقواعد غير المحددة النطاق، والذاكرة التلقائية من القرص. - تُفقد القاعدة التي تحتوي على ترويسة
paths:حتى تتم قراءة ملف مطابق مرة أخرى. - يُفقد ملف
CLAUDE.mdالمتداخل في مجلد فرعي حتى تتم قراءة ملف في ذلك المجلد الفرعي مرة أخرى. - تستمر الخطافات (hooks) في العمل، لأن الخطاف يعمل ككود؛ فقط السياق الذي أضافه الخطاف سابقاً يتم تلخيصه مع بقية المحادثة.
لذا، القاعدة التي تعتمد عليها تنتمي إلى CLAUDE.md في جذر المشروع: يقوم Claude Code بمسح مخرجات الأدوات القديمة أولاً ثم التلخيص، لذا قد تُفقد التعليمات الواردة في بداية المحادثة. قم بتعديل الذاكرة باستخدام /memory. يحتفظ Claude Code بالنسخة التي حملها عند بدء الجلسة، لذا فإن التقليم في منتصف الجلسة يحافظ على ذاكرة التخزين المؤقت للموجه (prompt cache) ولا يتم تطبيقه إلا عند تنفيذ /clear أو /compact أو إعادة التشغيل التالية. فقدان السياق هو سبب واحد فقط لتوقف اتباع القاعدة، لذا عندما تظل القاعدة واضحة في نافذة السياق ويتم تجاهلها على أي حال، اعمل على معالجة الأسباب الأخرى قبل إعادة كتابتها.
المسح بين المهام، والضغط داخل المهمة الواحدة
يبدوان هذان الخياران متشابهين، لكن تكلفتهما تختلف كثيراً.
يبدأ /clear [name] محادثة جديدة بسياق فارغ. ولا يرسل أي طلب، لذلك لا يكلّف شيئاً. مرّر اسماً لتسمية المحادثة السابقة في منتقي /resume؛ أما /reset و/new فهما اسمان بديلان له. استخدمه فور الانتقال إلى مهمة غير مرتبطة، وإلا فستُعاد المهمة القديمة وتُحتسب تكلفتها مرة أخرى مع كل رسالة من المهمة الجديدة.
يحرّر /compact [instructions] مساحة من السياق مع مواصلة المحادثة نفسها. فهو يلخّص السجل حتى تلك اللحظة ويستبدله. استخدمه داخل مهمة طويلة عندما تحتاج إلى استمرار السياق.
أعطِ /compact تعليمة دائماً. يختصر /compact المجرّد السجل وفق مطالبة افتراضية لا تعرف أي جزء من العمل ما زلت تحتاج إليه. أما عند تزويده بتعليمة، فيحتفظ بالجزء المطلوب:
/compact focus on the auth bug fix
/compact keep only the plan and the diffإذا كنت تستخدم الضغط للسبب نفسه في كل مرة، فأضف تعليمة ثابتة إلى CLAUDE.md في مشروعك، تحت عنوان # Compact instructions. في جلسة جديدة، يطبع /compact القيمة Not enough messages to compact.، وهذا يعني أن المحادثة لا تحتوي على عدد كافٍ من الجولات لتلخيصها. وقد يحدث ذلك حتى مع امتلاء السياق، عندما تؤدي لصقة واحدة كبيرة إلى ملئه.
يحدث الخلط هنا بين تكلفتين. عندما تكون ذاكرة التخزين المؤقت دافئة، يشارك طلب التلخيص البادئة نفسها، لذلك يقرأ ذاكرة التخزين المؤقت الحالية بدلاً من إعادة معالجة السجل، ويذهب معظم وقته إلى إنشاء الملخص. يظل ضغط سياق كبير طلباً كبيراً، لأن المحادثة التي يجري تلخيصها هي المدخلات. أما الجولة التالية للضغط فليست الجزء البطيء؛ إذ تعيد إنشاء ذاكرة التخزين المؤقت لمطالبة أقصر بكثير.
يوجد أمران أقل تكلفة. يعيد /rewind الشيفرة والمحادثة إلى نقطة تحقق؛ وبالنسبة إلى مسار تريد التخلي عنه تماماً، فهو أفضل من الضغط لأنه يقتطع السجل عند بادئة موجودة مسبقاً في ذاكرة التخزين المؤقت. ويضيف /recap ملخصاً كمخرجات للأمر بدلاً من استبدال السجل، لذلك تظل البادئة المخزنة مؤقتاً كما هي.
عندما يتكرر الضغط التلقائي مراراً، تظهر الرسالة التالية:
Autocompact is thrashing: the context refilled to the limit...نجح الضغط، لكن النافذة امتلأت من جديد عدة مرات متتالية، لذلك أوقف Claude Code إعادة المحاولة. قد يكون ملف كبير أو مخرجات أداة كبيرة أحد الأسباب. استعد بالاطلاع على الملف الكبير ضمن نطاقات من الأسطر، أو بتشغيل /compact مع تحديد نطاق يسقط المخرجات الكبيرة، أو بنقل هذا العمل إلى وكيل فرعي، أو باستخدام /clear إذا كانت المحادثة السابقة قد انتهت.
خوادم MCP تمثل عبئاً ثابتاً
يضيف كل خادم MCP تتصل به عبئاً إلى كل طلب طوال الجلسة. أنت تدفع تكلفة هذا العبء سواء استخدمت الخادم أم لا.
يخفف Claude Code من حدة هذه المشكلة. يتم تأجيل تعريفات أدوات MCP افتراضياً، لذا تدخل أسماء الأدوات وتعليمات الخادم إلى السياق قبل أن يحمّل Claude تعريف أداة محددة. نفّذ /context لمعرفة التكلفة الحقيقية لخوادمك، ونفّذ /mcp disable <name> لإسقاط خادم لن تستخدمه اليوم. إذا كنت تشغّل خوادم MCP الخاصة بك على خادم افتراضي خاص (VPS)، فإن الحسابات نفسها تحدد عدد الأدوات التي يجب أن يعرضها خادم واحد.
قم بهذا الإجراء في بداية الجلسة. بينما تظل التعريفات مؤجلة، فإن الاتصال بخادم أو قطع الاتصال به لا يؤدي إلا إلى إلحاق بيانات بالمحادثة، ويبقى التخزين المؤقت فعالاً. في الحالات التي يتم فيها تحميل التعريفات في البادئة (prefix) -لأن البحث عن الأدوات معطل، أو غير متاح، أو أقل من حد auto الخاص به- فإن التغيير نفسه سيجعل الطلب التالي يعيد قراءة كل شيء.
رشِّح مخرجات الأدوات المطوّلة قبل إدخالها إلى السياق
نتيجة الأداة هي مدخلات، وتُعاد هذه المدخلات في كل دور لاحق. لا يكون تشغيل اختباري يعرض 20,000 رمز مميز من المخرجات تكلفة تُدفع مرة واحدة؛ بل تدفع تكلفته مجدداً في كل دور إلى أن تخرج هذه المخرجات من نافذة السياق.
رشِّح المخرجات من المصدر. يحوّل hook يختصر تشغيل الاختبار إلى حالات الفشل قبل أن يراها Claude ذلك الجدار من المخرجات إلى بضع مئات من الرموز المميزة، في هذا الدور وفي كل مرة تُعاد فيها:
npm test 2>&1 | grep -E "FAIL|Error:" | head -40لا تدخل hooks إلى السياق بحد ذاتها، لأنها تعمل بصفتها code. طبّق المنطق نفسه على أي أداة تتجاوز مخرجاتها حجم شاشة واحدة. وينطبق الأمر نفسه على ملف يتكون من 3,000 سطر: اطلب نطاق الأسطر الذي تحتاج إليه، لأن الملف بأكمله يظل في نافذة السياق بعد وصوله.
حدّد نطاق ما يقرأه الوكيل، وفوّض الأعمال كثيرة الضجيج
إنّ الطلب الذي يحدّد الملف والعَرَض يقرأ ذلك الملف. أمّا الطلب المفتوح لترتيب المشروع، فيقرأ كل ما يقرّر الوكيل أنّه ذو صلة، وتبقى كل قراءة من هذه القراءات ضمن نافذة السياق.
فوّض الأعمال كثيرة المخرجات إلى وكيل فرعي. تستهلك عمليات الاختبار ومعالجة السجلات سياقاً فعلياً؛ ويحافظ الوكيل الفرعي على هذه المخرجات في نافذته الخاصة، ثم يعيد ملخصاً فقط. المفاضلة هي أنّ للوكيل الفرعي موجّهَاً وذاكرة تخزين مؤقت منفصلين عن الوكيل الرئيسي، لكن يمكن لاستدعائه الأول الاستفادة من ذاكرة تخزين مؤقت موجودة من وكيل سير عمل يستخدم البادئة نفسها أو من تشغيل سابق له. تستخدم الوكلاء الفرعية افتراضياً مدة تخزين مؤقت قدرها خمس دقائق حتى مع الاشتراك؛ ويحدّد subagentPromptCacheTtl: "1h" مدة التخزين الأطول. تحميك عملية التفويض من استهلاك سياقك الرئيسي بصورة موثوقة، لكنها لا تقلّل دائماً إجمالي عدد الرموز.
ساعة التخزين المؤقت: اعمل على فترات متواصلة
تجعل التخزين المؤقت للمطالبات إعادة الإرسال منخفضة التكلفة. تكلّف كتابة البادئة 1.25x من السعر الأساسي للإدخال، أو 2x عند استخدام مدة الصلاحية البالغة ساعة واحدة. وتكلّف قراءتها 0.1x على Haiku 5.5، و0.05x على Opus 5.5 وSonnet 5.5 (أي $0.20 و$0.10 لكل مليون رمز)، و0.025x على Fable 5.1 (أي $0.25 لكل مليون رمز). يؤدي كل استخدام إلى تحديث الإدخال من دون تكلفة إضافية، لذلك يبدأ احتساب المدة من آخر استخدام. توضّح هذه المعاملات شكل الفاتورة، لكنها لا تحدد قيمتها، لذلك اقرنها بـالتكلفة الفعلية لمليون رمز لتحويل نافذة سياق كاملة إلى قيمة بالدولار.
تعتمد مدة الصلاحية التي تحصل عليها على طريقة المصادقة، ولذلك فإن العبارة العامة «تنتهي صلاحية التخزين المؤقت بعد خمس دقائق» غير صحيحة.
- في اشتراك Claude، يطلب Claude Code مدة الصلاحية البالغة ساعة واحدة تلقائياً للمحادثة الرئيسية ضمن الاستخدام المشمول في خطتك.
- بعد تجاوز حد خطتك والبدء في استخدام أرصدة الاستخدام، تُحاسب على ذلك الاستخدام، ولذلك تعود مدة الصلاحية إلى خمس دقائق ما لم تختر مدة الساعة الواحدة بنفسك.
- عند استخدام مفتاح API أو موفر سحابي، تبقى مدة الصلاحية خمس دقائق. يؤدي ضبط
promptCacheTtlعلى1h، أوENABLE_PROMPT_CACHING_1H=1، إلى اختيار مدة الساعة الواحدة، بينما يعيدFORCE_PROMPT_CACHING_5M=1المدة إلى خمس دقائق.
تبقى النصيحة المتعلقة بإيقاع العمل نفسها في الحالتين: اعمل على فترات متواصلة، لأن فجوة الخمول التي تتجاوز مدة الصلاحية تجعل دورك التالي يعيد كتابة البادئة المتراكمة بأكملها. لا تكلّف جلسة Claude Code منفصلة تعمل داخل tmux شيئاً أثناء الخمول، لكن التخزين المؤقت الدافئ هو ما تفقده فترة الخمول.
تتسبب بعض الإجراءات في حذف التخزين المؤقت رغم استمرارك في العمل: تبديل النماذج، وتغيير مستوى الجهد في النماذج الأقدم، وتفعيل الوضع السريع، وتوصيل خادم MCP أو فصله، أو رفض أداة كاملة عند تحميل تعريفات الأدوات، وتفعيل إضافة تضيف أدوات أو تعطيلها، وإجراء الضغط، وحذف الصور القديمة بعد احتواء المحادثة على عدد كبير منها، وترقية Claude Code. في Opus 5.5 وSonnet 5.5 وHaiku 5.5 وFable 5.1 عند استخدام مفتاح API أو اشتراك، لا يؤدي تغيير مستوى الجهد الآن إلى الاحتفاظ بالتخزين المؤقت إلا إذا كانت إصدارات beta التجريبية معطّلة أو كانت مؤسستك تستخدم إعداد HIPAA؛ عندئذ يؤدي تغيير الجهد إلى إبطال التخزين المؤقت. يمثل /model المفاجأة المعتادة، لأن لكل نموذج تخزيناً مؤقتاً خاصاً به، ولذلك يقرأ الطلب التالي السجل الكامل من دون أي إصابات في التخزين المؤقت رغم تطابق المحتوى. تُحاسب على إعادة القراءة وفق أسعار النموذج الوجهة باعتبارها كتابة تخزين مؤقت جديدة، لذلك يؤدي التبديل إلى Fable في منتصف الجلسة إلى احتساب السجل المتراكم بأكمله وفق أسعار Fable المنشورة لكتابة التخزين المؤقت: $12.50 لكل مليون رمز عند استخدام مدة الصلاحية البالغة خمس دقائق، أو $20 عند استخدام مدة الساعة الواحدة. وينطبق ذلك نفسه على Fable 5 وFable 5.1.
تحرير الملفات، وتحرير CLAUDE.md، واستدعاء المهارات والأوامر، وتشغيل /recap، والرجوع إلى حالة سابقة، وإنشاء وكيل فرعي، كلها تحافظ على التخزين المؤقت. ويقتصر نطاقه على جهاز واحد ودليل واحد، لذلك لا تستفيد جلستان في دليلين مختلفين من التخزين المؤقت لبعضهما. يعمل Claude Code في Desktop بالمحرك نفسه ويقرأ ملفات إعداد CLI، بما فيها CLAUDE.md وخوادم MCP وhooks والمهارات؛ لكن إعادة استخدام التخزين المؤقت لا تزال تتطلب تطابق بادئات الطلبات. في Linux، يُعد Desktop تثبيتاً تجريبياً منفصلاً إلى جانب CLI.
لمعرفة ما إذا كان التخزين المؤقت يعمل، اقرأ current_usage. كُتب cache_creation_input_tokens وفق سعر كتابة التخزين المؤقت، بينما عُرض cache_read_input_tokens وفق سعر قراءة التخزين المؤقت للنموذج، أي بين 2.5% و10% من سعر الإدخال القياسي بحسب النموذج. وتُعد النسبة المرتفعة بين القراءة والإنشاء مؤشراً سليماً. إذا ظل الإنشاء مرتفعاً في كل دور، فهذا يعني أن شيئاً ما في بادئتك يتغير باستمرار.
هل تعالج نافذة السياق الأكبر هذه المشكلة؟
جزئياً. تعمل كل النماذج الحالية، وهي Fable 5.1 وOpus 5.5 وSonnet 5.5 وHaiku 5.5، ضمن نافذة سياق تبلغ 1 million token، وتعمل عملية ضغط السياق بالطريقة نفسها عند هذا الحد الأكبر. لا تتغير التكلفة، لأن المطالبة الكاملة تُرسل من جديد وتُحتسب تكلفتها في كل دور. تحدد النافذة الأكبر الوقت الذي تُجبر فيه على اتخاذ إجراء، بينما تحدد النظافة التكلفة. إذا كانت الفاتورة هي المشكلة وليست السعة القصوى، فإن خطة Claude المناسبة لطريقة عملك هي التي تحدد ما إذا كنت تنفق دولارات أو رصيد الخطة.
تحرير السياق وضغطه في API أمران مختلفان
إذا كنت تبني وكيلك الخاص باستخدام Messages API، فلن تتوفر أوامر slash، وعليك تنفيذ ذلك بنفسك. خصّص ميزانية لهذا العمل منذ البداية، وتحقق من الحصص المجانية في API قبل شراء الأرصدة. يستطيع مشتركو Max وUltra وTeam المطالبة بأرصدة API شهرية عبر ربط مؤسسة في Console؛ وتغطي هذه الأرصدة رموز API، لكن لا يمكن استخدامها في Claude Code التفاعلي. يحصل المستخدمون الجدد على قدر صغير من الأرصدة المجانية لاختبار API. أما الحصة المجانية المستمرة التي تذكرها Anthropic، وهي 1,550 ساعة مجانية شهرياً لكل مؤسسة، ثم $0.05 لكل ساعة ولكل حاوية، فتغطي وقت تشغيل حاويات تنفيذ التعليمات البرمجية. ويُحاسب هذا الوقت بشكل منفصل عن الرموز، ولا يفرض تكلفة إضافية عندما يتضمن الطلب نفسه web_search_20260209 أو إصداراً أحدث، أو web_fetch_20260209 أو إصداراً أحدث. يُعاد إرسال السجل الكامل غير المختصر في كل دورة، وتُحتسب تكلفته بالكامل: بسعر قراءة ذاكرة التخزين المؤقت عندما تكون البادئة مخزنة مؤقتاً، وبسعر الإدخال الكامل أو بسعر إضافي لكتابة ذاكرة التخزين المؤقت عندما لا تكون كذلك. ويحدد المزوّد الذي تبني عليه هذا الحساب قبل حدوث أي تقليص. لذلك، إذا كان الاختيار ما يزال مفتوحاً، احسب تكلفة عبء العمل نفسه على واجهتي API بدلاً من مقارنة الأسعار المعلنة لكل رمز. توجد ميزتان على جانب الخادم تنفذان هذه المهمة، وهما ليستا الميزة نفسها.
تحرير السياق يمسح محتوى محدداً من سجل المحادثة انتقائياً مع نموه، ويستبدل كل نتيجة ممسوحة بنص نائب حتى يعرف Claude أن شيئاً أُزيل. هذه ميزة تجريبية: أرسل anthropic-beta: context-management-2025-06-27 واضبط الاستراتيجيات ضمن context_management.edits. يمسح clear_tool_uses_20250919 نتائج الأدوات، ويدير clear_thinking_20251015 كتل التفكير. وتكون قيمة trigger الافتراضية 100,000 من رموز الإدخال، وقيمة keep آخر 3 استخدامات للأداة، وقيمة clear_tool_inputs هي false، لذلك تبقى المدخلات ولا تُرسل إلا النتائج.
الضغط ينشئ ملخصاً ويستبدل به سجل المحادثة الكامل. ويتوفر في نسختين تجريبيتين. يعمل الضغط وفق العتبة داخل طلباتك العادية: أرسل anthropic-beta: compact-2026-01-12 واستخدم نوع التحرير compact_20260112. وتكون قيمة المشغّل الافتراضية {"type": "input_tokens", "value": 150000}، ويجب ألا تقل القيمة عن 50,000. أما الضغط عند الطلب، فيتيح لشيفرتك تحديد التوقيت: أرسل anthropic-beta: compact-2026-09-04 مع "compaction": {"type": "summarize"} على المستوى الأعلى، وستكون الاستجابة كتلة الملخص وحدها. تذكر نظرة Anthropic العامة إلى الضغط أن عليك استخدام الضغط عند الطلب حيثما كان متاحاً.
يحتوي الضغط وفق العتبة على قاعدة تسليم واحدة تعطل الوكلاء من دون ظهور واضح. تبدأ الاستجابة بكتلة محتوى compaction تحتوي على الملخص، وتليها كتلة النص العادية. يجب تمرير هذه الكتلة في الطلبات اللاحقة، وعندها تُسقط API كل كتلة محتوى تسبقها. عملياً، ألحِق كامل response.content، وليس النص وحده. ويعمل الضغط عند الطلب بالعكس: تزيل الرسائل الملخصة بنفسك، وتضع الكتلة المُعادة أولاً في messages، ثم تعيد إرسالها كما أُعيدت تماماً، بما في ذلك التوقيع. واصل إرسال رأس beta compact-2026-09-04 في كل طلب يحمل تلك الكتلة الموقعة.
تصف وثائق Anthropic الضغط على جانب الخادم بأنه الاستراتيجية الأساسية لإدارة السياق في المحادثات الطويلة، وتحرير السياق بأنه الخيار الذي يوفر تحكماً أدق في المحتوى الذي يُمسح. تحقق من دعم النموذج أولاً. تدعم كل النماذج الحالية نوعي الضغط، بما في ذلك Haiku 5.5؛ أما claude-haiku-4-5 الأقدم فلا يدعمهما، وتحمل كل صفحة ضغط قائمته الحالية. لا تتحكم أي من هذه الميزات التجريبية في /compact الخاص بـClaude Code. وتصف وثائقه ذلك بأنه طلب تلخيص منفصل يرسله العميل مع سجلك.
FAQ
لماذا تصبح جلسة Claude Code أبطأ وأكثر تكلفة كلما طال تشغيلها؟
لأن المحادثة كاملة تُرسل مرة أخرى في كل دور، ولذلك يحمل سؤال من سطر واحد في جلسة مفتوحة طوال اليوم سياق اليوم بأكمله. تجعل ميزة التخزين المؤقت للمطالبات هذه العملية منخفضة التكلفة ما دام التخزين المؤقت صالحاً: تبلغ تكلفة القراءة 0.1x من معدل الإدخال الأساسي في Haiku 5.5، و0.05x في Opus 5.5 وSonnet 5.5، و0.025x في Fable 5.1. عندما يفشل أحد الأدوار في الوصول إلى التخزين المؤقت، يُعاد حفظ البادئة نفسها بتكلفة 1.25x، أو 2x عند استخدام مدة صلاحية ساعة واحدة. شغّل /context لمعرفة ما الذي يملأ نافذة السياق، واقرأ ما الذي تُحاسب عليه جلسة Claude Code لمعرفة الآلية.
ما الفرق بين /clear و/compact في Claude Code؟
يبدأ /clear محادثة جديدة بسياق فارغ. لا يرسل أي طلب، ولذلك لا يترتب عليه أي تكلفة، وهو الخيار المناسب بين المهام غير المرتبطة. يحافظ /compact على المحادثة نفسها ويستبدل السجل بملخص، ولذلك فهو الخيار المناسب داخل مهمة واحدة طويلة. حدّد له محوراً، كما في /compact keep only the plan and the diff، لأن التعليمات تحدد ما سيبقى.
كيف أعرف ما الذي يستهلك نافذة سياق Claude Code؟
شغّل /context، أو /context all لعرض التفصيل الكامل لكل عنصر. يعرض ذلك مطالبة النظام، وتعريفات الأدوات، وخوادم MCP، وملفات الذاكرة، والسجل في شبكة ملوّنة، مع اقتراحات بشأن الأدوات التي تستهلك سياقاً كبيراً وتضخم الذاكرة. في الخطة المدفوعة، ينسب /usage أيضاً الاستخدام الأخير إلى المهارات والوكلاء الفرعيين وخوادم MCP الفردية.
هل ينبغي أن أستخدم نافذة سياق بسعة 1 million token بدلاً من ضغط السياق؟
تؤخر النافذة الأكبر المشكلة بدلاً من حلها. يعمل كل نموذج حالي (Fable 5.1 وOpus 5.5 وSonnet 5.5 وHaiku 5.5) بنافذة سياق بسعة 1 million token، ويعمل ضغط السياق بالطريقة نفسها فيها. ما زال كل دور يعيد إرسال المطالبة كاملة، وما زالت تكلفته تُحتسب، ولذلك تكون محادثة من 400,000 token مكلفة سواء أكانت تتسع لها النافذة أم لا.
ما الفرق بين تحرير السياق وضغطه في Claude API؟
يمسح تحرير السياق المحتوى القديم بشكل انتقائي، ولا سيما نتائج الأدوات، مع ترك نص بديل في موضع كل نتيجة حتى يعرف Claude أنها أزيلت. ينشئ الضغط ملخصاً ويستبدل السجل الكامل به. تطلق وثائق Anthropic على الضغط الاستراتيجية الأساسية للمحادثات الطويلة، وتقدّم تحرير السياق باعتباره الخيار الدقيق. كلتاهما ميزتان تجريبيتان لهما رؤوس خاصة بهما، وكلتاهما منفصلتان عن /compact في Claude Code.