← Blog

Saha notu

Dışarı çıkın. Ajan çalışmaya devam ediyor.

Ajanınızı ayakta tutan şey hiçbir zaman telefon olmadı; sunucu oldu. Buna bir kez inandığınızda dışarıda geçen bir öğleden sonranın size maliyeti sıfırdır: siz gidersiniz, iş sürer ve sizi yalnızca gerçekten yanıt bekleyen bir soru böler.

Sahibi olduğunuz bir makinede dört oturum. Üçü nerede olduğunuzu umursamıyor. Dördüncüsü ise telefonu cebinizden çıkarmanız için tek neden.

Build bitse de bitmese de mesai biter. Pau hana — çalışma gününün sonu — kendi takvimiyle gelir ve alışılmış yanıt onu görmezden gelmektir: dizüstü bilgisayarı masada açık bırakmak, bir ilerleme çubuğuna yarım gözle bakmak ve akşamı, hiçbir aşamasında size ihtiyacı olmayan bir sürece feda etmek.

Bu takas ancak iş, taşıdığınız makinede yürüyorsa anlamlıdır. Genellikle öyle değildir. Ajan bir sunucuda çalışan bir süreçtir; o sunucunun diskindeki dosyaları düzenler, o sunucunun testlerini çalıştırır. Telefonunuz ona açılan bir penceredir. Pencereyi kapatın, oda hâlâ yerinde durur.

Dayanıklı katman sunucudur

Claude Code veya Codex'i tmux, herdr ya da Zellij içinde başlatın; oturum bağlantınıza değil, sunucuya ait olur. Sinyaliniz tek çubuğa düşsün, bir lav tüpüne girin, telefonu iki saat kaldırın — ajan okumayı, düzenlemeyi ve test çalıştırmayı sürdürür, çünkü hiçbir yanı hiçbir zaman size bağlı değildi.

Bütün hüner budur ve bu konuda kesin konuşmakta yarar var, çünkü övgüyü yanlış bileşene vermek kolaydır. Süreci ayakta tutan uygulama değildir; karşı uçtaki multiplexer'dır. Mobile SSH'nin işi, temiz biçimde ayrılıp temiz biçimde geri dönmektir.

Siz güç kaynağı değilsiniz. Öyleymişsiniz gibi davranmayı bırakın.

Uğrayın, dadılık etmeyin

Bir saat çalışan bir ajanın insana ihtiyacı bunun yaklaşık doksan saniyesindedir. Sorun hiçbir zaman beklemek olmadı; o doksan saniyenin ne zaman geldiğini bilmemek oldu — insanları, söyleyecek hiçbir şeyi olmayan bir ekrana bakar hâlde tutan da budur.

Agent Alerts bunu yanıtlar. Algılama bilinçli olarak yalındır ve tam bu yüzden güvenilirdir: bir terminal zili, bir OSC 9 ya da OSC 777 bildirimi ve sunucuya bir kez kurduğunuz ajan hook'u. Çıktınızı okuyup niyet tahmin etmez, ayarlanacak bir hassasiyet düğmesi de yoktur — karşı taraftaki programın gerçekten duyurduğu şeyi bildirir.

Yani gerçek bir soru ortaya çıkana kadar telefon cebinizde kalır. Sonra titrer, istemi okursunuz, bir yanıta dokunur ve telefonu kaldırırsınız. Etkileşimin tamamı budur ve bir kumsaldan, bir patika başından ya da shave ice kuyruğundan işler.

Dışarı çıkmadan önce

  1. Bir multiplexer altında başlatın

    Ajanı tmux, herdr ya da Zellij içinde çalıştırın ki oturum bağlantınıza bağımlı kalmak yerine ondan sağ çıksın.

  2. Ajan hook'unu kurun

    Sunucu başına bir kez, uygulamanın içinden. Bu, her ajanın çağırabileceği küçük bir kabuk betiğidir — sağlayıcıya özel bir entegrasyon değildir ve tek bir CLI'a bağlı değildir.

  3. Bir uyarının ulaştığını kanıtlayın

    Ona güvenmeden önce bir istem tetikleyin ve telefonun titrediğini doğrulayın. Çalıştığını hiç görmediğiniz bir uyarı, plan değildir.

  4. Ona bir durma noktası verin

    Makul bir yerde biten bir görev, ucu açık olana yeğdir; çünkü onu izlememeyi seçiyorsunuz.

Yalnız bırakılmaya değer bir görev AGENTS.md'yi oku, sonra başarısız handler testlerini düzelt. Düzenlemeden önce diff'i incele, odaklı testleri çalıştır ve geçtiklerinde dur — commit etme.

Adanın düzeltemeyecekleri

İki dürüst sınır — çünkü yalnızca güçlü yanları sıralayan bir yazı, reklamdır.

Siz uzaklaştığınızda ayakta kalanlar
Telefon cebe girdiğindeDevam eder mi?
Sunucudaki ajan süreciSahibi tmux, herdr veya Zellij ✓ Evet
Dosyalar, diff'ler ve test çıktısıSunucunun diskinde ✓ Evet
Oturumdaki yerinizDöndüğünüzde yeniden iliştirilir ✓ Evet
Android'de bağlantıBir ön plan hizmeti tutar ✓ Evet
iOS'ta bağlantıKısa süre arka planda — ardından yeniden bağlanır — Hayır
İletecek sinyali olmayan bir uyarıEtkin bağlantı gerekir; teslim garantisi yoktur — Hayır
Ajan her satırda çalışmaya devam eder. Değişen tek şey, telefonunuzun pencereyi açık tutmayı sürdürüp sürdürmediğidir.

Platform farkı gerçektir ve buna göre plan yapmakta yarar var. Android'de, uygulama arka plandayken bağlantıyı bir ön plan hizmeti tutar — kalıcı bildirim oturumun kendisidir. iOS uygulamaya arka planda yalnızca kısa bir süre tanır; askıya alındıktan sonra geri döndüğünüzde yeniden bağlanıp çoklayıcınıza tekrar iliştirilir. Uyarılar için bağlantının etkin olması gerekir. Her iki durumda da sunucudaki ajan hiç durmadı; asıl mesele bu. Kapanan yalnızca pencereydi.

Aloha, dikkatsizliğin mazereti değildir

İyi ayrılmak küçük bir disiplindir. İki saat gözetimsiz çalışmasını istemeyeceğiniz hiçbir şeyi kapıdan çıkarken başlatmayın — bir migration'ın ortasındaki ajan, mesafeyle daha iyi hâle gelmez. Ona doğal bir durma noktası olan bir görev verin, düzenlemeden önce incelemesini isteyin ve döndüğünüzde gözden geçireceğiniz şey diff olsun.

Bildirime de bir çağrı cihazına göstereceğiniz özeni gösterin. Her şey uyarı üretiyorsa hiçbir şey uyarı üretmiyordur. Hook, bir insanı bölmeye değer durumlarda tetiklenir; öyle bırakın ki titreşim anlamlı kalsın.

Build'in seyirciye ihtiyacı yok. Gidin ve bir yerde olun.