عن المشروع

BootIntel هي أداة سطر أوامر مكتوبة بلغة Rust تجمع بين طرفية تسلسلية تفاعلية UART وتحليل تدفق سجلات الإقلاع. تلتقط جلسة تسلسلية، وتحافظ على البايتات الخام، وتحدد محملات الإقلاع والنوى والأجهزة والإعدادات الخطرة فور وصولها. يعمل التعريف المحلي دون اتصال وبدون حساب؛ بينما يضيف التحليل الخادمي الاختياري مطابقة CVEs وتقارير. سير العمل النموذجي: `bootintel ports` يسرد المحولات التسلسلية مع بيانات USB VID/PID؛ `bootintel analyze /dev/ttyUSB0 --baud 115200 --log-file boot.log` يفتح UART، ويحافظ على البايتات الخام، ويطبع النتائج في السطر؛ `bootintel scan boot.log --format text` يعيد فحص لقطة محفوظة دون اتصال. تتضمن تنسيقات الإخراج نصًا وJSON وSARIF وJUnit، مع `--gate-critical` لبوابة CI. يوفر علم `--tui` (ميزة بناء) لوحة تحكم مقسمة الشاشة بتقنية ratatui مع تدفق تسلسلي ونتائج وأجزاء خادم. بالإضافة إلى الالتقاط، توفر الأداة `verdict` لتقييم ما تسمح به بيئة U-Boot (قابلية مقاطعة الإقلاع التلقائي، التحقق من الصور، مسارات التمهيد الشبكي، إعادة كتابة bootargs، استمرارية saveenv) بالكامل دون اتصال، و`diff` لمقارنة إقلاع البرامج الثابتة، و`share` لتضمين سجل في عنوان URL عبر ضغط lz-string دون رفع، و`analyze --interrupt-autoboot` لمقاطعة الإقلاع التلقائي وسحب البيئة. تتضمن الأوامر الفرعية أيضًا batch وwatch وcve وbench وreplay وmanpage وdetectors وschema وexport وview وdemo وinit وdoctor وcompletions. يتم التأكيد على الخصوصية: الكشف المحلي لا يتطلب حسابًا أبدًا، ولا يتم إرسال الإدخال التسلسلي تلقائيًا، والتحليل الخادمي هو اختيار صريح عبر `--api` أو `--api --preview`. توثق الأداة رموز خروج بنمط sysexits حتى يتمكن CI من التمييز بين اللقطات الفارغة (2)، والسجلات غير المعترف بها (3)، وفشل البوابة (1)، وحدود المعدل (75)، وفشل المصادقة (77). تشمل خيارات التثبيت سطر أوامر shell، وPowerShell، وHomebrew، وDocker، وNix، وcrates.io، وإجراء GitHub Actions مركب قابل لإعادة الاستخدام، مع مجاميع SHA256 وشهادات أصل البناء. المشروع مرخص بموجب Apache-2.0 ويستهدف Linux وmacOS وWindows مع Rust 1.90+ MSRV.