---
order: 9
section: reference
title: مرجع واجهة سطر الأوامر (CLI)
description: >-
  كل أوامر scribe وعلاماتها: status، وvalidate، وtranslate، وdelete، وhistory،
  وstudio، وexport-static.
noindex: false
canonicalPath: /ar/docs/cli
---
يأتي ملف `scribe` التنفيذي مع الحزمة ويكون متاحاً في مسار نظامك (PATH) بعد التثبيت. تقبل جميع الأوامر علامة `--config <path>` (المسار الافتراضي هو `scribe.config.ts` في مجلد العمل الحالي). وتقرأ الأوامر ملفات `.env` ثم `.env.local` قبل التشغيل (مع إعطاء الأولوية لمتغيرات البيئة الموجودة مسبقاً).  

```bash
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`. يطبع كل مشكلة في سطر منفصل ويخرج برمز خطأ في حالة وجود مشاكل، مما يجعله مثالياً لإيقاف عملية البناء عند الحاجة. راجع [نموذج المحتوى](/docs/content-model) للحصول على القائمة الكاملة لعمليات التحقق.

## `scribe translate`

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

| العلامة | الافتراضي | الوصف |
| --- | --- | --- |
| `--type <id,id>` | جميع الأنواع | نوع محتوى واحد أو أكثر (مفصول بفاصلة). |
| `--locale <code>...` | جميع اللغات غير الافتراضية | اللغات المستهدفة (مفصولة بمسافة). تتجاوز هذه العلامة `--preset`. |
| `--preset <name>` | - | مجموعة `localePresets` من ملف التكوين. |
| `--slug <en-slug>` | - | مستند إنجليزي واحد. |
| `--strategy <all\|missing-only>` | `all` | `all` تعني المفقودة والقديمة معاً. أما `missing-only` فتتخطى إعادة ترجمة الصفحات القديمة. |
| `--batch` / `--direct` | `batch` | نمط الترجمة. يرسل `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`) ستستأنف العمل من حيث توقف دون إرسال أي طلبات مزدوجة. يخرج الأمر برمز خطأ إذا فشل أي عنصر. لمزيد من التفاصيل، راجع قسم [الترجمة](/docs/translation).

## `scribe delete`

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

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

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

يحدد وضع `onTargetDelete` للعلاقة (`restrict` أو `detach` أو `cascade`) ووضع `onDelete` لحقل الأصول (`delete` أو `keep`) ما ستفعله الخطة. راجع [نموذج المحتوى](/docs/content-model) لمعرفة خيارات الحقول. الخطة التي تحتوي على عوائق (مرجع `restrict` أو علاقة مفردة مطلوبة ستصبح معلقة) تطبع العوائق وتخرج برمز 1 دون إجراء أي حذف. يوفر [الاستوديو](/docs/studio) نفس الخطة خلف زر الحذف (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`).
