برنامج سكريبت لإدارة ميزانية الرموز المميزة (Tokens) لمنع فواتير واجهة برمجة التطبيقات (API) الباهظة في Cloud Code
1. حظر الرسوم الزائدة من خلال تعيين الحد الأقصى للرموز المميزة
إذا تفاجأت يوماً بفاتورة واجهة برمجة التطبيقات أثناء تشغيل مشاريع صغيرة، فذلك لعدم وجود حد أقصى للميزانية. يحافظ الوكيل (Agent) على سياق المحادثة أطول مما تتوقع ويقرأ محتويات الملفات غير الضرورية بشكل متكرر. وإذا تم ترك الأمر دون مراقبة، فستختفي عشرات الآلاف من الرموز المميزة في غضون يوم واحد. يجب عليك فتح ملف ~/.claude/settings.json لتقييد الاستخدام اليومي والجلسات مباشرة.
فيما يلي طريقة إضافة كائن budget إلى ملف الإعدادات العام للمستخدم:
- افتح الطرفية (Terminal) وافتح الملف ~/.claude/settings.json باستخدام محرر النصوص.
- داخل كتلة JSON، أدخل القيمة 500000 لـ sessionLimit والقيمة 2000000 لـ dailyLimit.
- قم بتعيين warningThreshold إلى 0.75 و autoCompactAt إلى 0.60 ثم احفظ الملف.
عندما تصل سعة السياق إلى 60 بالمائة، يتم ضغط سجل المحادثة تلقائياً ويختفي الهدر غير الضروري للرموز المميزة. ونظراً لأنه يتم حظر الجلسة قبل الوصول إلى الحد اليومي، يمكنك التخلص من القلق بشأن تجاوز الميزانية.
2. إنشاء قاطع حلقة (Loop Breaker) للمقاطعة الإجبارية عند حدوث خطأ 3 مرات متتالية
إذا تعثر الوكيل في نفس النقطة بسبب أخطاء نحوية أو مشاكل في مسار الملفات، فسوف يستمر في الدوران في حلقة لا نهائية دون حلها. وإذا تركت هذه الحالة دون علاج، فسوف تنفد رموز الجلسة في غضون دقائق قليلة. ولا فائدة من مجرد كتابة تحذير في موجه الأوامر (Prompt). يجب عليك ربط نظام الخطافات (Hooks) المستند إلى سكريبت الشل للحع في الحظر فعلياً.
قم بإنشاء سكريبت خطاف ينهي العملية فوراً عند اكتشاف نفس الخطأ 3 مرات متتالية:
- أنشئ الملف .claude/hooks/loop-breaker.sh في مجلد المشروع وا منح صلاحيات التنفيذ.
- داخل السكريبت، ارجع إلى ملف الحالة المؤقت لزيادة عداد الأخطاء بمقدار 1، وإذا كان العدد التراكمي 3 أو أكثر، قم بإخراج خطأ قياسي وإرجاع رمز الإنهاء 2 لإيقاف العمل قسراً.
- قم بتسجيل مسار السكريبت المذكور في عنصر PostToolUseFailure في الملف .claude/settings.json لمراقبته في الوقت الفعلي.
بوضع هذه الأداة، ستختفي ظاهرة قيام الوكيل بإصلاح التعليمات البرمجية الخاطئة بلا حدود واستهلاك الرموز المميزة. يمكنك توفير الوقت الذي كان يضيع في جحيم تصحيح الأخطاء (Debugging).
3. فصل توجيه النماذج (Model Routing) ومناطق الموافقة اليدوية وفقاً لطبيعة العمل
إذا أوكلت جميع مهام البرمجة بالكامل إلى Claude، فلن تتمكن الميزانية من الصمود. يجب ترك مهام التنسيق البسيطة أو كتابة القوالب (Boilerplate) للنماذج الخفيفة، بينما تتطلب المهام التي لا يمكن التراجع عنها مثل ترحيل قاعدة البيانات موافقة المطور مباشرة. قم بإنشاء بيئة تشغيل تناسب صعوبة المهمة باستخدام اختصارات الشل (Shell Aliases).
فيما يلي إعداد فصل أوامر تفويض الوكيل حسب طبيعة العمل:
- افتح الملف ~/.bashrc أو ~/.zshrc.
- قم بتسجيل الأمر
alias cc-quick='claude --model claude-haiku-3-20250307 --token-budget 100000' لمهام التوثيق البسيطة.
- أضف الأمر
alias cc-dev='claude --model claude-sonnet-4-20250514 --token-budget 500000 --thinking-budget 8000' لتطوير الميزات العامة وأعد تشغيل الطرفية.
عند تطبيق هذه الطريقة، يعالج الوكيل 90 بالمائة من البرمجة المتكررة البسيطة بأمان، ويرتفع معدل طلبات الدمج (PR) المكتملة لكل مليون رمز مميز بشكل ملحوظ. إنها الطريقة الأكثر واقعية لتقليص تكاليف واجهة برمجة التطبيقات غير الضرورية إلى النصف بوضوح.