السبب الحقيقي وراء استحواذ Anthropic على Bun ليس سرعة وقت التشغيل بل التحكم في الوكلاء (Agents)
8 de mayo de 2026
0
Computing/SoftwareComments (0)
Log in to leave a comment
No posts yet
Log in to leave a comment
No posts yet
استحواذ Anthropic على Bun يعني ما هو أبعد من مجرد تحسين الأداء. فبيئة Node.js التقليدية مصممة لتشغيل الأكواد التي يكتبها البشر بشكل مستمر وثابت. لكن وكلاء الذكاء الاصطناعي (AI Agents) مختلفون؛ فهم يقومون بعمليات تكرارية قصيرة المدى تُنفذ وتختفي آلاف المرات. وهنا يبرز عنق الزجاجة في Node.js الذي يستغرق أكثر من 100ms للتشغيل البارد (Cold Start)، بينما قلص Bun هذه المدة إلى حوالي 10ms. وهذا يعني أن دورة تفكير وعمل الوكيل تصبح أسرع بكثير.
من المؤلم رؤية فواتير قواعد بيانات المتجهات السحابية (Cloud Vector DB) المكلفة في كل مرة تنشئ فيها وكيلاً، ناهيك عن القلق بشأن أمن البيانات. باستخدام Bun، يمكنك تشغيل نظام ذاكرة عالي الأداء باستخدام bun:sqlite المدمج دون الحاجة لخدمات خارجية. هذا المحرك، المصنوع بدقة بلغة Zig، أسرع بـ 3 مرات على الأقل من المكتبات التقليدية في Node.js.
import { Database } from "bun:sqlite";.db.run("PRAGMA journal_mode = WAL;");. هذا الإعداد ضروري لضمان عدم إعاقة عمليات الكتابة لعمليات القراءة.db.prepare().بهذه الطريقة، ستحصل على بيئة RAG محلية بسرعة استجابة تضاهي Redis دون تكاليف إضافية. لن يحتاج الوكيل للذهاب بعيداً عبر الشبكة ليتذكر ما كان يفكر فيه قبل لحظات.
إن السماح للوكلاء بتنفيذ أوامر الطرفية (Terminal) مباشرة هو أمر مقلق دائماً بسبب الحساسية لهجمات حقن الشل (Shell Injection). واجهة Bun.$ البرمجية تحل هذه المشكلة هيكلياً؛ فعند استخدام القوالب النصية (Template Literals)، يتم التعامل مع المتغيرات بأمان تلقائياً. يمكنك إدارة البنية التحتية مباشرة داخل JavaScript دون الحاجة لسكربتات شل معقدة أو Makefile.
يمكن تكوين حلقة التصحيح الذاتي للوكيل كما يلي:
await $npm test.text().بفضل سرعة تثبيت الحزم التي تفوق npm بـ 30 مرة، تنتهي حلقة "التعديل والاختبار" هذه في ثوانٍ معدودة. مما يقلل بشكل جذري من الوقت الذي يستغرقه الوكيل لبناء البيئة بنفسه وحتى إتمام النشر.
من المحبط الانتظار لرؤية النتائج دون معرفة ما يفكر فيه الوكيل داخلياً. ومع ذلك، فإن بناء لوحة تحكم للمراقبة باستخدام React أو Vue قد يكون مبالغاً فيه. هنا يأتي دور Bun.WebView الذي أُضيف منذ الإصدار 1.3.12.
new Bun.WebView().view.navigate().view.evaluate().لا يتطلب الأمر أي إطار عمل منفصل أو عمليات بناء (Build) معقدة، لأنه يستخدم محرك المتصفح المدمج في نظام التشغيل مباشرة. يصبح تصحيح الأخطاء أسهل بكثير عند تصور الملفات التي يبحث فيها الوكيل ومدى الارتباط بين المعلومات في الوقت الفعلي.
رغم أن Bun متوافق مع Node.js، إلا أن حدوث تضارب في الوحدات الأصلية (Native Modules) قد يسبب صداعاً. في هذه الحالة، بدلاً من التغيير العشوائي، يفضل اتباع استراتيجية هجينة باستخدام حقل imports في ملف package.json.
process.versions.bun لتحميل واجهات Bun الحصرية مثل Bun.file() أو Bun.write بشكل منفصل.تطبيق هذا الأسلوب على AWS Lambda يحسن سرعة التشغيل بنسبة تزيد عن 60%. يمكنك الاستفادة من كافة مزايا أدوات Bun عالية الأداء دون التخلي عن المكتبات الغنية في النظام البيئي الحالي.