دليل استخدام سيل الكامل
هذا الدليل يغطي كل ما تحتاجه لتشغيل سيل والاستفادة منه، من أول تثبيت حتى أوامر سطر الأوامر الدقيقة، ويخص الإصدار 0.1.0 لنظام Windows.
1. البداية والتثبيت
سيل متاح حاليًا لأنظمة Windows 10 وWindows 11 بمعمارية 64-bit.
- افتح صفحة آخر إصدار على GitHub ونزِّل ملف التثبيت
SAYL-Setup-x64-0.1.0.exe. - شغّل الملف، وسيقوم بالتثبيت في حساب المستخدم دون الحاجة إلى صلاحيات مسؤول النظام (Administrator).
- ستجد اختصار سيل في قائمة ابدأ وسطح المكتب.
لأن سيل مشروع مجاني جديد ولم نقم بعد بشراء شهادة توقيع رقمي تجارية باهظة التكلفة (EV Code Signing)، قد يظهر لك نظام ويندوز نافذة زرقاء تحمل عبارة: «Windows protected your PC / ناشر غير معروف».
خطوات المتابعة:
1. اضغط على رابط «مزيد من المعلومات» (More info) الظاهر داخل الرسالة.
2. اضغط على زر «التشغيل على أي حال» (Run anyway) الذي سيظهر في الأسفل.
كود سيل مفتوح بالكامل للجميع ويمكنك مراجعته بنفسك للتأكد من خلوه التام من أي برمجيات ضارة.
2. إضافة تنزيل جديد
يوفر سيل عدة طرق بسيطة لبدء التنزيل فورًا:
- عبر زر الواجهة أو الاختصار: اضغط على زر «إضافة تنزيل» في الشريط العلوي، أو اضغط Ctrl + N. إذا كان في حافظتك رابط منسوخ، سيُلصقه البرنامج تلقائيًا.
- السحب والإفلات: اسحب أي رابط مباشرة من المتصفح وأفلته في أي مساحة داخل نافذة سيل.
- تنبيه الروابط المكررة: إذا كان الرابط موجودًا بالفعل في قائمتك، سيعرض سيل نافذة تسألك: هل تود فتح الملف الموجود مسبقًا أم تنزيله مرة ثانية؟ حتى لا تستهلك باقتك دون قصد.
3. التصنيفات والبحث
مع كثرة التنزيلات، ينظم سيل ملفاتك تلقائيًا استنادًا إلى امتداد الملف ونوع المحتوى (MIME Type):
- التصنيفات الستة: فيديو (mp4, mkv, avi...)، صوت (mp3, wav, flac...)، مستندات (pdf, docx, epub...)، برامج (exe, msi, iso...)، ملفات مضغوطة (zip, rar, 7z...)، وقسم «أخرى» للملفات المتنوعة.
- فلترة الحالة: يمكنك التبديل بين عرض (الكل)، (يعمل حاليًا)، (متوقف مؤقتًا)، (مكتمل)، أو (فشل).
- البحث الفوري: اكتب أي كلمة في شريط البحث ليقوم بتصفية المهام حسب اسم الملف أو الرابط أثناء الكتابة دون أي تأخير.
- طريقة العرض: اختر بين عرض «البطاقات» الواسع أو عرض «الجدول» المضغوط حسب تفضيلك.
4. نافذة التقدّم
عند بدء التنزيل، يمكن لسيل إظهار نافذة مخصصة مستقلة تمنحك تفاصيل دقيقة عن حالة النقل:
- أشرطة الأجزاء المتوازية: يعرض شريطًا مقسمًا لكل اتصال نشط، بحيث ترى بصريًا حجم وسرعة ملء كل قطعة من الملف.
- إحصاءات حية: السرعة اللحظية، الحجم المنقول من الإجمالي، والوقت المتبقي (ETA).
- إجراءات سريعة: زر لفتح الملف مباشرة، وزر لعرضه في مجلد التنزيل في مستكشف Windows.
- يمكنك من الإعدادات تفعيل أو تعطيل ظهور هذه النافذة، أو جعلها تغلق تلقائيًا بمجرد اكتمال التنزيل.
5. التشغيل في الخلفية وأيقونة شريط المهام
يبقى سيل يعمل في الخلفية بهدوء دون أن يعيق عملك:
- عند إغلاق أو تصغير النافذة، يستمر التنزيل في الخلفية وتستقر أيقونة سيل في صينية النظام (System Tray بجوار الساعة).
- بالنقر المزدوج على أيقونة شريط المهام تُفتح النافذة الرئيسية مجددًا.
- بالنقر بزر الفأرة الأيمن على الأيقونة، تظهر لك قائمة سريعة لإيقاف كل التنزيلات مؤقتًا، أو استئناف الكل، أو إغلاق البرنامج بالكامل.
6. التشغيل مع ويندوز
يمكنك ضبط سيل ليبدأ تلقائيًا مع إقلاع نظام Windows. يتيح ذلك للبرنامج استكمال التنزيلات المعلقة فور فتح الحاسوب دون أن تضطر لتشغيله يدويًا في كل مرة، ويبقى خفيفًا جدًا على استهلاك الذاكرة والمعالج.
7. إطفاء الجهاز بعد الانتهاء
إذا كنت تنزّل ملفات كبيرة ليلًا أو قبل الخروج من المنزل، يمكنك تفعيل خيار «إيقاف تشغيل الجهاز عند انتهاء كل التحميلات»:
- عداد الأمان (٣٠ ثانية): عند اكتمال آخر تنزيل، لا يطفئ سيل الجهاز فجأة؛ بل تظهر شاشة تنبيه واضحة مع عداد تنازلي مدته 30 ثانية وزر بارز لإلغاء الإطفاء بنقرة واحدة إذا كنت لا تزال تستخدم الحاسوب.
- شروط الأمان الصارمة: لن يتم إطفاء الجهاز إذا وُجدت تنزيلات فاشلة أو متوقفة مؤقتًا لم تكتمل بعد، لحماية مهامك من الضياع.
8. منع سكون الجهاز (Prevent Sleep)
كثيرًا ما تتوقف التنزيلات في البرامج الأخرى لأن Windows يدخل في وضع السكون (Sleep / Standby) بعد دقائق من عدم لمس الفأرة. يتصل سيل بواجهات الطاقة في Windows (عبر SetThreadExecutionState) لمنع الحاسوب من النوم طالما توجد مهام تنزيل نشطة، وفور اكتمالها يُرفع هذا الحظر تلقائيًا ليعود جهازك لتوفير الطاقة المعتاد.
9. الاستئناف وأخطاء السيرفر
بُني سيل على أساس هندسي يضمن سلامة البيانات بنسبة 100%:
- كيف يعمل الاستئناف؟ يطلب سيل أجزاء الملف باستخدام ترويسة
Range: bytes=X-Yواستجابة206 Partial Content. قبل إكمال أي بايت قديم، يتأكد سيل من تطابق وسمETagالقوي وتاريخLast-Modifiedمن السيرفر. فإذا كان الملف قد تغيّر على الخادم، يبدأ التنزيل من الصفر تلقائيًا لمنع دمج أجزاء غير متطابقة تُتلف الملف. - ملفات
.partالذرية: يكتب سيل البيانات في ملف مؤقت يحمل اللاحقة.part، مع تنفيذ أمرfsyncللتأكد من كتابة البيانات في القرص الفعلي. وفقط بعد اكتمال التنزيل 100% والتحقق من حجمه، يقوم سيل بإعادة تسميته ذريًا (Atomic Rename) إلى الاسم النهائي. هكذا تضمن ألا تجد في مجلدك ملفات معطوبة أو ناقصة. - أخطاء الخادم (403, 503, Timeouts): إذا انتهت صلاحية الرابط أو واجه الخادم ضغطًا مؤقتًا، ينبهك سيل بالخطأ المحدد بوضوح ويحتفظ بنقاط التنزيل، لتستأنفه لاحقًا أو تحدث الرابط دون فقدان ما نزل.
- الاسترداد بعد الانهيار (Crash Recovery): إذا انقطعت الكهرباء أو أُجبر البرنامج على الإغلاق، يقوم سيل عند فتحه تلقائيًا بفحص سجل الـ WAL وإعادة كل المهام غير المكتملة إلى حالة
Pausedالآمنة، لتبدأ استئنافها بنقرة واحدة.
10. إضافة المتصفح وتفعيلها
تتيح إضافة المتصفح لبرنامج سيل التقاط روابط التنزيل مباشرة من Google Chrome وMicrosoft Edge وBrave والمتصفحات المتوافقة:
- افتح برنامج سيل، ثم انتقل إلى الإعدادات (رمز الترس أو Ctrl+,).
- انتقل إلى قسم إضافة المتصفح واضغط زر تفعيل.
- سيفتح متصفحك صفحة الإضافة في المتجر الرسمي؛ اضغط «إضافة إلى المتصفح» (Add to browser).
بعد التثبيت بنجاح، يلتقط سيل التنزيلات تلقائيًا بمجرد النقر على أي رابط تحميل، كما يمكنك النقر بزر الفأرة الأيمن على أي رابط واختيار «التحميل بواسطة سيل».
طريقة التثبيت اليدوي للمطورين (Load unpacked)
إذا كنت تبني سيل من المصدر أو تطوّر على كود الإضافة محليًا، يمكنك تثبيتها يدويًا عبر الخطوات التالية:
- افتح صفحة الإضافات في متصفحك:
chrome://extensionsأوedge://extensions. - فعّل «وضع مطوّر البرامج» (Developer mode) في أعلى الصفحة.
- اضغط «تحميل حزمة غير مضغوطة» (Load unpacked) واختر مجلد
extensions/browser/chromiumالموجود في ملفات سيل. - انسخ معرّف الإضافة (Extension ID) المخصص لها.
- شغّل سكربت التسجيل في PowerShell ليرتبط مضيف الرسائل الأصلي (Native Messaging Host) بالمتصفح:
powershell -ExecutionPolicy Bypass -File tools/register-native-host.ps1 -ExtensionId <معرف_الإضافة>
11. سطر الأوامر (sayl CLI)
يأتي سيل مع أداة سطر أوامر مستقلة (sayl.exe) مبنية بلغة Rust، توفر تحكمًا كاملًا في محرك التنزيل. هذه قائمة الأوامر الفعلية كما هي معرّفة في كود البرنامج:
الأوامر الأساسية:
| الأمر والصيغة | الوصف |
|---|---|
sayl add <urls...> |
إضافة رابط أو عدة روابط دفعة واحدة إلى طابور التنزيل. |
sayl start <id> | --all |
بدء تنزيل مهمة محددة بمعرفها (أو بدايته)، أو بدء كل المهام المنتظرة. |
sayl list [--json] |
عرض جدول بكل المهام المسجلة وحالاتها، أو بصيغة JSON للأتمتة. |
sayl info <id> |
عرض تفاصيل دقيقة وشاملة عن المهمة (الحجم، النطاقات، المسار، الأخطاء). |
sayl pause <id> |
إيقاف مهمة جارية مؤقتًا وحفظ إحداثيات البايتات على القرص. |
sayl cancel <id> |
إلغاء مهمة جارية أو منتظرة نهائيًا وتحرير الموارد. |
sayl remove <id> [--delete-file] |
حذف المهمة من السجل، مع إمكانية حذف الملف المنزّل وملف .part من القرص. |
sayl recover |
فحص السجل واسترداد كل المهام التي قُطعت بفعل إغلاق مفاجئ وإعادتها إلى Paused للاستئناف. |
sayl events [--idle-exit <ms>] |
بث مباشر لكل أحداث المحرك الداخلية بصيغة JSON حتى يتم إيقافه. |
المعاملات والخيارات العامة (Global Options):
| الخيار | القيمة الافتراضية | الشرح |
|---|---|---|
--download-dir <PATH> |
%USERPROFILE%\Downloads\SAYL |
تحديد مجلد حفظ الملفات المكتملة. |
--data-dir <PATH> |
<download-dir>\.data |
تحديد مجلد تخزين السجلات وقاعدة البيانات. |
--connections <N> |
4 |
أقصى عدد اتصالات متوازية للمهمة الواحدة (تجزئة الملف). |
--concurrent <N> |
3 |
أقصى عدد مهام نشطة تنزل في وقت واحد في الطابور. |
--lang <ar|en> |
ar |
لغة الرسائل والمخرجات النصية في الطرفية. |
--json |
— | إخراج النتائج بصيغة JSON مهيكلة للتكامل مع البرامج الأخرى. |
-q, --quiet |
— | كتم أشرطة التقدم والرسائل لتشغيل صامت تمامًا. |
-v, --verbose |
— | تفعيل السجلات التشخيصية التفصيلية للشبكة والقرص. |
رموز الخروج البرمجية (Exit Codes):
0: نجاح · 2: خطأ في استخدام الأمر · 3: فشل المهمة · 4: ألغيت المهمة · 5: خطأ في المخزن أو القرص (I/O).
12. الإعدادات خيار خيار
يمكنك فتح شاشة الإعدادات في الواجهة في أي وقت بالضغط على أيقونة الترس أو عبر الاختصار Ctrl + ,. فيما يلي شرح لكل خيار متاح:
| الإعداد | المدى المسموح | الافتراضي | الشرح والتأثير |
|---|---|---|---|
| مجلد حفظ التنزيلات download_dir |
مسار مجلد صالح | %USERPROFILE%\Downloads |
المكان الذي تستقر فيه الملفات بعد انتهاء تنزيلها بالكامل. |
| أقصى تنزيلات نشطة max_concurrent_tasks |
من 1 إلى 32 | 3 |
عدد الملفات التي يُسمح بتنزيلها معًا في وقت واحد. الباقي ينتظر في الطابور تلقائيًا. |
| أقصى اتصالات للمهمة max_connections_per_task |
من 1 إلى 64 | 4 |
عدد الوصلات المتوازية لتجزئة الملف الواحد إذا كان الخادم يدعم النطاقات. |
| سمة المظهر theme |
تلقائي / داكن / فاتح | system |
مظهر الواجهة؛ إما يتبع إعدادات ويندوز أو يُثبّت على الداكن أو الفاتح. |
| لغة الواجهة language |
العربية / English | ar |
لغة واجهة التطبيق والاتجاه (RTL للعربية وLTR للإنجليزية). |
| طريقة العرض view_mode |
بطاقات / جدول | cards |
طريقة عرض قائمة المهام؛ إما بطاقات غنية بالتفاصيل أو جدول مدمج. |
| منع نوم الجهاز prevent_sleep |
مفعّل / معطّل | true |
منع دخول ويندوز في وضع السكون طالما توجد ملفات قيد التنزيل. |
| إظهار نافذة التحميل show_download_window |
مفعّل / معطّل | true |
فتح نافذة منبثقة مستقلة لمتابعة الأجزاء وسرعة النقل عند بدء كل تنزيل. |
| إغلاق نافذة التحميل تلقائيًا close_download_window_on_finish |
مفعّل / معطّل | false |
إغلاق نافذة التقدّم تلقائيًا بمجرد اكتمال تنزيل الملف بنجاح. |
اختصارات لوحة المفاتيح:
- Ctrl + N: إضافة تنزيل جديد ولصق الرابط.
- Space: إيقاف مؤقت أو استئناف المهمة المحددة.
- Delete: إلغاء التنزيل أو حذف المهمة.
- Ctrl + O: فتح مجلد التنزيلات في مستكشف Windows.
- Ctrl + ,: فتح شاشة الإعدادات.
- Esc: إغلاق أي نافذة منبثقة.
13. مكان البيانات على جهازك
يحترم سيل خصوصيتك تمامًا ولا يبعثر ملفاته في أماكن خفية:
- الإعدادات وقاعدة البيانات: تُحفظ في المسار القياسي لويندوز:
%APPDATA%\SAYL\
ويحتوي على ملفsettings.jsonومجلد السجلات وقاعدة البياناتstore\. - الملفات المكتملة: تستقر في مجلدك المعتاد
%USERPROFILE%\Downloads\(أو المسار الذي حددته في الإعدادات). - الملفات المؤقتة (.part): توجد بجانب الملف المنزّل أثناء التحميل وتُزال تلقائيًا بعد اكتماله.
- حذف البيانات تمامًا: إذا رغبت في محو كل أثر للبرنامج، أغلق سيل ثم احذف مجلد
%APPDATA%\SAYL\فقط.
14. بناء سيل من المصدر
سيل مفتوح المصدر بالكامل، ويمكنك بناؤه وفحص كوده بنفسك:
- المتطلبات الأساسية:
• نظام Windows 10 أو 11 (x64)
• Rust (سلسلة أدوات GNU:stable-x86_64-pc-windows-gnu)
• Node.js 18 أو أحدث مع npm - إعداد البيئة في PowerShell:
$env:RUSTFLAGS = "-C linker=rust-lld" - فحص الشفرة وتشغيل الاختبارات:
cargo check --workspacecargo test --workspace - بناء واجهة سطح المكتب (Tauri):
cd apps/desktopnpm installnpm run tauri build
15. المساهمة في الكود
نرحب بمساهمات المطورين لتحسين سيل. قبل إرسال طلب سحب (Pull Request)، يرجى مراعاة التالي:
- تأكد من نجاح كافة اختبارات مساحة العمل الحتمية عبر
cargo test --workspace. - احرص على تنسيق الشفرة بالمعيار المعتمد عبر
cargo fmt --all. - التزم بصيغة رسائل الكوميت الإنجليزية القياسية (مثال:
fix(http): handle chunk timeout gracefully). - راجع ملف
CONTRIBUTING.mdفي المستودع للمزيد من التفاصيل.
16. الإبلاغ عن مشكلة
إذا واجهتك مشكلة أثناء التنزيل أو خطأ غير متوقع:
- الأخطاء والمقترحات العامة: افتح تذكرة على GitHub Issues مستخدمًا قوالب البلاغات المتوفرة، واذكر نوع الرابط والخطأ الذي ظهر لك.
- الثغرات الأمنية: إذا اكتشفت ثغرة أمنية تمس سلامة المستخدمين، يرجى عدم نشرها في العلن والرجوع إلى إرشادات ملف
SECURITY.mdللإبلاغ السري والمسؤول.
17. الإضافات (Plugins)
نظام الإضافات (Plugins) ميزة مدرجة في خطة الإصدارات المستقبلية للمشروع (المقررة للإصدار v0.5.0 عبر بيئة WebAssembly آمنة). في الإصدار الحالي (v0.1.0) لا يوجد أي نظام للإضافات أو واجهات برمجية (APIs) لتشغيل إضافات خارجية، ولن نضع واجهات وهمية غير منفذة. تابع تحديثات المستودع لمعرفة موعد إطلاقها.
18. السمات (Themes)
يتضمن سيل حاليًا وضعين رسميين متقنين: الوضع الفاتح والوضع الداكن، مع إمكانية التبديل التلقائي مع النظام. أما إمكانية استيراد سمات خارجية مخصصة أو تركيب حزم ألوان مخصصة (Custom Community Themes)، فهي ميزة مجدولة في خطة التطوير اللاحقة وغير متاحة بعد في v0.1.0.
19. الأسئلة الشائعة
هل ينزّل سيل مقاطع يوتيوب أو مواقع الفيديو حاليًا؟
ليس في الإصدار الحالي 0.1.0. ميزة تنزيل الفيديو واختيار الدقة مدمجة في خطة الإصدار 0.2.0 القادم عبر أداتي yt-dlp وFFmpeg دون الحاجة لتثبيتهما يدويًا.
هل يجمع سيل أي بيانات عن استخدامي أو روابطي؟
لا على الإطلاق. سيل لا يحتوي على أي كود تتبع (No Telemetry)، ولا يرسل إحصاءات، ولا يطلب حسابًا، ولا يتصل بأي خوادم وسيطة تخصنا. الاتصال يتم مباشرة بين حاسوبك والسيرفر الذي تنزل منه فقط.
توقّف التنزيل عند نسبة معينة، فماذا أفعل؟
اضغط زر «إيقاف مؤقت» ثم «استئناف». إذا كان الخادم لا يدعم الاستئناف وأصدر رابطًا مؤقتًا انتهى وقته، يمكنك نسخ الرابط الجديد وإضافته مجددًا.
هل يدعم سيل التورنت والروابط المغناطيسية (Magnet)؟
بروتوكول التورنت مجدول لإصدار مستقبلي (v0.4.0) باستخدام محرك librqbit المكتوب بلغة Rust. الإصدار الحالي مخصص لتنزيلات الويب المباشرة HTTP/HTTPS.