exec aracı üzerinden çalıştırır ve uzun süre çalışan görevleri bellekte tutar. process aracı bu arka plan oturumlarını yönetir.
exec aracı
Parametreler:
Davranış:
- Ön plandaki çalıştırmalar çıktıyı doğrudan döndürür.
- Arka plana alındığında (açıkça veya
yieldMszaman aşımı yoluyla), araçstatus: "running"+sessionIdve çıktının kısa bir son bölümünü döndürür. - Arka plana alınan ve
yieldMsçalıştırmaları, çağrı açık birtimeoutiletmediği sürecetools.exec.timeoutSecondsdeğerini devralır. - Çıktı, oturum yoklanana veya temizlenene kadar bellekte kalır.
processaracına izin verilmiyorsaexeceşzamanlı olarak çalışır veyieldMs/backgrounddeğerlerini yok sayar.- Başlatılan exec komutları, bağlama duyarlı kabuk/profil kuralları için
OPENCLAW_SHELL=execdeğerini alır. - Şimdi başlayan uzun süreli işler için: işi bir kez başlatın ve komut çıktı verdiğinde veya başarısız olduğunda otomatik tamamlanma uyandırmasına (etkinse) güvenin.
- Otomatik tamamlanma uyandırması kullanılamıyorsa veya çıktı vermeden başarıyla sonlanan bir komut için sessiz başarı onayı gerekiyorsa
processile yoklayın. - Hatırlatıcıları veya gecikmeli takipleri
sleepdöngüleriyle ya da tekrarlanan yoklamalarla taklit etmeyin — gelecekteki işler için Cron kullanın.
Ortam değişkeni geçersiz kılmaları
Yapılandırma (ortam değişkeni geçersiz kılmalarına tercih edilir)
Alt süreç köprüleme
Exec/process araçları dışında uzun süre çalışan alt süreçler başlatırken (CLI yeniden başlatmaları, Gateway yardımcıları), sonlandırma sinyallerinin iletilmesi ve çıkış/hata durumunda dinleyicilerin ayrılması için alt süreç köprü yardımcısını ekleyin. Bu, systemd üzerinde sahipsiz süreçleri önler ve kapatmanın platformlar arasında tutarlı kalmasını sağlar.process aracı
Eylemler:
Notlar:
- Yalnızca arka plana alınan oturumlar listelenir/saklanır — yalnızca bellekte tutulur, diske yazılmaz. İşlem yeniden başlatıldığında oturumlar kaybolur.
- Canlı bir arka plan oturumu, süreç sahibi gerçekten sonlandığını doğrulayana kadar işbirlikçi ana makine askıya almasını ve güvenli Gateway yeniden başlatmasını engeller.
process remove, sonlandırma istendikten hemen sonra çalışan bir oturumu gizleyebilir; askıya alma ve yeniden başlatma, çıkış onaylanana kadar engellenmeye devam eder.- Oturum günlükleri yalnızca
process poll/logçalıştırılır ve araç sonucu kaydedilirse sohbet geçmişine kaydedilir. processajan başına kapsamlandırılır; yalnızca o ajan tarafından başlatılan oturumları görür.- Otomatik tamamlanma uyandırması kullanılamadığında durum, günlükler veya tamamlanma onayı için
poll/logkullanın. - Etkileşimli bir CLI’ı kurtarmadan önce
logkullanın; böylece mevcut transkript, stdin durumu ve girdi bekleme ipucu birlikte görünür. - Girdi veya müdahale gerektiğinde
write/send-keys/submit/paste/killkullanın. process list, hızlı taramalar için türetilmiş birname(komut fiili + hedef) içerir.process list,pollvelog, yalnızca oturumda hâlâ yazılabilir stdin varsa ve oturum girdi bekleme eşiğinden (varsayılan 15000 ms,OPENCLAW_PROCESS_INPUT_WAIT_IDLE_MS) daha uzun süredir boşta isewaitingForInputbildirir.process log, satır tabanlıoffset/limitkullanır. İkisi de belirtilmediğinde, sayfalama ipucuyla birlikte son 200 satırı döndürür.offsetayarlanmış ancaklimitayarlanmamışsaoffsetdeğerinden sona kadar döndürür (200 ile sınırlandırılmaz).pollöğesinintimeoutdeğeri, dönmeden önce en fazla belirtilen milisaniye kadar bekler; 30000 üzerindeki değerler 30000 ile sınırlandırılır.- Yoklama, isteğe bağlı durum sorgulama içindir; bekleme döngüsü zamanlaması için değildir. İş daha sonra yapılacaksa Cron kullanın.