تطبيق سطح المكتب والإضافة
مبرمج إيجنت — العمل المحلي والرفع إلى مبرمج بمفتاح API | مُبَرمِج
«مبرمج إيجنت» تطبيق وكيل برمجة لسطح المكتب يعمل على مجلد المشروع في جهازك بأي مزوّد نماذج، وتأتي إضافة مبرمج مفعّلة فيه افتراضياً. بمفتاح API واحد يسحب مشروعاً من حسابك إلى مجلد، وبعد التعديل يرفعه إلى المشروع نفسه ضمن حدود باقتك، ثم ينشره بموافقتك.
في هذه الصفحة

التنزيل: ملف المُثبّت يظهر في صفحة التنزيلات حين يُنشر (/docs/desktop/install). التطبيق مبنيّ على خطّ عبدو كود وموزَّع كملف ثنائي للعملاء.
ما هو مبرمج إيجنت
وكيل برمجة على جهازك: يقرأ ملفات المجلد المفتوح ويعدّلها ويعاين النتيجة، ويعمل مع أي مزوّد نماذج تضبطه في الإعدادات. الفرق عن أي وكيل آخر أن إضافة «مبرمج» مثبّتة ومفعّلة فيه منذ التثبيت الأول: قوالب مبرمج وأقسامه ونظام التصميم والنشر والنطاقات، والجسر بين مجلدك ومشاريع حسابك. حذفُ الإضافة من الإعدادات ← الامتدادات نهائي ولا تعود.
ربط الحساب بمفتاح API
المفتاح يُنشأ من صفحة مفاتيح API في لوحتك (يبدأ بـmop_) ويُلصق في التطبيق: الإعدادات ← الامتدادات ← مبرمج ← «مفتاح الحساب». يُحفظ في خزنة التطبيق ولا يُكتب في المحادثة ولا في ملف. الصلاحيات التي يحتاجها الجسر: projects:read للسحب، وprojects:write للرفع، وpublish للنشر (ليست في الافتراضي — اخترها عند إنشاء المفتاح إن أردت النشر من التطبيق). راجع /docs/account/api-keys.
بعد الربط تعرض أداة الحساب (GET /api/v1/me) باقتك وحدودها: عدد المشاريع المستعملة والمتاحة، أقصى حجم للمشروع بالبايت، والمكدّسات التي يشملها العقد — وهي الأرقام نفسها التي يفرضها الرفع.
السحب: من مبرمج إلى مجلد
«اسحب المشروع إلى مجلد»: التطبيق يقرأ المشروع بملفاته (GET /api/v1/projects/{id}) ويكتبها في المجلد الذي تختاره، ويحفظ بجانبها ملفاً صغيراً .mubarmij.json فيه معرّف المشروع وبصمة الملفات (filesDigest) لحظة السحب. الكتابة فوق ملفات موجودة تحتاج موافقتك في المحادثة. يعمل مع مشاريعك أنت وحدك؛ مشروعُ غيرك ولو كان منشوراً يُرد عليه 404.
الرفع: من المجلد إلى مبرمج
«ارفع المجلد إلى المشروع»: التطبيق يجمع ملفات المجلد النصية (HTML وCSS وJS وJSON وSVG وMarkdown…) متجاهلاً node_modules و.git وملفات .env وأي ملف مخفي، ثم يرسلها إلى PUT /api/v1/projects/{id} مع expectedFilesDigest — بصمة النسخة التي سحبها. الخادم يحفظ نسخة من الملفات القديمة قبل الكتابة (تظهر في نسخ المشروع)، ويكتب الجديدة بمقارنة وتبديل.
- 409 تعارض: ملفات المشروع على مبرمج تغيّرت منذ سحبتها (من المحرّر أو نافذة أخرى). اسحب من جديد ثم أعد الرفع — لا يُمحى تعديل أحد.
- 413 الحجم: مجموع الملفات أكبر من حدّ باقتك. التطبيق يفحص الحدّ محلياً قبل الإرسال ويقول كم يزيد.
- 403 المكدّس: مجلد فيه
package.jsonبـNext.js على باقة لا تشمله يُرفض بالرمزSTACK_NOT_IN_PLANقبل أي كتابة — لا يُقبل ثم يُرفض نشره. - مشروع جديد: إن لم يكن للمجلد مشروع بعد، ينشئ التطبيق واحداً بعنوان تختاره ثم يرفع إليه؛ إنشاء المشروع يمرّ ببوابة عدد المشاريع نفسها التي تمرّ بها اللوحة.
حدود الباقة كما يفرضها الرفع
من عقد الباقات في الكود، لا من صفحة الأسعار:
| الباقة | المشاريع | حجم المشروع | المكدّس |
|---|---|---|---|
| «المجانية» | 1 | 1 ميغابايت | HTML ثابت فقط |
| «الأساسية» | 2 | 10 ميغابايت | HTML ثابت وNext.js |
| «المميزة» | 5 | 50 ميغابايت | HTML ثابت وNext.js |
| «الاحترافية» | بلا حدّ | 50 ميغابايت | HTML ثابت وNext.js |
النشر
الرفع لا ينشر. النشر خطوة منفصلة بموافقة صريحة: التطبيق يقرأ الملفات كما هي على مبرمج، يعرضها، ثم يرسل expectedFiles إلى مسار النشر — فإن تغيّرت الملفات بين العرض والنشر رُفض بـ409 ولم يُنشر شيء. راجع /docs/workspace/publish.
أسئلة شائعة
هل أحتاج مزوّد مبرمج للذكاء؟
لا. الجسر يعمل بمفتاح API مع أي مزوّد نماذج تضبطه في التطبيق. مزوّد «مبرمج» نفسه (/api/v1/chat/completions) متاح للباقات المدفوعة ويستعمل المفتاح نفسه.
هل يرفع التطبيق أسراري؟
لا. ملفات .env والملفات المخفية ومجلدات التبعيات لا تُجمع أصلاً، والمفتاح لا يظهر في أي نص يعيده الخادم.
ماذا لو عدّلت المشروع من محرّر مبرمج أيضاً؟
الرفع التالي يُرد عليه 409 حتى تسحب النسخة الحالية. هذه هي قاعدة «نسخة الأساس» نفسها التي يعمل بها المحرّر بين نافذتين.