تكلفة
خفض تكلفة وكيل الذكاء الاصطناعي: ضغط مخرجات الطرفية في نافين
8 أغسطس 2026 · 3 دقائق قراءة · فريق نافين
كيف تضخّم مخرجات git والاختبارات وdocker وKubernetes السياق - وكيف تضغطها نافين قبل النموذج بلا أداة خارجية.
intro handled in meta - body only
في كل مرة يشغّل فيها وكيل برمجة أوامر مثل git status أو pytest أو docker compose أو kubectl get pods، يستلم النموذج المخرج كاملاً. هذه السجلات غالباً طويلة ومتكررة، وجزء صغير منها فقط يساعد على اتخاذ الخطوة التالية. يمتلئ السياق وترتفع الاستجابة وتتبعها الفاتورة.
تضغط نافين هذه المخرجات تلقائياً قبل دخولها إلى سياق النموذج. بلا بروكسي خارجي وبلا ثنائي إضافي: الضغط مدمج في أداة exec المحلية.
من أين تأتي رموز الوكيل
طلب الوكيل لا يقتصر على رسالتك. يشمل كل دور عادة:
- تعليمات النظام وقواعد المشروع؛
- مخططات الأدوات؛
- تاريخ الجلسة؛
- مخرج آخر أمر طرفية.
الكتل الثلاث الأولى تتكرر غالباً بين الأدوار وتستفيد من تخزين الموجّه عند توفره. الرابعة تتغير مع كل أمر. لذلك يثقل npm install أو kubectl describe المطوّلان التكلفة ونافذة السياق مباشرة.
لهذا قد تستهلك جلسة تصحيح ملايين الرموز عبر عشرات الطلبات رغم قصر تعليماتك.
ماذا يفعل الضغط
الضغط لا يخفي الأخطاء. يحافظ على الإشارة المفيدة ويزيل الضوضاء:
- أشرطة التقدم وتسلسلات ANSI؛
- أعمدة ثانوية في
docker psأوkubectl get؛ - أحداث ضعيفة الفائدة في
describe؛ - كتل اختبارات ناجحة طويلة حين تهمّ الإخفاقات فقط؛
- تقدم Git الذي لا يغيّر القرار التالي.
تصنّف نافين عائلة الأمر (git والاختبارات وKubernetes والتثبيت…) وتطبّق مرشحاً مناسباً ثم تعرض نسخة أقصر للنموذج. عند انخفاض الحجم الحقيقي يبقى السجل الكامل تحت .navin/tool-results/exec/.
التغطية
| العائلة | أمثلة | ما يحتفظ به النموذج |
|---|---|---|
| Git | status وdiff وlog وpush | الملفات المتغيرة والحالة المفيدة |
| الاختبارات | pytest وjest وplaywright | الإخفاقات والملخص |
| Python | ruff وmypy وpip وuv | النتائج أو ملخص التثبيت |
| JS / البناء | eslint وtsc وnext وnpm | الأخطاء أولاً |
| الحاويات | docker وpodman | أعمدة أساسية وسجلات بلا تكرار |
| Kubernetes | kubectl وoc وhelm | جداول مضغوطة ووصف أخف |
| البنية | terraform وmake وgradle | أخطاء وملخص |
| الشبكة | curl وgh | أجسام أو جداول قصيرة |
تُحل أغلفة مثل bash -lc '…' لتصنيف الأمر الحقيقي.
السلوك في منصة العمل
| الحالة | الأثر |
|---|---|
| أمر متزامن | ضغط بعد انتهاء العملية |
| أمر خلفي | ضغط عند اكتمال العملية |
| الطرفية أثناء التشغيل | المخرج الحي بلا تغيير |
تبقى الطرفية مقروءة؛ يستلم النموذج النسخة المضغوطة بعد اكتمال الأمر. الوثائق: Command output compaction.
أثر التكلفة
| نوع الجلسة | الأثر النموذجي |
|---|---|
| دردشة خفيفة بلا طرفية كثيرة | ضعيف |
| جلسة غنية بـ git والاختبارات وdocker | غالباً ملحوظ على حصة مخرجات الأدوات |
| تصحيح بسجلات كبيرة أو Kubernetes | أقوى على الحصة نفسها |
الضغط لا يزيل موجّه النظام ولا مخططات الأدوات ولا التاريخ. يعمل على الجزء الأكثر تغيّراً: مخرجات الأوامر. لحصص Free مقابل ميزانيات الاشتراك انظر النماذج المجانية والخطط.
مع روافع نافين الأخرى
| الرافعة | الدور |
|---|---|
ضغط exec | يقلل ضوضاء أدوات الطرفية |
| تخزين الموجّه | يعيد استخدام البادئة الثابتة |
| Plan / Mission | أقل أدواراً استكشافية |
| Project Brain | أقل إعادة قراءة للمستودع عند الاستئناف |
تخزين استجابات HTTP ضعيف الفائدة للوكلاء: كل دور له جسم مختلف.
أسئلة شائعة
هل تُحفظ الأخطاء المهمة؟
نعم. تعطي المرشحات أولوية للإخفاقات والنتائج المفيدة. يبقى السجل الخام على القرص عند الضغط.
هل أحتاج تفعيل خيار؟
لا. هذا سلوك exec الافتراضي في نافين.
هل يشمل Kubernetes وDocker؟
نعم، بما في ذلك kubectl وoc وhelm وأوامر docker/podman الشائعة.
هل يستبدل تخزين الموجّه؟
لا. التخزين للبادئة الثابتة والضغط للمخرجات المتغيرة.
كيف أستعيد المخرج الكامل؟
من الملف المذكور في ملاحظة [compacted…] تحت .navin/tool-results/exec/.
الخطوات التالية
- حمّل نافين.
- افتح مشروعاً في وحدة الكود.
- اترك الوكيل يشغّل git أو الاختبارات أو docker: الضغط تلقائي.