Scribe

مرجع واجهة سطر الأوامر (CLI)

كل أوامر scribe وعلاماتها: status، وvalidate، وtranslate، وdelete، وhistory، وstudio، وexport-static.

View as Markdown

يأتي ملف scribe التنفيذي مع الحزمة ويكون متاحاً في مسار نظامك (PATH) بعد التثبيت. تقبل جميع الأوامر علامة --config <path> (المسار الافتراضي هو scribe.config.ts في مجلد العمل الحالي). وتقرأ الأوامر ملفات .env ثم .env.local قبل التشغيل (مع إعطاء الأولوية لمتغيرات البيئة الموجودة مسبقاً).

scribe status
scribe validate
scribe translate [flags]
scribe delete <type> <en-slug> [--dry-run] [--yes]
scribe history <type> <en-slug> [locale]
scribe studio [--port 3600]
scribe export-static [flags]
scribe version

scribe status

يعرض لكل نوع محتوى: عدد المستندات الإنجليزية، ثم عدد الترجمات لكل لغة، بالإضافة إلى مسار التخزين. يقدم نظرة عامة سريعة على التغطية.

scribe validate

يتحقق من صحة المشروع بالكامل: المخططات، والحقول المضمنة، وخطافات crossValidate، وتصريف MDX للنصوص الإنجليزية والترجمات المخزنة، والعلاقات، وقواعد _redirects.json، ولواحق الروابط المترجمة، وملفات الصور المفقودة عند تعيين assetsDir. يطبع كل مشكلة في سطر منفصل ويخرج برمز خطأ في حالة وجود مشاكل، مما يجعله مثالياً لإيقاف عملية البناء عند الحاجة. راجع نموذج المحتوى للحصول على القائمة الكاملة لعمليات التحقق.

scribe translate

يترجم الصفحات المفقودة أو القديمة باستخدام Gemini (يتطلب GEMINI_API_KEY). عند تشغيله بدون علامات في الوحدة الطرفية، سيطرح أسئلة تفاعلية حول نوع المحتوى، وإعداد اللغة المسبق، والاستراتيجية، ونمط الترجمة. في البرامج النصية، يمكنك تمرير العلامات التالية:

العلامةالافتراضيالوصف
--type <id,id>جميع الأنواعنوع محتوى واحد أو أكثر (مفصول بفاصلة).
--locale <code>...جميع اللغات غير الافتراضيةاللغات المستهدفة (مفصولة بمسافة). تتجاوز هذه العلامة --preset.
--preset <name>-مجموعة localePresets من ملف التكوين.
--slug <en-slug>-مستند إنجليزي واحد.
--strategy <all|missing-only>allall تعني المفقودة والقديمة معاً. أما missing-only فتتخطى إعادة ترجمة الصفحات القديمة.
--batch / --directbatchنمط الترجمة. يرسل batch كل شيء عبر واجهة Gemini Batch API بنصف تكلفة الرموز. بينما يقوم direct بإجراء استدعاءات API لكل صفحة على حدة للحصول على نتائج فورية.
--resume-التحقق من مهام الدفعات المعلقة، واستيعاب المهام المنتهية، وعدم إرسال أي مهام جديدة.
--concurrency <n>3طلبات الترجمة المتوازية (في النمط المباشر direct فقط).
--model <id>gemini-3.1-proتجاوز نموذج Gemini الافتراضي.
--dry-run-طباعة قائمة العمل دون استدعاء API أو الكتابة، مع عرض العدد التقديري للرموز والتكلفة بالدولار الأمريكي لكل عنصر وفي الإجمالي.
--force-فرض الترجمة حتى لو كانت تجزئة النص الإنجليزي متطابقة.
--no-progress-عرض سجلات نصية سطراً بسطر بدلاً من واجهة التقدم المباشرة.

تعرض عمليات التشغيل التفاعلية شريط تقدم مباشر يوضح حالة مهام الدفعات، ونتائج كل عنصر، وعدد رموز الإدخال والإخراج المستخدمة، والتكلفة التقديرية بالدولار الأمريكي (بما في ذلك رموز التفكير). يتم حفظ مهام الدفعات في المخزن قبل بدء الاستعلام المستمر، لذا فإن إيقاف العملية باستخدام Ctrl+C يعد آمناً. فالعملية التالية (أو استخدام --resume) ستستأنف العمل من حيث توقف دون إرسال أي طلبات مزدوجة. يخرج الأمر برمز خطأ إذا فشل أي عنصر. لمزيد من التفاصيل، راجع قسم الترجمة.

scribe delete

scribe delete <type> <en-slug> [--dry-run] [--yes]

يحذف إدخالاً وكل ما يرتبط به، بناءً على التتالي المرجعي. يحسب خطة مسبقاً ويطبعها مجمعة حسب القسم: عمليات الحذف المتتالية، والعلاقات المنفصلة، وملفات الأصول المتأثرة، وعدد العناصر المخزنة لكل لغة (الترجمات واللقطات)، وأي عوائق. ثم يطلب التأكيد بـ y/N قبل التنفيذ. ينفذ الأمر الخطة بدقة (الملف المصدر، وصفوف المخزن، وملفات الأصول، وعمليات الفصل) ولا شيء غير ذلك.

العلامةالوصف
--dry-runطباعة الخطة والخروج برمز 0 دون حذف أي شيء.
--yesتخطي رسالة التأكيد (مفيد للبرامج النصية).

يحدد وضع onTargetDelete للعلاقة (restrict أو detach أو cascade) ووضع onDelete لحقل الأصول (delete أو keep) ما ستفعله الخطة. راجع نموذج المحتوى لمعرفة خيارات الحقول. الخطة التي تحتوي على عوائق (مرجع restrict أو علاقة مفردة مطلوبة ستصبح معلقة) تطبع العوائق وتخرج برمز 1 دون إجراء أي حذف. يوفر الاستوديو نفس الخطة خلف زر الحذف (Delete).

scribe history <type> <en-slug> [locale]

يعرض المخطط الزمني للقطات الإنجليزية لمستند واحد، ويشمل: متى تم التقاط كل لقطة، وتجزئة المحتوى الخاص بها، والترجمات التي تم إنشاؤها منها. مرر لغة معينة لتصفية النتائج.

scribe studio

واجهة ويب محلية للقراءة فقط (الافتراضي http://127.0.0.1:3600، ويمكن تغييره باستخدام --port). تعرض تغطية الترجمة لكل نوع محتوى ولكل لغة، وقائمة العمل الحالية للمحتوى المفقود أو القديم، وتفاصيل كل مستند (البيانات التمهيدية مع علامات الترجمة أو البنية، والترجمة المخزنة، والبيانات الوصفية مثل النموذج والتاريخ والتجزئة، واللقطة الإنجليزية التي تم الاعتماد عليها). لا تقوم الواجهة بالكتابة أو التعديل؛ حيث تبقى عمليات التحرير في محرر النصوص الخاص بك ونظام git.

scribe export-static

يكتب ملفات MDX خام (البيانات التمهيدية والنص الأساسي، لكل لغة) في مجلد ثابت، وهو مفيد لتقديم نسخ نصية بسيطة من صفحاتك تناسب زواحف الويب ونماذج اللغة الكبيرة (LLMs):

العلامةالافتراضيالوصف
--out <dir>publicمجلد الإخراج.
--extension <ext>mdxامتداد الملفات للملفات المُصدّرة.
--type <id,id>جميع الأنواع القابلة للتوجيهأنواع المحتوى مفصولة بفاصلة.
--locale <code>...جميع اللغاتاللغات المراد تصديرها.

يتم تنظيف مسارات الإخراج المدارة قبل الكتابة. يتم تخطي المستندات التي تعتبر مصادر إعادة توجيه في _redirects.json.

scribe version

يطبع إصدار scribe-cms المثبت (يمكن أيضاً استخدام --version أو -V).

مرجع واجهة سطر الأوامر (CLI) · Scribe