عن المشروع

witr هو ملف تنفيذي ثابت واحد لنظم Linux وmacOS وWindows وFreeBSD يجيب عن سؤال واحد: لماذا هذا قيد التشغيل؟ عند إعطائه اسم عملية أو PID أو منفذاً أو حاوية أو ملفاً مفتوحاً، يبني السلسلة السببية للمشرفين والخدمات والأصداف والحاويات المسؤولة عن وجود ذلك الشيء الآن. الفكرة الأساسية: يُعامل كل شيء كسؤال عن عملية. المنافذ والخدمات والحاويات والأوامر كلها تُربط مرة أخرى إلى PIDs، وبمجرد تحديد PID يشرح witr ما الذي يعمل، وكيف بدأ، وما الذي يبقيه قيد التشغيل، وإلى أي سياق ينتمي. يختلف هذا عن أدوات مثل ps أو top أو lsof أو ss أو systemctl أو docker ps، التي تكشف الحالة والبيانات الوصفية لكنها تترك المستخدم ليربط المخرجات يدوياً. أوضاع الاستخدام: - يُظهر الخرج القياسي الهدف، والعملية، والمستخدم، والأمر، ووقت البدء، وسلسلة النسب (مثلاً systemd إلى pm2 إلى node)، والمصدر، ودليل العمل، ومستودع git، والمقابس. - --short يطبع سلسلة النسب فقط؛ و--tree يعرض سلسلة النسب كشجرة تتضمن حتى 10 عمليات فرعية. - --json يصدر نتائج قابلة للقراءة آلياً؛ و--env يعرض متغيرات البيئة؛ و--verbose يضيف معلومات موسعة عن العملية؛ و--warnings يعرض التحذيرات فقط. - تُعامل الوسائط الموضعية كأسماء عمليات أو خدمات، مع مطابقة السلاسل الفرعية افتراضياً و--exact للأسماء الدقيقة. تُدرج المطابقات المتعددة مع PIDs واقتراح بإعادة التشغيل مع --pid. - --pid و--port و--file و--container قابلة للتكرار ويمكن خلطها مع بعضها ومع وسائط الأسماء؛ تظهر النتائج بالترتيب المعطى، مفصولة بفواصل موسومة. - --container يبحث عبر Docker وPodman وnerdctl وK8s/crictl وIncus وLXC وLXD وFreeBSD jails، مطابقاً اسم الحاوية والصورة والأمر وتسميات مشروع/خدمة compose. واجهة TUI التفاعلية: تشغيل witr بلا وسائط أو مع -i يفتح لوحة طرفية بأربع تبويبات. Processes يعرض قائمة حية قابلة للفرز والتصفية مع لوحة جانبية لسلسلة النسب. Ports يسرد المنافذ المستمعة أو كل المنافذ مع العمليات المالكة، ويُبدَّل بـ a. Containers يجمع الحاويات قيد التشغيل عبر بيئات التشغيل المدعومة مع عرض تفصيلي للتحميلات والشبكات وبيانات compose الوصفية. Locks يعرض أقفال الملفات على مستوى النظام (POSIX/FLOCK على Linux، ومشتقة من lsof على macOS/FreeBSD) ويمكنه دمج كل واصفات الملفات المفتوحة المهمة. تدعم TUI أيضاً إجراءات العمليات مثل kill وterminate وpause وresume وrenice على Unix، والتنقل بالفأرة، وتنسيق فاتح/داكن تكيفي، والتحديث التلقائي بإيقاع تكيفي يبدأ من 3 ثوانٍ. التثبيت واسع: نصوص تثبيت لـ Unix وWindows، بالإضافة إلى حزم عبر APT وHomebrew وMacPorts وConda وAUR وWinget وnpm وFreeBSD Ports وChocolatey وScoop وAOSC OS وGNU Guix وUniget وAqua وBrioche وmise، مع مخرجات deb/rpm/apk وgo install من المصدر. تُوفَّر إكمالات الصدفة لـ Bash وZsh وFish وPowerShell، وتُضمَّن صفحة man. يتوفر درس تعليمي محاكى في المتصفح وصندوق رمل لتجربة سير العمل دون تثبيت.