Ana içeriğe atla

Yerel komutları güvenli çalıştırma

Masaüstü uygulamasında asistan, sohbetinizin çalışma klasöründe komutlar ve testler çalıştırabilir. Bunun sohbette nasıl çalıştığını Yerel dosya erişimi bölümünde okuyabilirsiniz. Bu sayfada, bunun ne zaman sorulmadan yapılabileceğini ve komutların ne kadar yalıtılmış çalışacağını ayarlarsınız.

Komut ayarlarını açma​

Bir sohbette Komutlar panelini açın ve Bu klasör için komut ayarları seçin. Ayarlar klasör bazında geçerlidir.

Asistan ne zaman bir komut çalıştırabilir?​

Bu üç seçenekten birini seçin:

  • Her zaman sor: her komutu siz onaylarsınız.
  • Güvenilir komutları otomatik çalıştır: kaydettiğiniz komutlar sorulmadan başlar. Diğer komutlar yine izin ister.
  • Otomatik olarak sandbox’ta: her şey sorulmadan başlar, ancak yalıtılmış bir ortamda.

Her modda şu kurallar da geçerlidir:

  • Zararsız komutlar kart olmadan başlar: mkdir, ls, cat, head, tail, wc, grep, find (-exec veya -delete olmadan), touch, pwd, tree ve sürüm kontrolleri (node, npm, npx, python, pip ve aischool-python için --version, -v veya -V). Bunlar, yerleşik dosya araçlarının zaten sorusuz yaptığı işlerden fazlasını yapmaz. Ağ olmadan ve yalnızca çalışma klasörü içindeki yollarla sandbox’ta çalışırlar; bağlantılar izlendikten sonra bile (mutlak yollar, ~ veya .. yok). Bir bağlantı klasörün dışını gösterirse kart yine görünür. Bunun için bir sandbox (macOS) ve yerel komutlar gerekir, ancak yöneticinizin Otomatik çalıştırmaya izin ver ayarı gerekmez. Komutlar panelinde bu durumda Otomatik (zararsız komut) görünür. Süslü parantezli bir liste de, örneğin mkdir -p src/{components,utils}, kart olmadan başlar: uygulama bunu ayrı yollara ayırır ve hepsini kontrol eder.
  • Her kart, tam komutu ve çevrimiçi işlemlerde tam adresi gösterir. Altında asistanın açıklaması daha küçük yazıyla yer alır.
  • Sandbox kullanılabiliyor ve yöneticiniz otomatik çalıştırmaya izin veriyorsa, sandbox’ta çalışan bir komut için kartta ayrıca Bundan sonra bu klasörde sandbox’ta otomatik çalıştır düğmesi bulunur. Bu, klasörü Otomatik olarak sandbox’ta durumuna geçirir; sonraki komutlar kart olmadan başlar. Ağ gerektiren komutlar, paket kurulumları izinliyse bir kez daha sorar.
  • Bir klasörde sandbox’ta çalışan ve ağ istemeyen ilk kart, bir defaya mahsus Bu projeye güven seçeneğini gösterir. Bu, komutu çalıştırır, klasörü Otomatik olarak sandbox’ta durumuna geçirir ve Paket kurulumlarına sorulmadan izin ver ayarını açar. Bundan sonra npm test, npm run build ve node --test gibi testler ve derlemeler kart olmadan, ağsız sandbox’ta başlar. Daha fazla ağ gerektiren ya da sandbox dışında çalışan komutlar ise yine sorar. Çalıştır ya da Reddet sonrasında bu klasörde soru tekrar gelmez; modu komut ayarlarından değiştirirsiniz. Otomatik çalıştırma kapalıysa, her kart bunu yöneticinizin ya da bu bilgisayarın yönetim politikasının yaptığını belirtir.

Güvenilir komutları kaydetme​

Bir komutta Bu klasörde her zaman izin ver seçin, ardından Tam olarak bu komut ya da Bununla başlayan her şey seçin. Kaydedilen komutlar artık sorulmadan başlar. Özel karakterler içeren komutlar (örneğin ; | > $) her zaman izin ister.

Kaydedilmiş kurallar, komut ayarlarında Bu klasörde her zaman izin ver altında görünür. Oradan kaldırabilirsiniz.

Sandbox ve ağ​

  • Sandbox kullan: komutlar yalnızca bu klasöre yazabilir. Bu seçenek macOS’ta varsayılan olarak açıktır.
  • Ağa izin ver: komutların internete erişip erişemeyeceğini belirler. Bu seçenek varsayılan olarak kapalıdır. Sandbox yoksa komutlar her zaman ağ erişimine sahiptir.

Her komut kartı, sandbox ve ağın açık olup olmadığını gösterir.

Ağa izin ver kapalıysa ve asistan bir şey indirmek isterse, örneğin npm install ile, komut kartı tam olarak o komutu ağ ile çalıştırmak isteyip istemediğinizi sorar. Yani ağı tüm klasör için açmanız gerekmez.

Windows

Windows’ta henüz sandbox kullanılamıyor.

Paketleri yükleme​

Uygulama, içinde npm bulunan kendi Node.js sürümünü barındırır. Bu nedenle node, npm ve npx gibi komutlar, bilgisayarınızda Node.js kurulu olmasa da çalışır. Node.js’i kendiniz kurduysanız, uygulama o sürümü kullanır. İstisna: Elektron’u kendi başına başlatan bir proje (electron .), sizin kurduğunuz Node.js sürümüne ihtiyaç duyar.

Paket kurulumlarına sorulmadan izin verme​

Bu klasör için komut ayarları içinde Paket kurulumlarına sorulmadan izin ver anahtarını açın. İsimle yapılan paket kurulumları ardından kart olmadan başlar: npm install <isim> ve package.json içinden npm install, pnpm, yarn veya bun ile install ya da add, ayrıca pip install <isim> ( uv üzerinden de). Bunlar her zaman sandbox’ta ve ağ ile çalışır. Diğer komutlar, klasör için seçtiğiniz modu izler.

Bu kurulumlar yine de şu durumlarda kart gösterir:

  • npm create vite@latest ve npx create-… gibi proje başlatıcıları, çünkü kendi kodlarını çalıştırırlar;
  • pip install ., pip install -r requirements.txt, başka bir kayıttan kurulumlar (--registry, -i, --index-url) ve git adresi, URL veya yoldan gelen paketler.

Bu anahtar yalnızca bir sandbox ile (macOS) ve yöneticiniz otomatik çalıştırmaya izin veriyorsa çalışır. Aksi halde açamazsınız.

Kurulum betikleri yok

Bu şekilde yüklenen paketler asla kendi kurulum betiklerini çalıştırmaz (npm --ignore-scripts ile çalışır). Python paketleri yalnızca hazır wheel olarak kurulur.

Yerel sunucular ve yerleşik tarayıcı​

Asistan, örneğin Vite kullanan küçük bir React projesi için npm run dev gibi sürekli çalışan bir geliştirme sunucusu da başlatabilir. Bunun için diğer komutlarla aynı kurallar geçerlidir: tam komutu siz onaylarsınız ya da kayıtlı bir kural üzerinden veya otomatik olarak sandbox’ta başlar. Kartta maksimum çalışma süresi yerine "Siz durdurana kadar yerel sunucu olarak çalışır." yazar.

Asistan yanıt verdikten sonra sunucu çalışmaya devam eder. Komutlar panelinde kartın durumu Sunucu çalışıyor olarak görünür; yanında Tarayıcıda aç ve Durdur düğmeleri bulunur. Aynı anda en fazla 4 sunucu çalışabilir. Sunucular, siz durdurduğunuzda veya uygulamayı kapattığınızda kapanır.

Sandbox’ta ağ olmadan bir sunucu yalnızca bu bilgisayarda (localhost) dinleyebilir. Asistanın paketleri nasıl yüklediğini Paketleri yükleme bölümünde okuyabilirsiniz.

Basit bir web sayfası gösterme​

Normal bir web sayfası için (CSS ve JavaScript içeren, derleme adımı olmayan bir index.html) komut gerekmez. Asistan bu durumda uygulamanın yerleşik web sunucusunu kullanır:

  • Klasör yalnızca bu bilgisayarda görünür, rastgele bir portla http://127.0.0.1 adresinde.
  • .git ve .env gibi gizli dosyalar asla gösterilmez.
  • Bir dosya değişirse sayfa otomatik olarak yeniden yüklenir.

Bunun için bir onay kartı gösterilmez. Sunucu Komutlar panelinde yer alır; Tarayıcıda aç ve Durdur düğmeleri vardır ve 4 sunucu sınırına dahildir.

Sonucu yerleşik tarayıcıda görürsünüz: üst çubuktaki sağ tarafta bulunan Tarayıcı düğmesi (küre simgesi). Panel, sohbetin yanında açılır; geri, ileri, yeniden yükle (yükleme sırasında durdur), bir adres çubuğu ve Varsayılan tarayıcımda aç seçeneklerini içerir.

  • Asistan, yerel bir sunucunun sonucunu göstermek için tarayıcıyı kendisi açar. Bu yalnızca http://localhost:5173 gibi yerel adreslerle mümkündür.
  • Bir yanıtta localhost bağlantısına tıklarsanız, o bağlantı yerleşik tarayıcıda açılır. Diğer bağlantılar varsayılan tarayıcınızda açılır.
  • Siz de herhangi bir web adresini yazabilirsiniz.
  • Tarayıcının kendine ait ayrı bir oturumu vardır: orada AI-Corporate’a giriş yapmış olmazsınız, web siteleri kamera veya mikrofon gibi izinler alamaz ve indirme yapılamaz.
  • Uygulamanın bir menüsü veya iletişim kutusu açıkken sayfa geçici olarak gizlenir.

Örnek:

Bu klasörde sayaçlı, Vite ile küçük bir React uygulaması oluştur. Bağımlılıkları yükle, geliştirme sunucusunu başlat ve sonucu tarayıcıda göster.

Asistanın bakmasına izin verme​

Asistandan yerleşik tarayıcıdaki sayfaya bakmasını istediğinizde, adresi, başlığı, görünen metni, bir ekran görüntüsünü ve sayfadaki son hata mesajlarını okur. Bunlar AI modeline gönderilir.

  • Bu bilgisayardaki bir sayfaya (localhost veya 127.0.0.1) asistan sorulmadan bakar.
  • Giriş yapmış olduğunuz bir sayfa gibi başka herhangi bir web sitesinde, asistan önce bir kart gösterir: "Asistan onedrive.live.com’da bakmak istiyor." Bakmaya izin ver ya da Reddet seçin. Bu izin her seferinde yeniden istenir.
  • Sayfa, izninizden sonra başka bir web sitesine giderse asistan hiçbir şey okumaz.
  • Yalnızca bu bilgisayardaki bir sayfada, yaptığını test etmek için asistanın kendisi tıklar ve yazar. Diğer web sitelerinde tıklamaz, yazmaz ve gezinmez. Çerezleri veya parolaları yoktur.
  • Çevrimdışı modda asistan yalnızca bu bilgisayardaki sayfalara bakar.

Sürümler ve GitHub​

Asistanın yerleşik bir git’i vardır. Bu yüzden git kurmanıza gerek yoktur, Windows’ta bile. Asistan sürümleri kaydedebilir, nelerin değiştiğini gösterebilir, dallar oluşturabilir ve bir projeyi çevrimiçine alabilir.

  • Bu klasörde sürüm kaydetme gibi işlemler sorulmadan başlar. Gizli bilgi gibi görünen dosyalar (örneğin .env dosyaları, kod içindeki anahtarlar veya tokenlar; AIza ile başlayan Google API anahtarları dahil) hiçbir zaman bir sürüme alınmaz. Asistan bir şeyi atladığını belirtir.
  • Çevrimiçi işlemler (bir projeyi indirme, en son sürümü alma, çevrimiçine alma ve bir GitHub deposu oluşturma) önce tam adresi ve Uygulamanın içinde yerleşik ile Ağ açık etiketlerini gösteren bir kart açar. Adres github.com değilse ya da yeni depo herkese açıksa, kart uyarır. Çevrimiçine alırken kart hangi dosyaların gönderileceğini gösterir. Çalıştır ya da Reddet seçin.
  • github.com dışındaki bir depoya bağlanmak da önce izin ister.

GitHub bağlantısı kurmayı ve bir projeyi çevrimiçine almayı Vibe kodlama bölümünde okuyabilirsiniz.

Çevrimdışı mod

Çevrimdışı modda komutlar her zaman ağsız sandbox’ta çalışır. Ağlı paket kurulumları ve yerleşik git’in çevrimiçi işlemleri (indirme, alma, çevrimiçine alma ve GitHub) çalışmaz. Sürüm kaydetme ve basit bir web sayfası gösterme çalışır.

Yönetici ayarları​

Yöneticiler, çevredeki herkes için yerel komutları veya otomatik çalıştırmayı kapatabilir. Bunu yönetim ortamında, Özellikler bölümünde (ortam düzeyinde), Masaüstü uygulaması kartında yaparlar:

  • Yerel komutlara izin ver: bu kapalıysa asistan komut çalıştıramaz. Yerleşik git’in çevrimiçi işlemleri de çalışmaz. Sürüm kaydetme ve dallar yine çalışır: bunlar, dosya araçları gibi yalnızca klasördeki dosyaları değiştirir.
  • Otomatik çalıştırmaya izin ver: bu kapalıysa her komut izin ister ve Paket kurulumlarına sorulmadan izin ver seçeneğini açamazsınız.
  • Office dosyaları için uygulamanın Python’unu kullan: şablonlar, grafikler ve analizler için. Bu Python internetsiz çalışır, yalnızca çalışma klasörüne yazar ve başka programlar başlatamaz. Hiçbir şey ayarlı değilse, bu ayar Yerel komutlara izin ver seçeneğini izler. Sandbox olmadan (Windows) yalnızca yerel komutlar açıksa kullanılabilir ve her seferinde izin ister.