# استخدام transcript1 من سطر الأوامر

> فرغ روابط الفيديو وملفات جهازك باستخدام CLI. عالج مجلدا كاملا، واحفظ النصوص وملفات الترجمة النصية، أو استخدم JSON مع السكربتات والوكلاء.

Canonical: https://transcript1.com/ar/docs/cli
Language: ar
Last updated: 2026-10-18

للحصول على النص المفرغ من الطرفية، شغل `transcript1` وأتبعه برابط فيديو أو مسار ملف صوت أو فيديو من جهازك. يدعم CLI روابط YouTube وX وTikTok وInstagram وFacebook وBluesky، والمنصات الإضافية بالإصدارات الموضحة أدناه. راجع [المصادر والخيارات](https://transcript1.com/ar/docs/sources-and-options) لقيود الروابط المدعومة. النسخة المستقلة من CLI تعمل دون Node.js.

روابط التواصل الاجتماعي تتطلب CLI 1.2.0 أو أحدث. الإصدار 1.1.0 وما قبله يقبل YouTube فقط، ويرفض الروابط الجديدة قبل إرسالها إلى API. حدث الأداة بالأمر `transcript1 update`.

هذا الحد الأدنى يخص المنصات الست الأصلية. لروابط Twitch وDailymotion وPinterest وLinkedIn وSnapchat، تحتاج إلى إصدار يتضمن دعمها؛ قد يرفضها إصدار أقدم محليا.

أرسل رابط منشور عام. إذا احتوى على عدة فيديوهات، نفرغ الأول فقط. صيغ الروابط القصيرة المقبولة وحدودها موضحة في [المصادر والخيارات](https://transcript1.com/ar/docs/sources-and-options).

## ثبت الأداة

للتثبيت على macOS أو Linux بمعمارية x64 أو ARM64، شغل:

```bash
curl -fsSL https://transcript1.com/install.sh | sh
```

يحفظ برنامج التثبيت الملف التنفيذي في `~/.local/bin`، ويوضح لك كيف تضيفه إلى PATH إذا لزم الأمر. لتختار مجلدا آخر، حدد `TRANSCRIPT1_INSTALL_DIR`.

يمكنك أيضا استخدام الاختصار `t1` بدلا من `transcript1`. وفي zsh، يضيف برنامج التثبيت `alias transcript1='noglob transcript1'` إلى `~/.zshrc` حتى تعمل الروابط المحتوية على `?` دون اقتباس. إذا لم ترد هذا التعديل، اضبط `TRANSCRIPT1_NO_MODIFY_SHELL=1`.

على Windows x64، نفذ الأمر التالي في PowerShell:

```powershell
irm https://transcript1.com/install.ps1 | iex
```

يثبت البرنامج في `%LOCALAPPDATA%\Programs\transcript1` ويضيف المجلد إلى PATH الخاص بالمستخدم. يضيف أيضا الاختصار `t1.cmd`. افتح طرفية جديدة بعد التثبيت ليصبح الأمر متاحا.

## اربط الأداة بحسابك

ابدأ بالأمر:

```bash
transcript1 login
```

يفتح الأمر transcript1.com في المتصفح. إذا كنت متصلا عبر SSH أو تعمل دون شاشة، يعرض الرابط في الطرفية بدلا من فتحه. طابق الرمز في الطرفية مع الرمز على الصفحة، ثم اضغط «Approve». بعد الموافقة، يحفظ CLI مفتاحا باسم `transcript1 CLI (<computer name>)`؛ ستجده في صفحة [«API keys»](https://transcript1.com/dashboard/account/tokens).

إذا أردت عرض الرابط فقط دون فتح المتصفح، استخدم `transcript1 login --no-browser`.

إذا كان لديك مفتاح بالفعل، شغل `transcript1 login --with-key` والصقه. يمكنك أيضا تمريره عبر stdin، مثل `transcript1 login < key.txt`.

في CI أو عند تشغيل وكيل، استخدم متغير البيئة `TRANSCRIPT1_API_KEY`؛ له الأولوية على المفتاح المحفوظ. وإذا لم يكن للوكيل مفتاح أو طرفية تفاعلية، يمكنه تشغيل `transcript1 login < /dev/null` وإرسال رابط الموافقة إليك.

لإلغاء مفتاح CLI وحذفه من جهازك، شغل `transcript1 logout`. إذا تعذر إلغاؤه، تحذف الأداة النسخة المحلية وتطلب منك إلغاءه من صفحة «API keys». أما المفتاح الذي لصقته بنفسك، فألغه من الصفحة مباشرة.

## أرسل رابط فيديو

```bash
transcript1 'https://youtu.be/dQw4w9WgXcQ'
```

ينتظر CLI اكتمال التفريغ، ثم يطبع النص على stdout. يبحث أولا عن ترجمة نصية مناسبة بلغة الفيديو الأصلية على YouTube وX وTikTok وBluesky وDailymotion وLinkedIn. إن لم تتوفر، يستخدم التفريغ الصوتي بالذكاء الاصطناعي. تظهر رسائل التقدم على stderr.

ضع الرابط بين علامتي اقتباس في zsh. من دونهما، يقسم `&` الأمر، ويتعامل zsh مع `?` كنمط glob، إلا إذا استخدمت alias الذي أضافه برنامج التثبيت.

## ارفع ملفا من جهازك

```bash
transcript1 interview.mp3
transcript1 -f srt -o interview.srt interview.mp3
```

أرسل ملفا حتى 2 GB، أي 2,000,000,000 بايت. نقبل امتدادات mp3 وwav وm4a وflac وogg وopus وmp4 وmov وwebm وmkv. يتولى CLI الرفع وينتظر النص المفرغ.

## عالج عدة تسجيلات معا

يمكنك إرسال أكثر من ملف أو رابط، أو تحديد مجلد كامل:

```bash
transcript1 interview.mp3 lecture.mp4
transcript1 -o transcripts/ ./recordings
transcript1 --jobs 4 -o transcripts/ interview.mp3 'https://youtu.be/dQw4w9WgXcQ'
```

تعمل أنماط الملفات مثل `recordings/*.mp3` على Windows أيضا. عند تحديد مجلد، يعالج CLI ملفات الصوت والفيديو الموجودة فيه مباشرة، مرتبة بالاسم. ومع عدة مدخلات، يحفظ ملفا لكل تسجيل في `./transcripts` افتراضيا. لضبط عدد التسجيلات التي تعالج معا، استخدم `--jobs` بقيمة من 1 إلى 20؛ الافتراضي 2.

للقراءة من stdin، استخدم `-` وضع رابطا أو مسار ملف في كل سطر. مثلا، على macOS أو Linux:

```bash
transcript1 -o transcripts/ - < inputs.txt
```

يتجاهل CLI الأسطر الفارغة والأسطر التي تبدأ بالرمز `#`. وإذا تكرر المدخل نفسه تماما، يعالجه مرة واحدة فقط.

مع مدخل واحد، يحدد `-o` اسم الملف الذي سيحفظ النص. إذا كان المسار مجلدا موجودا أو ينتهي بالرمز `/`، يحفظ الملف داخله. ومع عدة مدخلات، يجب أن يحدد `-o` مجلدا. ينشئ CLI مجلد الحفظ إذا لم يكن موجودا.

إذا كان ملف النص موجودا بالفعل لرابط YouTube أو ملف محلي، يتخطاه CLI. لإعادة المعالجة والكتابة فوقه، أضف `--overwrite`:

```bash
transcript1 --overwrite -o transcripts/ ./recordings
```

## اختر التنسيق والإعدادات

| الخيار | استخدامه |
|---|---|
| `-f`، `--format` | اختر `text`، وهو الافتراضي، أو `srt` أو `vtt` أو `json`. يعطي JSON كائن التفريغ كما يعيده API. |
| `--speakers` | يضيف تمييز المتحدثين بتسميات Speaker 1 وSpeaker 2 وما بعدها. |
| `--timestamps` | يضيف `[hh:mm:ss]` قبل كل سطر؛ يعمل مع تنسيق النص فقط. |
| `--language` | حدد رمز ISO 639-1 أو اترك القيمة الافتراضية `auto`. |
| `--source` | اختر `auto`، وهو الافتراضي، أو `stt`. يمكنك أيضا اختيار `captions` على YouTube وX وTikTok وBluesky وDailymotion وLinkedIn إذا توفر مسار مناسب. وضع `captions` (الترجمة النصية فقط) لا ينزل الصوت ولا ينتقل إلى STT. |
| `--fresh` | يبدأ تفريغا جديدا للرابط بدلا من إعادة استخدام تفريغ من آخر 24 ساعة. |

لإظهار المتحدث والطابع الزمني مع النص، شغل:

```bash
transcript1 --speakers --timestamps --language en interview.mp3
```

لا تستخدم `--speakers` مع `--source captions`. عند `auto`، يؤدي تمييز المتحدثين إلى استخدام الصوت مباشرة بدلا من الترجمة النصية. ما زال دعم الترجمة النصية في YouTube وX كما كان، وتتوفر أيضا مسارات TikTok وBluesky وDailymotion وLinkedIn. خارج YouTube، التوقيت للمقاطع فقط، وتكون القيمة `words: null` حتى للمسارات المنشأة تلقائيا. راجع [المصادر والخيارات](https://transcript1.com/ar/docs/sources-and-options) لمعرفة إمكانات كل منصة وكيفية اختيار اللغة.

## استخدم CLI في سكربت أو مع وكيل

إذا كان وكيلك يستطيع تشغيل أوامر shell، يمكنه تثبيت CLI وتعيين `TRANSCRIPT1_API_KEY` ثم تشغيل `transcript1 <link>` أو `transcript1 <file>`. أما إذا كان يستخدم MCP، فاتبع [إعداد خادم MCP](https://transcript1.com/ar/docs/mcp).

استخدم `--json` ليصدر stdout سطر JSON لكل مدخل بمجرد انتهاء معالجته. لن تظهر رسائل تقدم أو ملخصات أو إشعارات تحديث:

```bash
transcript1 --json 'https://youtu.be/dQw4w9WgXcQ'
```

للمهمة المنتهية، تحصل على كائن التفريغ من API مع الحقلين `input` و`reused`. إذا حفظ CLI النص في ملف، يحتوي السطر على `file` بدلا من `transcript`. وإذا وقع خطأ قبل إنشاء معرف، تحصل على `input` وكائن `error` بحقلين هما `code` و`message`. وعند تخطي مدخل، تحصل على `input` و`skipped` بقيمة `exists` أو `out_of_minutes`، ومعهما `file` متى انطبق ذلك. قيمة `exists` تخص روابط YouTube والملفات المحلية فقط.

إذا أرسلت مدخلا واحدا دون `-o`، يضع `--json` النص المفرغ داخل الكائن ويتجاهل `-f`. وإذا أرسلت عدة مدخلات دون `-o`، يحفظ النصوص في `./transcripts` ويضع `file` بدلا من `transcript` في كل سطر JSON. عند الحفظ إلى ملف، يحدد `-f` تنسيق الملف دائما. ولإخفاء التقدم والملخصات فقط مع إبقاء النصوص والأخطاء، استخدم `-q` أو `--quiet`.

يمكنك بدء التفريغ والعودة إليه لاحقا:

```bash
transcript1 --no-wait interview.mp3
transcript1 get <id>
```

خذ المعرف الذي طبعه الأمر الأول وضعه مكان `<id>`. يطبع `--no-wait` المعرف والحالة، أو كائن JSON إذا أضفت `--json`. أما `get`، فينتظر انتهاء التفريغ، ويقبل `-f` و`-o` و`--timestamps` و`--no-wait` و`--json` و`-q`.

## حدث الأداة

```bash
transcript1 update
```

عندما يكون stderr متصلا بطرفية، يبحث CLI عن إصدار أحدث مرة واحدة على الأكثر كل 24 ساعة، وينبهك إذا وجده. لتعطيل الفحص، اضبط `TRANSCRIPT1_NO_UPDATE_CHECK=1`. يخفي `--json` و`-q` إشعار التحديث أيضا.

## اقرأ رمز الخروج في سكربتك

| الرمز | ما الذي يعنيه؟ |
|---|---|
| 0 | نجحت جميع المدخلات، أو تخطاها CLI لوجود ملف النص بالفعل لرابط YouTube أو ملف محلي. |
| 1 | فشلت معالجة مدخل واحد على الأقل، أو جرى تخطيه لنقص الدقائق. |
| 2 | توجد مشكلة في صيغة الاستخدام أو تسجيل الدخول. |
| 130 | توقف التنفيذ بسبب المقاطعة. |

للاطلاع على جميع الأوامر والخيارات، شغل `transcript1 --help` أو `transcript1` دون معاملات.
