الترمنال

ترمنال Mobile SSH متعمول علشان الشغل على الموبايل والتابلت. بيجمع بين مساحة الترمنال، وصف الأزرار الإضافي، وبانلات الجلسات المتعددة، ومعالجة التمرير، وسلوك إعادة الاتصال.

أساسيات الترمنال

شبكة الجلسات المتعددة

Mobile SSH يقدر يشغّل لحد تمن جلسات SSH في نفس الوقت. كل جلسة بتظهر كبانل في شبكة الترمنالات. اضغط على بانل علشان تختاره، أو استخدم + Add Session علشان تبدأ اتصال تاني.

رأس البانل بيقولك إنت فين. على Android بيعرض مجلد الشغل الحقيقي بتاع البانل، مسحوب من tmux أو مبلَّغ من الشِل عبر OSC 7 وبيتحدّث طول ما التطبيق مفتوح؛ وعلى iOS بيعرض العنوان اللي الطرف البعيد بيحطه، وبيرجع لـ user@host:port لو مافيش.

لما تقفل لوحة بتقطع اتصال SSH بتاعها. لو رجعت للرئيسية، تقدر تفتح الاتصالات من الجلسات الشغالة. العنوان بين لو الاتصال وقف يرد؛ ومن الإعدادات تقدر تعرض سرعة النقل وتختار تعتيم أو اهتزاز لما الرد يقف.

Eternal Terminal (ET)

على النظامين، لما تضيف سيرفر أو تعدله هتلاقي وسائل النقل دي في اختيار النقل:

ET بيخلّي الجلسة شغّالة على السيرفر، فلما موبايلك يغيّر الشبكة أو يصحى من النوم، Mobile SSH بيربط تاني بنفس الشِل الشغّال بدل ما يفتح واحد جديد. ده بيخلّيه مناسب لبيانات الموبايل، والتنقل بين Wi-Fi والشبكة الخلوية، والأوامر اللي بتاخد وقت طويل.

ET محتاج etserver شغال على المضيف. لو مش موجود، Mobile SSH يقدر يعرض عليك تثبيته وتشغيله عن طريق SSH. راجع أوامر الإعداد ووافق عليها وبعدين اختار Eternal Terminal. مسار السيرفرات الوسيطة لازم يستخدم SSH.

صف الأزرار الإضافي

المنصتين الاتنين بيحطوا صف من تلتاشر زرار ترمنال في متناول إيدك — المفاتيح اللي صعبة أو مش موجودة على كيبورد اللمس. على Android هو شريط تحت في الجلسة (وبيخفي نفسه لما كيبورد هاردوير يتوصّل)؛ وعلى iOS بيركب فوق كيبورد الشاشة.

المجموعتين الافتراضيتين نفس الحجم بس مش متطابقتين:

AndroidiOS
الافتراضيESC TAB CTRL الأسهم HOME PGUP END PGDN ⌫ ⌨ESC TAB CTRL ⇧ الأسهم HOME END PGUP PGDN ⌨
الفرقفيه مفتاح مسح للخلف، من غير Shiftفيه Shift لاصق، من غير مفتاح مسح للخلف

الصف عمره ما بيتمرّر. أول ما المفاتيح تبطّل تدخل في العرض، بيقسّموا المساحة بالتساوي وبيلفّوا لصف تاني؛ وأي حاجة فاضلة بتتلم في قايمة إضافية ⋯. مافيش حاجة متخبّية ورا سحبة ولا مقصوصة عند حرف الشاشة، والمعدِّل اللي مسلّحه بيفضل ساري على أي مفتاح تختاره من القايمة الإضافية.

CTRL بيشتغل كمعدِّل لاصق: اضغط CTRL وبعدين اكتب C علشان تبعت Ctrl-C. وShift ألزق على iOS منه على Android — على iOS بيكبّر كمان أول حرف تكتبه على كيبورد الشاشة، بينما على Android بيسري بس على مفاتيح الشريط نفسه (Shift+Tab، وShift+الأسهم).

امسك مفتاح زي سهم أو PGDN وهو هيكرّر.

سلوك الكيبورد

Android بيبعت الكتابة العادية مباشرة إلى الصدفة البعيدة، مع تعطيل التصحيح والتوقعات بشكل افتراضي. بيفضل الإملاء الصوتي قادرًا على إدخال النص عبر الكيبورد.

على iOS، الإعدادات ← الطرفية ← الإملاء والاقتراحات شغال تلقائيًا؛ بيساعدك تملي كلام وتشوف توقعات وتصحيحات للسطر اللي بتكتبه. لو عايز تبعت ضغطات خام، اقفله وخلي اقتراحات الكيبورد مقفولة، وبعد كده افتح لوحة جديدة.

إظهار الكيبورد باللمس بيحدد هل اللمسة تفتح كيبورد الشاشة. على Android مقفول تلقائيًا وعلى iOS شغال. زر الكيبورد في الشريط لسه موجود.

كيبوردات الهاردوير

الكيبوردات الخارجية وBluetooth بتشغّل الترمنال مباشرة على Android وiOS الاتنين. غير الحروف العادية، Mobile SSH بيربط مفاتيح الأسهم، وHome/End، وPgUp/PgDn، وInsert، وDelete، وEsc، ومفاتيح الوظائف F1–F12، وتوليفات Ctrl+مفتاح وAlt/Option-كـ-Meta، وShift+Tab. مفاتيح التعديل بتتجمّع مع المعدِّلات اللاصقة بتاعة صف الأزرار الإضافي.

اللصق

اللصق في برنامج بيطلبه (bash وVim وباقي التطبيقات اللي بتدعم bracketed paste) بيتغلّف بعلامات اللصق المُقوّس، علشان محتوى الحافظة اللي فيه أكتر من سطر يتحط كنص بدل ما يتنفّذ أوتوماتيكيًا سطر ورا سطر. بس اللصق الحقيقي هو اللي بيتغلّف؛ النص المكتوب أو المُملى مابيتغيّرش.

التحديد والنسخ والمشاركة

اضغط ضغطة طويلة جوه الطرفية عشان تحدد الكلمة، واسحب المقابض لتعديل الاختيار. شريط التحديد فيه:

البحث في الترمنال

دوّر في بافر الترمنال كله — الـ scrollback والشاشة الظاهرة — وانتقل بين النتايج. افتح البحث من عناصر تحكم الترمنال، اكتب استعلام، واتنقل بين النتايج. ده بيشتغل على Android وiOS الاتنين.

الألوان والخط المائل والحافظة البعيدة

تكامل الشِل والصور المضمّنة

المظهر والمفاتيح

على Android وiOS الاتنين، الإعدادات بتخليك تظبّط الترمنال على مزاجك:

الرجوع للافتراضي بيرجّع الإعدادات اللي التطبيق نازل بيها مش بيجمّد قايمة النهاردة، فتحسينات أي إصدار جاي تفضل توصلك. والتعديلات بتسري مباشرة على البانلات المفتوحة أصلًا.

التمرير

Mobile SSH بيوجّه إيماءات التمرير حسب حالة الترمنال:

على النظامين اللمسة جوه برنامج بيتابع الماوس بتبعت نقرة شمال عادةً. على iOS، اللمس بيحط المؤشر بيبدل ده بتحريك المؤشر؛ Shift مع اللمس بيعمل الاختيار التاني. السحب بعد ضغطة طويلة اختياري ومقفول تلقائيًا، فالسحب العادي بيمرر المحتوى.

لو كتبت وإنت ماسك التمرير لفوق، Mobile SSH بيرجع لعرض الترمنال المباشر.

سلوك tmux

Mobile SSH بيراقب أوامر tmux الصادرة للربط وإنشاء جلسة جديدة، زي:

tmux attach -t work
tmux a -t work
tmux new -A -s work

لما الاتصال يتقطع، التطبيق بيفتكر جلسة tmux والـ socket اللي متصل بيهم عشان يرجع لنفس المكان. اللوحات اللي على نفس المضيف بتحتفظ كل واحدة بهدفها. لو الجلسة اختفت، الشيل لسه متاح.

iOS بيقرا بادئة tmux الحالية لما تبدل socket، مش بيفترض إنها Ctrl+B. لو البادئة مش مدعومة أو الاستعلام فشل، بيقف ويعرض رسالة. الكتابة أو قفل اللوحة أو قطع الاتصال بيلغي خطوات الإرفاق المستنية؛ ومفيش أوامر بتتبعت لبرنامج شاشة كاملة مش معروف.

مدير tmux

يتيح مدير tmux في Mobile SSH التصفح والتحكم من غير كتابة مفاتيح البادئة. افتحه من زر معدد الجلسات في اتصال نشط؛ واضغط مطولًا لاختيار tmux عند توفر عدة مديرين. يتكون من ثلاثة أقسام:

من المدير تقدر:

🔔 بيعلّم أي جلسة الوكيل بتاعها مستني مدخلات، فتقدر تلاحظ تشغيل Claude Code أو Codex متوقف بنظرة واحدة وتربط بيه. ده بيكمّل تلميحات إعادة الربط اللي فوق: منطق إعادة الربط بيرجّع آخر جلسة ليك تلقائيًا عند إعادة الاتصال، بينما المدير بيديك تحكم يدوي كامل.

النظامين بيدعموا إدارة عدة خوادم tmux (مقابس) على المضيف نفسه. تشير علامة الإرفاق إلى الطرفية اللي بتستخدمها، لا إلى عميل آخر على الخادم.

Herdr وZellij

Android وiOS كمان بيديروا Herdr وZellij. زر واحد في الشريط بيفتح المعدد الأساسي اللي اتلاقى، والضغط الطويل بيختار غيره. المعروض بس البرامج الموجودة على السيرفر. جوه المدير، عنوان السيرفر بيغير السيرفر، واختيار المعدد بيغير المدير.

لو herdr أو Zellij متركّب بس مش على PATH بتاع شِل الدخول، الصفحة بتعرض عليك تضيفه.

كل سيرفر محفوظ عنده الإرفاق وقت الاتصال: تلقائي، ولا حاجة، tmux، herdr أو Zellij. التلقائي بيستخدم الكشف والتاريخ، ويفضل المستخدم قبل كده، ثم اللي فيه جلسات شغالة، ثم المثبت. لو مفيش كشف مخزن بيفتح شيل عادي. الكشف اللي بعد كده بيأثر على الاتصال الجاي بس، مش بيشغل حاجة فوق إدخالك الحالي.

تنبيهات الوكيل

Mobile SSH بيقولك لما وكيل برمجة بالـ AI بعيد — Claude Code أو Codex أو Gemini — يبقى واقف مستنيك. وهو مابيخمّنش بقراية خرج الترمنال بتاعك. فيه طريقتين، وبيشتغلوا بمستويات تفصيل مختلفة.

الجرس

جرس الطرفية ممكن يطلع تنبيه وكيل. الجرس بعد الكتابة على طول بيتجاهله تلقائيًا. إشعارات البرامج البعيدة (OSC 9 وOSC 777) وتنبيه انتهاء الأمر OSC 133 ليهم إعدادات منفصلة؛ الاتنين على iOS مقفولين لحد ما تشغلهم.

ده مش محتاج أي تجهيز، بس التطبيق بيعرف بس إن حاجة رنّت.

hook الوكيل

علشان التطبيق يعرف أنهي وكيل مستني وبيعمل إيه، ركّب hook الوكيل على السيرفر:

ده بيكتب سكربت shell صغير في ~/.mobile-ssh/agent-hook.sh على السيرفر ده. وهو مش مربوط بوكيل معيّن — بياخد وسائط من سطر الأوامر بدل ما يفكّك صيغة مورّد بعينه — فأي حاجة تقدر تشغّل أمر تقدر تبلّغ من خلاله. ومسح الملف بيبقى إزالة نضيفة.

أول ما وكيل يبلّغ من خلال الـ hook:

الرد من غير كتابة

لما وكيل يسأل سؤال إجاباته محددة، التطبيق بيعرض زرار لكل خيار — لحد ستة — في قايمة Agents. وعلى Android تقدر كمان تضغط على شارة الوكيل في رأس البانل.

وإجابتك مابتتكتبش في الجلسة. بتتكتب في ملف على قناة منفصلة والـ hook بياخدها منه، فالرد مايقدرش يبوّظ اللي على الشاشة. والتطبيق بيرفض يبعت خيار الموجّه ماعرضهوش فعلًا، وبيقولك بوضوح لو الاتصال قطع في الوقت ده بدل ما يفشل في صمت.

الإعدادات

تنبيهات الوكلاء مفتوحة تلقائيًا على النظامين، مع مفتاح للإشعارات والصوت والاهتزاز واللوحة النشطة. iOS بينبه للوحة النشطة تلقائيًا كمان، وفيه اختيار الخلفية بس. التنبيه بيوصل لما iOS يسمح للتطبيق يشتغل؛ التعليق الطويل في الخلفية بيقطع تنبيهات SSH المباشرة.

وفيه إعداد افتراضي يستاهل تعرفه: الصوت مقصور على السماعات. لو مافيش سماعة متوصّلة أو متقرنة، التنبيه بيشعر ويهتز بس مش بيطلّع صوت. اقفل الإعداد ده لو عايز التنبيه مسموع من سماعة الموبايل.

مافيش إعداد حساسية ولا منتقي صوت — التحكمات تشغيل/إيقاف بس.

برامج الترمنال بملء الشاشة

لبرامج زي Vim وless وhtop وأدوات ncurses وبانلات tmux:

سطح المكتب البعيد

النظامين بيفتحوا سطح مكتب بعيد عن طريق VNC جوه SSH. استخدم شاشة مشتركة موجودة، زي مشاركة شاشة macOS، أو وافق على إعداد سطح Linux مدعوم. السيرفر لازم يوفر سطح المكتب؛ إذن SSH لوحده مش بيعمل جلسة رسومية. عكس شاشة Linux محتاج X11 مش Wayland؛ macOS بيستخدم الشاشة المشتركة الموجودة من غير ما يعمل سطح مستقل.

استخدم اللمس للنقر والسحب والتكبير، والكيبورد اللي على الشاشة أو الخارجية للكتابة. تتيح الحافظة لصق نص الموبايل في سطح المكتب ونسخ النص منه إلى الموبايل.

حجم الشاشة فيه مقاسات جاهزة ومخصصة بتتحفظ لكل سيرفر. على iOS كل ضلع لازم يكون بين 320 و5120 بكسل. لو السيرفر بيدعم تغيير مباشر، البرامج بتفضل مفتوحة. إعادة التشغيل كبديل محتاجة تأكيد، وموجودة بس لسطح مستقل التطبيق عمله. الأسطح الموجودة والشاشات المشتركة مش بتتعمل لها إعادة تشغيل عشان الحجم. لو Mac مش بيدعم تغيير مباشر، غير الدقة في إعدادات شاشاته.