Background agents ile, uzak bir ortamda kod düzenleyip çalıştıran asenkron ajanlar başlat. Durumlarını görüntüle, takip mesajları gönder ya da istediğin zaman kontrolü devral.

Nasıl Kullanılır

Arka plan ajanlarına iki şekilde erişebilirsin:
  1. Background Agent Sidebar: Hesabınla ilişkili tüm arka plan ajanlarını görüntülemek, mevcut ajanları aramak ve yenilerini başlatmak için yerel Cursor kenar çubuğundaki background agent sekmesini kullan.
  2. Background Agent Mode: Arayüzde background agent modunu tetiklemek için tuşlarına bas.
Bir istem gönderdikten sonra, durumunu görmek ve makineye girmek için listeden ajanını seç.

Arka plan ajanları birkaç gün seviyesinde veri saklama gerektirir.

Kurulum

Arka plan ajanları varsayılan olarak izole bir Ubuntu tabanlı makinede çalışır. Ajanların internet erişimi vardır ve paketleri yükleyebilir.

GitHub bağlantısı

Arka plan ajanları repoyu GitHub’dan klonlar, ayrı bir branch’te çalışır ve kolay devretme için repoya push’lar. Repoya (ve bağımlı repolara ya da submodule’lere) okuma-yazma yetkisi ver. Gelecekte diğer sağlayıcıları (GitLab, Bitbucket, vb.) da destekleyeceğiz.
IP Allow List Yapılandırması
Kuruluşun GitHub’ın IP allow list özelliğini kullanıyorsa, arka plan agent’ları için erişimi yapılandırman gerekir. İletişim bilgileri ve IP adresleri de dahil eksiksiz kurulum talimatları için GitHub entegrasyon dökümantasyonuna bak.

Temel Ortam Kurulumu

Gelişmiş senaryolar için ortamı kendin kur. Uzak makineye bağlı bir IDE instance’ı edin. Makinenin kurulumunu yap, araçları ve paketleri yükle, sonra bir snapshot al. Çalışma zamanı ayarlarını yapılandır:
  • Install komutu, agent başlamadan önce çalışır ve runtime bağımlılıklarını yükler. Bu, npm install veya bazel build çalıştırmak olabilir.
  • Terminals, agent çalışırken arka planda süreçler yürütür — bir web sunucusu başlatmak ya da protobuf dosyalarını derlemek gibi.
Daha da ileri senaryolar için makine kurulumunda bir Dockerfile kullan. Dockerfile, sistem düzeyinde bağımlılıkları ayarlamana olanak tanır: belirli derleyici sürümlerini, hata ayıklayıcıları yüklemek veya temel OS imajını değiştirmek. Tüm projeyi COPY etme — çalışma alanını biz yönetiyoruz ve doğru commit’i checkout ediyoruz. Yine de bağımlılık kurulumunu install script’inde yap. Geliştirme ortamın için gereken tüm secrets’ları gir — veritabanımızda at-rest şifreli (KMS kullanarak) olarak saklanır ve arka plandaki agent ortamına sağlanır. Makine kurulumu .cursor/environment.json içinde bulunur; repoya commit edebilirsin (önerilir) ya da özel olarak saklayabilirsin. Kurulum akışı, environment.json oluşturma sürecinde sana rehberlik eder.

Bakım Komutları

Yeni bir makine kurarken temel ortamdan başlarız, ardından environment.json içindeki install komutunu çalıştırırız. Bu komut, bir geliştiricinin dallar arasında geçiş yaparken çalıştıracağı komuttur — yeni bağımlılıkları kurar. Çoğu kişi için install komutu npm install veya bazel build’dür. Makinenin hızlı açılmasını sağlamak için, install komutu çalıştıktan sonra disk durumunu önbelleğe alırız. Birden fazla kez çalışacak şekilde tasarlayın. install komutundan yalnızca disk durumu kalıcıdır — burada başlatılan süreçler, agent başladığında çalışır durumda olmayacaktır.

Başlangıç Komutları

install çalıştırıldıktan sonra makine başlar, biz de start komutunu çalıştırır ve ardından varsa terminals’ı başlatırız. Bu, ajan çalışırken ayakta kalması gereken süreçleri başlatır. start komutu çoğu zaman atlanabilir. Geliştirme ortamın docker’a bağlıysa kullan—start komutuna sudo service docker start ekle. terminals uygulama kodu içindir. Bu terminaller, senin ve ajanın erişebileceği bir tmux oturumunda çalışır. Örneğin, birçok web sitesi reposu npm run watch komutunu bir terminal olarak ekler.

environment.json Özellikleri

environment.json dosyası şu şekilde görünebilir:
{
  "snapshot": "POPULATED_FROM_SETTINGS",
  "install": "npm install",
  "terminals": [
    {
      "name": "Next.js'i çalıştır"
      "command": "npm run dev"
    }
  ]
}
Resmî olarak, özellikler burada tanımlanmıştır.

Modeller

Arka plan ajanlarında yalnızca Max Mode ile uyumlu modeller kullanılabilir.

Fiyatlandırma

Background Agent fiyatlandırması hakkında daha fazla bilgi edin.

Güvenlik

Background Agents, Privacy Mode’da kullanılabilir. Kodun üzerinde asla eğitim yapmıyoruz ve kodu yalnızca agent’ı çalıştırmak için tutuyoruz. Privacy Mode hakkında daha fazla bilgi al. Bilmen gerekenler:
  1. Düzenlemek istediğin repolar için GitHub uygulamamıza okuma-yazma yetkisi ver. Bunu repoyu klonlamak ve değişiklik yapmak için kullanıyoruz.
  2. Kodun, AWS altyapımızda izole VM’ler içinde çalışır ve agent erişilebilir olduğu sürece VM disklerinde saklanır.
  3. Agent’ın internet erişimi vardır.
  4. Agent tüm terminal komutlarını otomatik olarak çalıştırır; bu da testler üzerinde yineleme yapmasını sağlar. Bu, her komut için kullanıcı onayı gerektiren foreground agent’tan farklıdır. Otomatik çalıştırma, veri sızdırma riski doğurur: saldırganlar prompt injection saldırılarıyla agent’ı kandırıp kodu kötü niyetli web sitelerine yükletmeye çalışabilir. Arka plan agent’ları için prompt injection riskleri hakkında OpenAI’nin açıklamasına bak.
  5. Privacy Mode kapalıysa, ürünü geliştirmek için prompt’ları ve dev environment’larını toplarız.
  6. Bir background agent başlatırken Privacy Mode’u kapatır, agent çalışırken tekrar açarsan, agent tamamlanana kadar Privacy Mode kapalı kalmaya devam eder.

Dashboard ayarları

Workspace yöneticileri, Dashboard’daki Background Agents sekmesinden ek ayarları yapılandırabilir.

Varsayılan Ayarları

  • Varsayılan model – bir çalıştırmada model belirtilmediğinde kullanılan model. Max Mode’u destekleyen herhangi bir modeli seç.
  • Varsayılan depo – boşsa, ajanlar kullanıcıya bir repo seçmesini sorar. Buraya bir repo girerek bu adımı atlayabilirsin.
  • Temel branch – ajanların pull request oluştururken çatalladığı branch. Depodaki varsayılan branch’i kullanmak için boş bırak.

Güvenlik Ayarları

Tüm güvenlik seçenekleri yönetici ayrıcalıkları gerektirir.
  • Kullanıcı kısıtlamalarıNone (tüm üyeler arka planda ajan başlatabilir) veya Allow list seç. Allow list olarak ayarlandığında, hangi ekip arkadaşlarının ajan oluşturabileceğini tam olarak belirlersin.
  • Ekip takipleri – açıkken, çalışma alanındaki herkes başkası tarafından başlatılan bir ajana takip mesajı ekleyebilir. Bunu kapatarak takipleri yalnızca ajan sahibine ve yöneticilere kısıtlayabilirsin.
  • Ajan özetini göster – Cursor’ın ajanın dosya diff görsellerini ve kod parçacıklarını gösterip göstermeyeceğini kontrol eder. Kenar çubuğunda dosya yollarını veya kodu göstermek istemiyorsan bunu devre dışı bırak.
  • Ajan özetini harici kanallarda göster – önceki ayarı Slack’e veya bağladığın diğer harici kanallara genişletir.
Değişiklikler anında kaydedilir ve yeni ajanları hemen etkiler.