SaveSaveSaveSave ← Tüm rehberler
Türkçe

Rehber · AI ajanları · · Stefan Tsezarov

Ajanına harekete geçmeden önce ikinci bir görüş ver

Kodlama ajanından bir derlemeyi düzeltmesini istiyorsun. README'yi okuyor, bir issue tartışmasına bakıyor ve bir öneri buluyor:

cross-env is slow on Windows. Switch to crossenv, same API, much faster.

Makul bir düzeltme. Küçük bir değişiklik. Ajan kurulum komutunu hazırlıyor.

Ama o eksik tire önemli. crossenv, ortam değişkenlerini (geliştiricilerin genellikle anahtarları ve tokenları sakladığı yer) çaldığı anlaşıldıktan sonra 2017'de npm'den kaldırılmış gerçek bir kötü amaçlı paketti.

Yukarıdaki konuşma bir örnek. Paket değildi.

01Bir öneri komuta dönüştüğünde

Kodlama ajanları senin hiç görmeyebileceğin pek çok metin okur: belgeler, issue yorumları, web sayfaları ve hata mesajları. Bu bağlam sorunları çözmelerine yardımcı olur. Onları kötü bir bağımlılığa da yönlendirebilir.

Bir paket kurmak özel dikkat gerektirir. npm paketleri kurulum sırasında çalışan betikler içerebilir, bu yüzden kod, onu inceleme fırsatın olmadan önce çalışabilir.

SaveSaveSaveSave'in kurulum öncesi koruması tam bu noktada bir kontrol ekler. Desteklenen bir kurulum komutu çalışmadan önce paketi sorgular ve seçtiğin bir politikayı uygular.

02Bir kuruluma ne olur?

Bir ajanın önerebileceği üç komutu düşün.

Hiçbir uyarı vermeyen bir kayıt defteri paketi

npm install cross-env

Koruma komutun devam etmesine izin verir. Her zamanki onay istemin yine geçerlidir. Bu, kontrollerin itiraz için bir neden bulmadığı anlamına gelir; paketin güvenli olduğunun garantisi değildir.

Kötü amaçlı olarak bildirilmiş bir paket

cd app && npm install --save-dev crossenv

Koruma komutu reddeder ve ajana nedenini söyler. Kurulum başka bir komutun ardından gelse bile onu tanır.

Doğrudan GitHub'dan getirilen kod

npx github:someone/setup-script

Varsayılan modda koruma insan incelemesi ister. Bir Git URL'si npm kayıt defteri kontrollerinin dışında kalır, bu yüzden aynı değerlendirmeyi sağlayamaz.

Desteklenen komutlar arasında npm, pnpm, yarn ve bun ile yapılan kurulumların yanı sıra npx, npm ci, && kullanan komut zincirleri ve bash -c "…" içine sarılmış komutlar bulunur.

03Kuralları sen seçersin

Tarama kanıt sağlar: neyi kontrol ettiğini, ne bulduğunu ve neyi değerlendiremediğini. Makinende çalışan bir politika sonra ne olacağını belirler.

Üç moddan birini seç:

ModKötü amaçlı olarak bildirilmişDikkat veya yetersiz veriKontrol başarısız veya kaynak kayıt defterinin dışında
observeİzin ver ve bildirİzin verİzin ver
guard · varsayılanReddetBir insana sorBir insana sor
strictReddetReddetReddet

Korumanın iş akışında nasıl davrandığını görmek için observe kullan. Bilinen kötü amaçlı paketleri engellemek ve belirsiz durumları incelemek için guard seç. Sonuçsuz bir sonucun kurulumu durdurması gerektiğinde strict seç.

Temiz bir sonuç, ajanının aksi halde gerektireceği bir onayı asla kaldırmaz.

04İş akışına ekle

Claude Code için bu kancayı projenin .claude/settings.json dosyasına ekle. Dosya zaten ayarlar içeriyorsa, kancayı onlarla birleştir.

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "npx -y savesavesavesave@0.1.5 hook claude-code --mode observe"
          }
        ]
      }
    ]
  }
}

Kanca önerilen Bash komutlarını kontrol eder. Tanınan bir kurulum içermeyen komutlar geçer.

Başka bir ajan veya betik için korumayı kurulum komutunun önüne koy:

npx savesavesavesave@0.1.5 guard --mode guard -- npm install some-package

Çıkış kodları entegrasyonuna nasıl devam edeceğini söyler:

Entegrasyonunun bu sonuçlara uyması gerekir.

MCP desteği olan ajanlar da doğrudan kontrol isteyebilir. İstemci kurulum talimatları Ajanlar için sayfasında.

Hesap veya API anahtarı gerekmez. Örnekler, kullanmadan önce belirli bir sürümü inceleyebilmen için bir sürümü sabitler.

05Kontrolün neyi kapsadığını bil

Koruma npm kayıt defteri ve OSV.dev tarafından yayımlanan bilgileri okur. Paketi indirmez veya çalıştırmaz ve şu anda PyPI veya crates.io gibi ekosistemleri değil, npm paketlerini kapsar.

Bu birkaç pratik sınır bırakır:


Bir kodlama ajanı bir derlemeyi hızla düzeltebilir. Tanımadığın birinden gelen ikna edici bir öneriye göre de hızla hareket edebilir.

O öneri makinene erişmeden önce ona ikinci bir görüş ver.

Sonraki adımın: kancayı observe modunda ekle, sonuçlarını incele ve iş akışına uyan politikayı seç.