→ المدونة

ملاحظة ميدانية

اطلع برّه. الوكيل لسه شغال.

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

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

الشغل بيخلص سواء الـ build خلص أو ما خلصش. Pau hana — آخر يوم الشغل — بيوصل بمواعيده هو، والرد المعتاد إنك تتجاهله: تسيب اللاب توب مفتوح على الترابيزة، وتبص بنص عين على شريط التقدم، وتضيّع الليلة على عملية مش محتاجاك فى أى جزء منها.

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

السيرفر هو الطبقة اللى بتفضل

شغّل Claude Code أو Codex جوه tmux أو herdr أو Zellij، والجلسة ساعتها بتبقى ملك السيرفر، مش ملك اتصالك. انزل لشرطة إشارة واحدة، ادخل كهف حمم، سيب الموبايل ساعتين — الوكيل هيفضل يقرا ويعدّل ويشغّل اختبارات، لأن ما فيش حاجة فيه كانت متعلقة بيك أصلًا.

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

إنت مش مصدر الكهربا. بطّل تتصرف كإنك كده.

اطمن عليه، بلاش حراسة

الوكيل اللى بيشتغل ساعة محتاج بنى آدم فى حوالى تسعين ثانية منها. المشكلة عمرها ما كانت الاستنى؛ المشكلة إنك ما تعرفش إمتى التسعين ثانية دول بيوصلوا، وده اللى بيخلى الناس مبحلقة فى شاشة ما عندهاش حاجة تقولها.

Agent Alerts هى الرد على ده. الكشف غبى بشكل مقصود وعشان كده يتوثق فيه: جرس الترمنال، أو إشعار OSC 9 أو OSC 777، والـ hook بتاع الوكيل اللى بتثبته على السيرفر مرة واحدة. هى ما بتقراش المخرجات بتاعتك وتخمّن النية، وما فيش مؤشر حساسية تظبطه — هى بتبلّغ باللى البرنامج اللى على الناحية التانية أعلنه فعلًا.

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

قبل ما تخرج

  1. شغّله تحت multiplexer

    شغّل الوكيل جوه tmux أو herdr أو Zellij عشان الجلسة تعيش بعد اتصالك بدل ما تكون معتمدة عليه.

  2. ثبّت الـ hook بتاع الوكيل

    مرة واحدة لكل سيرفر، من جوه التطبيق. ده shell script صغير أى وكيل يقدر يناديه — مش تكامل مع مورّد، ولا مربوط بـ CLI واحدة.

  3. اتأكد إن تنبيه واحد بيوصل

    شغّل prompt وتأكد إن الموبايل بيهزّ قبل ما تعتمد عليه. التنبيه اللى عمرك ما شفته شغال مش خطة.

  4. اديله نقطة وقوف

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

مهمة تستاهل تسيبها لوحدها اقرا AGENTS.md، وبعدين صلّح اختبارات الـ handler الفاشلة. افحص الـ diff قبل ما تعدّل، وشغّل الاختبارات المركزة، ووقف بعد ما تنجح — ما تعملش commit.

اللى الجزيرة ما تقدرش تصلحه

حدّين بصراحة، لأن المقال اللى بيعدّد نقط القوة بس بيبقى إعلان.

إيه اللى بيفضل بعد ما تمشى
لما الموبايل يدخل جيبكبيكمّل؟
عملية الوكيل على السيرفرملك tmux أو herdr أو Zellij ✓ أيوه
الملفات والـ diffs ومخرجات الاختباراتعلى قرص السيرفر ✓ أيوه
مكانك فى الجلسةبيتوصل تانى لما ترجع ✓ أيوه
الاتصال، على Androidماسكه foreground service ✓ أيوه
الاتصال، على iOSوقت قصير فى الخلفية — وبعدين يعيد الاتصال — لأ
تنبيه من غير إشارة توصّلهمحتاج اتصال شغّال؛ وصوله مش مضمون — لأ
الوكيل فى كل صف بيفضل شغال. اللى بيتغيّر بس هو إن كان موبايلك لسه ماسك الشباك مفتوح ولا لأ.

الفرق بين المنصتين حقيقى ويستاهل تخطط له. على Android فيه foreground service بيمسك الاتصال والتطبيق فى الخلفية — الإشعار المستمر ده هو الجلسة. أما iOS فبيدي التطبيق وقت قصير بس فى الخلفية؛ وبعد ما يتعلّق، بيعيد الاتصال ويرجع يتوصل بالـ multiplexer بتاعك لما ترجع. التنبيهات محتاجة الاتصال يفضل شغّال. وفى الحالتين الوكيل اللى على السيرفر عمره ما وقف، وده بيت القصيد. اللى اتقفل هو الشباك بس.

Aloha مش عذر للإهمال

إنك تمشى صح ده انضباط صغير. أى حاجة ما كنتش هتحب تسيبها شغالة من غير رقابة ساعتين، ما تبدأهاش وإنت طالع من الباب — الوكيل اللى فى نص migration مش بتنفعه المسافة. اديله مهمة ليها نقطة وقوف طبيعية، واطلب منه يفحص قبل ما يعدّل، وخلى الـ diff هو اللى تراجعه لما ترجع.

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

الـ build مش محتاج جمهور. قوم اخرج وكون فى مكان.