> ## Documentation Index
> Fetch the complete documentation index at: https://docs.youka.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Youka CLI

> أنشئ كاريوكي، خصّص النمط، وصدّر فيديوهات MP4 من سطر الأوامر

تقوم Youka CLI بتغليف واجهة API العامة بحيث يمكنك إنشاء كاريوكي من أغنية، وتخصيص كلمات الأغنية ونمط الفيديو، وتصدير ملف MP4 نهائي من الطرفية لديك أو من وكيل (agent).

## التثبيت

<CodeGroup>
  ```bash npm theme={null}
  npm install -g @youka/cli
  ```

  ```bash pnpm theme={null}
  pnpm add -g @youka/cli
  ```

  ```bash yarn theme={null}
  yarn global add @youka/cli
  ```
</CodeGroup>

تحقّق من التثبيت:

```bash theme={null}
youka --version
youka --help
```

## إعداد المصادقة

<Steps>
  <Step title="الحصول على مفتاح API">
    انتقل إلى [online.youka.io/account](https://online.youka.io/account)، ثم افتح
    **API keys**، وانسخ مفتاحًا جديدًا.
  </Step>

  <Step title="حفظ المفتاح">
    ثبّت المفتاح في `~/.youka/config.json`:

    ```bash theme={null}
    youka login YOUR_API_KEY
    ```

    أو صدّره كمتغير بيئة:

    ```bash theme={null}
    export YOUKA_API_KEY=YOUR_API_KEY
    ```
  </Step>
</Steps>

## إنشاء كاريوكي من ملف

استخدم ملف صوت أو فيديو محلي كمصدر:

```bash theme={null}
youka project create ./song.mp3 --download --output ./karaoke.mp4 --wait --json
```

سيؤدي ذلك إلى رفع المصدر، وإنشاء مشروع الكاريوكي، وتصوير (render) التصدير، ثم تنزيل فيديو MP4 النهائي.

## إنشاء كاريوكي من رابط URL

مرّر رابط مصدر HTTP أو HTTPS بدلًا من مسار ملف:

```bash theme={null}
youka project create "https://example.com/song.mp4" --download --output ./karaoke.mp4 --wait --json
```

بالنسبة لروابط الفيديو المستضافة، تستخدم Youka أداة `yt-dlp` للتنزيل من الرابط. يمكنك تثبيت تبعيات تنزيل الروابط قبل أول عملية استيراد من URL:

```bash theme={null}
youka deps ensure --for url
```

## مرجع

<Columns cols={2}>
  <Card title="الحساب" icon="key" href="/ar/cli/account">
    سجّل الدخول، سجّل الخروج، وتفقّد حالة المصادقة.
  </Card>

  <Card title="الأرصدة" icon="coins" href="/ar/cli/credits">
    تفقّد الرصيد الحالي وحِزم الأرصدة التي ستنتهي صلاحيتها.
  </Card>

  <Card title="الفوترة" icon="credit-card" href="/ar/cli/billing">
    اعرض الأسعار وأنشئ روابط الدفع أو بوابة الحساب.
  </Card>

  <Card title="المشاريع" icon="folder" href="/ar/cli/projects">
    أنشئ المشاريع، افحصها، انتظر اكتمالها، وحدّثها.
  </Card>

  <Card title="عمليات التصدير" icon="file-video" href="/ar/cli/exports">
    اعمل render لنتائج التصدير السحابية أو المحلية وقم بتنزيلها.
  </Card>

  <Card title="الإعدادات المسبقة" icon="palette" href="/ar/cli/presets">
    أدِر إعدادات render القابلة لإعادة الاستخدام.
  </Card>

  <Card title="الوسائط" icon="image" href="/ar/cli/media">
    ارفع الوسائط القابلة لإعادة الاستخدام وأدِرها.
  </Card>

  <Card title="المهام" icon="list-check" href="/ar/cli/tasks">
    افحص حالة المهام منخفضة المستوى عند الحاجة.
  </Card>

  <Card title="التبعيات" icon="box" href="/ar/cli/deps">
    افحص وثبّت تبعيات استيراد URL وتبعيات الـ render المحلي.
  </Card>

  <Card title="الخيارات العامة" icon="gear" href="/ar/cli/global-options">
    رايات (flags) متاحة على كل أمر.
  </Card>
</Columns>

## جاهز للوكلاء افتراضيًا

يدعم كل أمر وضعًا مقروءًا آليًا يعيد ظرف JSON واحدًا بشكل ثابت. استخدم هذه الرايات للتحكم في CLI من الوكلاء أو السكربتات:

| الراية                    | الغرض                                                                     |
| ------------------------- | ------------------------------------------------------------------------- |
| `--json`                  | اطبع ظرف JSON واحدًا تمامًا إلى stdout. يتم كتم التقدّم والسجلات.         |
| `--body <file\|->`        | ادمج حمولة JSON من ملف أو stdin. تتغلب رايات CLI على الحقول المطابقة.     |
| `--wait`                  | راقِب مهام async (إنشاء المشروع، عمليات التصدير) حتى تصل إلى حالة نهائية. |
| `--idempotency-key <key>` | مرّر مفتاح idempotency لأي عملية كتابة.                                   |
| `--quiet`                 | اكتم مخرجات التقدّم غير الخاصة بـ JSON عند استخدامها مع `--wait`.         |
| `--api <url>`             | تجاوز عنوان URL الأساسي لواجهة API العامة.                                |

شكل ظرف JSON:

```json theme={null}
{
  "ok": true,
  "data": {
    /* command result */
  }
}
```

عند الفشل:

```json theme={null}
{
  "ok": false,
  "error": {
    "code": "INVALID_INPUT",
    "message": "Human-readable description",
    "details": {
      /* optional */
    }
  }
}
```

اطّلع على [Global options](/ar/cli/global-options) للقائمة الكاملة.

## التصدير السحابي مقابل التصدير المحلي

يعمل `export create` في السحابة افتراضيًا. مرّر `--local` لتشغيل render على جهازك باستخدام حزمة أدوات Remotion المدمجة. تتطلب عمليات الـ render المحلية تبعيات الـ render:

```bash theme={null}
youka deps ensure --for render
```

اطّلع على [Exports](/ar/cli/exports) لسير العمل الكامل.

## ما التالي

* [Account](/ar/cli/account) - احفظ مفتاح API الخاص بك
* [Projects](/ar/cli/projects) - أنشئ المشاريع وعالجها
* [Exports](/ar/cli/exports) - اعمل render لفيديو كاريوكي نهائي
* [AI agents](/ar/agents) - شغّل CLI من سير عمل مؤتمت
