Ajanlarınız geride süreçler bırakıyor.
AgentsRoom onları buluyor.
Bir yapay zeka kodlama ajanı, çağırdığı her araç için gerçek bir sistem süreci başlatır. Çoğu saniyeler içinde biter. Bazıları hiç bitmez ve işte onlar, hiç CPU kullanmadan gigabaytlarca belleği rehin tutar.
Süreç Bekçisi ajanlarınızın alt süreçlerini tarar, ilerlemeyi durduranları işaretler, sorumlu ajanın adını verir ve tek tıkla sonlandırır. Arkanızdan hiçbir şey sonlandırılmaz.
Bekçinin gerçekte neye baktığı: tek bir ajanın başlattığı süreçler ve hangilerinin çalışmayı bıraktığı.
Bir yapay zeka kodlama ajanı tek bir süreçten ibaret değildir. Yaptığı her araç çağrısı makinenizde gerçek bir süreç başlatır: bir arama, bir derleme, bir tip kontrolü, bir test koşusu, bir betik. Bunu paralel çalışan birkaç ajanla ve tam bir günle çarpın; siz hiçbirini görmeden doğup gömülen yüzlerce süreç elde edersiniz.
Neredeyse hepsi biter. Sorun, bitmeyenlerde. Kalıbı düzenli ifade motorunu patlatan bir arama ne çöker ne de yavaşlar: bellek ayırır, sıkıştırılmış belleğe itilir ve ondan sonra ömrünü %4 CPU ile sayfa hatası üreterek geçirir. Asla bitmeyecektir. Onu hiçbir şey öldürmeyecektir. Ve onu başlatan ajan kapatılırsa süreç init sürecine devredilir ve makinede artık kimsenin sorumlu olmadığı bir yetim hâline gelir.
Yavaşlamanın sinsice gelmesinin sebebi bu. Tek bir dramatik an yok, bir iş günü boyunca yavaş bir birikim var ve bu tam olarak insanlara yanlış şeyi suçlatan biçim: aşırı ısınma, fazla sayıda ajan, uygulamada bir bellek sızıntısı. Ölçtüğümüz oturumda uygulamanın kendisi 91 süreç için 2,8 GB, sekiz ajan CLI'si ise hepsi bir arada 1,6 GB kullanıyordu. Sorun ikisi de değildi.
Süreç Bekçisi işte o güvenlik ağı. Ajanların geride bıraktıklarını izler, hangisinin takıldığını ve onu kimin başlattığını söyler ve sonlandırmanıza izin verir. Kök nedenler değişmeye devam edecek: başka bir araç, başka bir kalıp, başka bir sağlayıcı. Ağın değişmesine gerek yok.
Yapay zeka ajanları çalıştıran bir makine neden yavaşlar
Aşağıdaki sayılar, sekiz ajanın çalıştığı 16 GB'lık bir dizüstünde ölçülmüş tek bir oturumdan geliyor. Buradaki hiçbir şey tahmin değil.
Makine beş buçuk saattir açıktı. Isı sorunu hiç yoktu: kayda geçen throttling yok, pil 30,6 °C. Yük ortalaması 8 çekirdek üzerinde 17 ile 21 arasındaydı ve işlemci zamanının %56'sını çekirdekte, %1,5'ini boşta geçiriyordu. İşi ele veren bu oran. Gerçekten iş yapan bir makine zamanını kullanıcı kodunda geçirir; zamanının %56'sı sistemde geçen bir makinede ise çekirdek, bellek sıkıştırmaktan, açmaktan ve swap'a yazmaktan başka bir şey yapmıyordur.
Takılı kalmış yedi arama süreci her biri 3,9 ile 8,0 GB arasında bellek tutuyordu; 16 GB RAM'i olan bir makinede toplam 41,8 GB. Swap 23,5 GB'ın 22,3 GB'ıydı ve açılıştan beri swap'a yaklaşık 993 GB yazılmıştı. Bu yedi süreci sonlandırmak, tek bir ajanı bile yeniden başlatmadan ve uygulamayı yeniden başlatmadan anında 15,5 GB geri verdi.
Bunu kimsenin elle yakalayamamasının sebebi, alışılmış araçların bu konuda yalan söylemesi. macOS'ta takılı bir süreç aslında 8 GB tutarken 20 MB yerleşik bellek gösterebilir, çünkü dokunduğu her şey bellek sıkıştırıcısından geçmiştir. Canlı bir tanesini 14 GB'lık gerçek bir ayak izine karşılık 4,7 GB yerleşik bellekle ölçtük. Sanal boyut da işe yaramaz: o platformda launchd bile yaklaşık 440 GB sanal boyut bildirir, yani ona göre süzmek makinenin tamamını işaretler.
Aynı oturum, saat saat: artık kimsenin kullanmadığı bellek dilimleri ve serbest bırakıldıklarında olanlar.
Ve bu süreçlerin, yarın da burada olacaklarını garantileyen dört özelliği var.
Asla bitmezler
Kendi bellekleri swap'ta olduğu için hesap yapmak yerine zamanlarını sayfa hatası üreterek geçirirler. Sağlıklı bir arama bir çekirdeği doldurur; bunlar %4'te oturur. Bu sarmaldan çıkış yok ve ne kadar beklerseniz bekleyin bir şey değişmez.
Asla ölmezler
Bir araç çağrısının zaman aşımı yoktur. Makinede hiçbir şeyin, elli dakikadır boşta duran bir süreç hakkında bir fikri yoktur. Biri onu öldürene ya da makine yeniden başlayana kadar orada oturur.
Ajanlarından uzun yaşarlar
Ajan sekmesini kapatın, süreç init sürecine devredilerek hayatta kalabilir. O noktadan sonra onu hiçbir şeye bağlayan bir bağ kalmaz: bu bir yetim süreçtir ve arkasını toplayacak kimse yoktur. Ölçtüğümüz yedi süreçten ikisi zaten bu durumdaydı.
Üst üste birikirler
Her doğrulama turunda bir tane, her şanssız aramada bir tane. Yavaşlamanın gün boyunca sürekli artmasının ve yeniden başlatmanın sorunu çözüyormuş gibi görünmesinin sebebi bu. Hiçbir şeyi çözmez, sadece sayacı sıfırlar.
Süreç Bekçisi ne yapar
Ajanlarınızın başlattığı süreçleri izler ve neye dokunacağı konusunda bilerek çok dardır.
Gerçek belleği ölçer
Takılı bir süreci gigabaytlarca eksik gösteren yerleşik boyutu değil. Bekçi, sıkıştırılmış ve swap'a çıkmış sayfalar dahil gerçek ayak izini okur; böylece 20 MB gösterip 8 GB tutan bir süreç olduğu gibi görülür.
Sadece RAM'e değil, CPU'ya da bakar
Tek başına bellek, makinenizdeki her derlemeyi işaretlerdi. Bekçi işlemci kullanımını iki tarama arasındaki bir hız olarak ölçer; böylece çok çalışıp sonra kilitlenen bir süreç yine de yakalanır, gerçekten çalışan bir derleme ise rahat bırakılır.
Yetim süreçleri yakalar
Kendisini başlatan ajandan uzun yaşayan bir süreç kendi başına bildirilir, çünkü belleğini başka kimse geri almayacaktır. Sahiplik, süreç hâlâ bağlıyken hatırlanır: bunun kurulabileceği tek an odur.
Sonlandırmak için tek tık
Durum çubuğundaki bir rozet, takılı her süreci onu başlatan ajanla, belleğiyle, yaşıyla ve CPU kullanımıyla listeler. Birini sonlandırmak onu ve kendi başlattığı her şeyi kapatır. Bellek hemen geri gelir ve ajanlarınız çalışmaya devam eder.
macOS, Windows ve Linux
Bellek konusunda doğruyu söylemek için her sistem farklı bir ölçüm ister: macOS'ta sıkıştırılmış sayfalar, Linux'ta yerleşik artı swap'a çıkmış olanlar, Windows'ta özel ayrılmış bellek. Üçü de planlanmış değil, uygulanmış durumda.
Neredeyse hiçbir maliyeti yok
Dakikada bir süreç anlık görüntüsü, 824 sürecin çalıştığı bir makinede yaklaşık 40 ms olarak ölçüldü. Pahalı bellek ölçümü yalnızca bir şey zaten takılı görünüyorsa çalışır ve hiçbir ajan aktif değilken hiç tarama yapılmaz.
Yalancı çoban olmasını engelleyen kural
Derlemelerinizi işaretleyen bir bekçiyi bir hafta içinde kapatırsınız. Bu yüzden bir süreç asla yalnızca belleğine bakılarak bildirilmez. Büyük olmalı, bir süredir yaşıyor olmalı ve işlemciyi kullanmayı bırakmış olmalı. Üçü aynı anda.
İşi yapan, o üçüncü koşul. Bir tip kontrolü ya da bir paketleyici de dakikalarca gigabaytlarca bellek tutar, ama bunu yaparken bir çekirdeği doldurur. Swap'a hapsolmuş bir süreç %4 civarında kalır, çünkü ömrünü hesap yapmak yerine sayfa hatası beklemekle geçirir. Çalışan bir makineyi boğulan bir makineden ayıran şey bu fark ve onları güvenilir biçimde ayıran tek sinyal de bu.
İşlemci kullanımı ayrıca okunmaz, ölçülür. Bir sistem aracının verdiği alışılmış rakam, sürecin tüm ömrü boyunca alınan ortalamadır ve yirmi dakika çok çalışıp sonra kilitlenmiş bir şey için hâlâ meşgul görünür. Bekçi bunun yerine tüketilen işlemci zamanını iki tarama arasında karşılaştırır; yani gördüğü şey son saat değil, son dakikadır.
Nasıl çalışır
Dakikada bir kez dört adım ve pahalı olanı neredeyse hiç çalışmaz.
Makinenin ucuz bir anlık görüntüsü
Bekçi her dakika çalışan tüm süreçlerin tek bir anlık görüntüsünü alır ve her ajan terminalinin altındaki ağacı dolaşır. 824 sürecin çalıştığı bir makinede ölçülen maliyet: yaklaşık 40 ms. Hiçbir ajan çalışmıyorken bu hiç gerçekleşmez.
Şüphelilerin kısa listesi
O anlık görüntüden yalnızca, eşiğinizden daha uzun süredir yaşayan ve artık işlemciyi kullanmayan ajan alt süreçlerini tutar. Normal kullanımda bu liste boştur ve her şey burada biter.
Takılı görünenlerin ölçülmesi
Bekçi gerçek bellek ölçümünün bedelini yalnızca bu kısa liste için öder; sıkıştırılmış ve swap'a çıkmış sayfalar dahil. Ölçemediği bir süreç asla işaretlenmez: bilinmeyen bir hüküm değildir.
Bildirim, karar sizin
Durum çubuğunda bir rozet belirir ve tek bir bildirim size bunu bir kez haber verir. Listeyi açar, sürecin ne olduğunu, ne kadar bellek tuttuğunu, ne zamandır takılı olduğunu ve hangi ajanın başlattığını görür ve isterseniz sonlandırırsınız.
Asla dokunmayacağı şeyler
Süreç sonlandırabilen bir aracın, neyi kendi işi saydığı konusunda dar olması gerekir. Bu sınırlar yapısaldır, açmayı hatırlamanız gereken seçenekler değil.
- Ajan CLI'sinin kendisi. Hangi sağlayıcıyı çalıştırırsanız çalıştırın, bekçi uygulamanın o terminali başlatmak için kullandığı ikili dosyayı korur. Bu adı sabit kodlanmış bir listeden değil, başlatmanın kendisinden okur; böylece aynı CLI'nin bir alt süreci de hangi derinlikte olursa olsun korunur.
- Geliştirme komutu terminalleriniz. Boştaki bir geliştirme sunucusu kaçak süreç ölçütlerinin hepsini karşılar: şişman, eski, işlemci kullanımı yok. Aynı zamanda gerçekten çalışmasını istediğiniz tek süreç odur. Yalnızca ajan terminalleri izlenir, dolayısıyla geliştirme sunucunuz hiçbir zaman resme girmez.
- Shell ve uygulamanın kendi iç tesisatı. Terminal yardımcısı ve bir ajanın içinde çalıştığı shell yapı gereği dışarıda bırakılır. Yalnızca ajan CLI'sinin altındaki araç süreçleri aday olabilir.
- Sahiplenmediği hiçbir şey. Bir süreci sonlandırabilen tek yol, bekçinin bir ajanın kendi ağacından toplamadığı her süreci reddeder. Makinenizde başka bir şeyi sonlandırmanın yoluna dönüşemez.
Ve siz istemedikçe hiçbir şey otomatik olarak sonlandırılmaz. Varsayılan olarak bekçi bulduğunu bildirir, kararı siz verirsiniz, çünkü büyük ve sessiz bir sürecin beklenen bir şey olup olmadığını bilen sizsiniz.
Yerini hak ettiği anlar
Bunların her biri gerçek bir durum, hiçbiri varsayım değil.
Makinenin akşam 6'da sabah 9'dakinden yavaş olması
Bozulduğu tek bir an yok, gün boyunca istikrarlı bir düşüş var. Bu biçim neredeyse her zaman birikmiş takılı süreçler demektir ve elle teşhis etmesi en zor olanıdır, çünkü herhangi bir anda hiçbir şey yanlış görünmez.
Paralel çalışan birkaç ajan
Ne kadar çok ajan çalıştırırsanız o kadar çok araç çağrısı olur ve birinin kilitlenme ihtimali o kadar artar. Çağrı başına hata oranı çok küçüktür; bir günlük paralel çalışmayla çarpılınca küçük olmaktan çıkar.
Hiç geri dönmeyen bir arama
Düzenli ifade motorunu patlatan bir kalıp, birkaç yüz kilobaytlık bir dosyada gigabaytlarca bellek ayırır. Ajan onu bekler, siz ajanı beklersiniz ve ikisinin bedelini makine öder.
Ajanı kapattınız, süreç kaldı
Bir sekmeyi kapatmak her zaman bir şey serbest bırakmaz. Zaten kopmuş bir süreç belleğini korur ve uygulamada görebileceğiniz her şeyle son bağını yitirir.
16 GB'lık bir dizüstü
Bol RAM'i olan bir makinede birkaç takılı süreç uzun süre saklanır. 16 GB'lık bir dizüstünde swap'a hızla vururlar ve sistem belleği sıkıştırmaya başladığı anda bütün ajanlarınız aynı anda yavaşlar.
Uygulamayı suçlamadan önce
AgentsRoom açıkken makine sürünüyorsa akla gelen ilk şüpheli uygulamadır. Süreç süreç gerçek sayıları, her birini başlatan ajanla birlikte görmek, bir şüpheyi gerçekten kontrol edebileceğiniz bir şeye dönüştürür.
Sınırları siz koyarsınız
Varsayılanlar bilerek temkinli. Aşağıdakilerin hepsi Ayarlar bölümünde, Terminal başlığı altında yer alır ve her biri AgentsRoom MCP araçları üzerinden bir ajan tarafından da okunup değiştirilebilir.
- Ajanların alt süreçlerini izle
- Varsayılan olarak açık. Kapatın, hiçbir tarama çalışmaz, hiçbir zaman.
- Bir bellek eşiğinin üzerinde bildir
- Varsayılan olarak iki gigabayt. Bunun altında takılı bir süreç sizi rahatsız etmeye değmez. Bol RAM'li bir iş istasyonunda eşiği yükseltin, belleğin kıt olduğu bir dizüstünde düşürün.
- Asgari bir yaşam süresinden sonra
- Varsayılan olarak beş dakika. Yavaş ama meşru bir işin hiçbir zaman işaretlenmemesini sağlayan şey budur, çünkü gerçekten istediğiniz neredeyse hiçbir şey hiç işlemci kullanmadan beş dakika sürmez.
- Takılı süreçleri otomatik olarak sonlandır
- Varsayılan olarak kapalı ve bu, temkinlilikten çok bilinçli bir ürün kararı. Bekçi bir hüküm veriyor ve büyük, sessiz bir sürecin beklenen bir şey olup olmadığını yalnızca siz bilirsiniz. Açarsanız kendi başına hareket eder ve sonrasında bir bildirim gönderir.
İşlemci eşiği bilerek dışarı açılmadı. Çalışan bir derlemeyi takılı bir süreçten ayıran ölçüm odur ve bu bir zevk meselesi değildir.
Sık sorulan sorular
Bu, AgentsRoom'un bilgisayarımı yavaşlattığı anlamına mı geliyor?
Hayır ve bu özellik tam da bu yüzden var. Ölçtüğümüz oturumda uygulama 91 süreç için 2,8 GB, sekiz ajan CLI'si ise hepsi bir arada 1,6 GB kullanıyordu. O 41,8 GB'ı kilitlenmiş araç süreçleri tutuyordu. AgentsRoom, her ajanı ve onun başlattığı her süreci görebilen tek yer olduğu için hakemlik edebilecek tek yer de o.
Derlememi ya da test koşumu öldürür mü?
Hayır. Bir süreç ancak büyük VE eski VE işlemciyi kullanmayı bırakmışsa işaretlenir. Gerçekten çalışan bir derleme bir çekirdeği doldurur, dolayısıyla üçüncü koşulda kalır ve hiçbir zaman aday olmaz. O koşul tam olarak bu ayrımı yapmak için var.
Geliştirme sunucumu izler mi?
Hayır ve hiçbir zaman izlemeyecek. Boştaki bir geliştirme sunucusu kaçak süreç ölçütlerinin hepsini karşılar: çok bellek tutar, saatlerdir çalışıyordur ve istekler arasında işlemci kullanmaz. Yalnızca ajan terminallerinin alt süreçleri izlenir, yani geliştirme komutlarınız yapı gereği kapsamın dışındadır.
Ajanın kendisini sonlandırabilir mi?
Hayır. Ajan CLI'si hangi sağlayıcıyı kullanırsanız kullanın korunur ve koruma, bilinen adlar listesine değil, uygulamanın o terminali başlatmak için kullandığı ikili dosyaya dayanır. Shell ve uygulamanın kendi terminal yardımcısı da dışarıda bırakılır.
Yetim süreç nedir ve neden özel muamele görür?
Ebeveyni sonlanmış bir süreç, sistemin init sürecine devredilir. O andan itibaren onu başlatan ajanla arasındaki bağ kopar, dolayısıyla arkasını toplayacak kimse kalmaz. AgentsRoom sahipliği, süreç hâlâ bağlıyken hatırlar, ki bu sahipliğin kurulabileceği tek andır; böylece süreci sonrasında da bildirebilir.
İzlemenin kendisi ne kadara mal oluyor?
Dakikada bir süreç anlık görüntüsü, 824 sürecin çalıştığı bir makinede yaklaşık 40 ms olarak ölçüldü. Daha pahalı olan bellek ölçümü yalnızca zaten takılı görünen süreçlerde çalışır, ki normal kullanımda bu hiç çalışmaması demektir. Ve hiçbir ajan aktif değilken tarama diye bir şey yoktur.
Neden sadece Etkinlik Monitörü'ndeki bellek sütununa bakmıyoruz?
Çünkü macOS'ta sorunu bir büyüklük mertebesi kadar eksik gösterir. Sıkıştırılmış belleğe itilmiş bir süreç, 8 GB tutarken 20 MB yerleşik gösterebilir. Canlı bir tanesini 14 GB'lık gerçek bir ayak izine karşılık 4,7 GB yerleşikle ölçtük. Sanal boyut daha iyi değil: sistem süreçleri bile yüzlerce gigabayt sanal boyut bildirir.
Claude Code, Codex ve diğerleriyle çalışıyor mu?
Evet. Bekçi hiçbir belirli aracı ya da sağlayıcıyı bilmez. Hangi ajan terminalini başlattıysanız onun alt süreçlerini izler ve koruduğu CLI, başlatmanın kendisinden okunur. Yeni bir sağlayıcı eklemek burada hiçbir şeyi değiştirmez.
Windows ve Linux'ta çalışıyor mu?
Evet. Belleğin doğruyu söylemesi için her platform farklı bir ölçüm ister: macOS'ta sıkıştırılmış sayfalar, Linux'ta yerleşik artı swap'a çıkmış olanlar, Windows'ta özel ayrılmış bellek. Üçü de uygulanmış durumda.
Bana sormadan süreçleri sonlandırır mı?
Siz açmadıkça hayır. Varsayılan olarak bulduğunu ajanıyla, belleğiyle, yaşıyla ve işlemci kullanımıyla bildirir, kararı siz verirsiniz. Otomatik sonlandırma bir ayardır ve kutudan kapalı çıkar.
Süreçlerinden birini sonlandırdığımda ajana ne olur?
Ajan çalışmaya devam eder. Araç çağrısı sonsuza kadar asılı kalmak yerine bir hata alır, ki istediğiniz sonuç budur: o süreç zaten hiçbir zaman bitmeyecekti. Hiçbir şey yeniden başlatılmaz ve hiçbir bağlam kaybolmaz.
Kök nedeni düzeltiyor mu?
Hayır ve buna çalışmıyor da. Nedenler değişir: bugün bir araç, yarın başka bir kalıp, gelecek ay başka bir sağlayıcı. Bu bir güvenlik ağı ve neden henüz kimsenin görmediği bir şey olduğunda da çalışmaya devam etmek üzere tasarlandı.
Bunlar da ilginizi çekebilir
Bağlam kanaryası
Diğer erken uyarı: makineyi değil ajanın kendi bağlamını izler ve bir ajan dosyalar ve API'ler uydurmaya başlamadan önce kaydığını söyler.
Dev terminalleri
Geliştirme sunucularınızı ve uzun komutlarınızı AgentsRoom içinde çalıştırın, uzun bir komut bittiğinde bildirim alın. Bu terminaller tam olarak süreç bekçisinin asla dokunmamak üzere tasarlandığı terminaller.
Ajan durumu takibi
Hangi ajanların çalıştığını, hangilerinin sizi beklediğini ve hangilerinin boşta olduğunu tek bir terminal okumadan bir bakışta görün.
Token kullanımı
İzlemeye değer diğer kaynak. Ajan başına token tüketimi ve kotası, böylece kullanımınızın nereye gittiğini bilirsiniz.
Bölünmüş Görünüm
Tek bir pencerede yan yana birkaç ajan, her biri kendi bölmesi, rengi ve canlı durumuyla.
CLI Doctor
Bir ajan başlatılamadığında sizi boş bir terminalin karşısında bırakmak yerine nedenini ve ne yapmanız gerektiğini söyler.
Kimsenin kullanmadığı süreçlerin bedelini ödemeyi bırakın
AgentsRoom'u indirmek ücretsiz ve süreç bekçisi ilk açılıştan itibaren devrede.
Yardımcı uygulama: hareket halindeyken ajanlarinizi izleyin
Claude, Codex, Antigravity CLI veya başka bir AI sağlayıcı kullan.
Hataları ve istekleri doğrudan genel backlogunuza gönderin.
AgentsRoom'a kısa bir bakış.