Ajanlarınız Veritabanını Sorgulasın,
Siz Aksini Söyleyene Kadar Salt Okunur
AgentsRoom, MySQL, PostgreSQL ve MongoDB bağlantılarınızı yönetir ve yapay zeka kodlama ajanlarınıza onlara karşı sorgu çalıştırmanın bir yolunu verir. Varsayılan olarak salt okunur, aynı anda tek bir ifade ve parola erişimin dışında.
Gerçek satırları okuyabilen bir ajan verileriniz hakkında tahmin yürütmeyi bırakır. Onlara yazamayan bir ajan ise satır satır denetlemeniz gereken bir risk olmaktan çıkar.
AgentsRoom'un özel bir alt ağdaki veritabanına nasıl ulaştığı ve bir yapay zeka ajanının salt okunur sorgusunu nasıl yanıtladığı.
Verilerinizi göremeyen bir yapay zeka kodlama ajanı, hayal ettiği şemaya göre kod yazar. Bir sütun uydurur, yedi değeri olan bir enum'un üç değeri olduğunu varsayar ve bir hatayı bir satırla değil bir teoriyle açıklar. Ona bir veritabanı bağlantısı vermek bunu düzeltir, aynı zamanda yardımcı bir ajanı bir olaya dönüştürmenin de en hızlı yoludur. AgentsRoom tam da bu gerilimin üzerine kuruludur.
Bağlantılarınızı uygulamaya, herhangi bir veritabanı istemcisinde yapacağınız gibi kaydedersiniz: motor, host, port, kullanıcı, veritabanı ve sunucu bekliyorsa TLS. Veritabanına açık internetten ulaşılamıyorsa bağlantı, AgentsRoom'da zaten kaydettiğiniz SSH ve SSM bağlantıları kullanılarak bir SSH tüneli ya da bir AWS SSM port yönlendirme oturumu üzerinden yönlendirilir. Özel bir alt ağda duran bir veritabanı, böylece dünyaya açmadan sorgulayabileceğiniz bir şeye dönüşür.
Her bağlantı salt okunur başlar. Bir SELECT çalışır. Veriyi değiştirecek bir ifade ise, o belirli bağlantıyı yazılabilir yapıp işlemi onaylayana kadar çalışmaz. Çağrı başına yalnızca tek bir ifade kabul edilir, böylece bir noktalı virgülün arkasında fazladan hiçbir şey saklanamaz, sonuç kümeleri de sınırlandırılır, böylece geniş bir sorgu bir ajanı ya da bir pencereyi boğamaz. Bir bağlantı üretim olarak da işaretlenebilir, bu da onayı kazayla vermeyi zorlaştırır.
Okumak işin tamamı değil. Bir makinede kaydedilen bağlantı diğer makinelerinizde de görünür, yani bir veritabanını her bilgisayarda bir kez değil, yalnızca bir kez kurarsınız. Bir veritabanı da bir dosyaya aktarılabilir, bir dosyadan geri yüklenebilir ya da aynı tüneller üzerinden doğrudan başka bir sunucuya kopyalanabilir : eskiden bunlar için uygulamadan çıkmanız gerekiyordu.
Direksiyonda Bir Ajan Olduğunu Varsayan Bir Veritabanı İstemcisi
MySQL, PostgreSQL ve MongoDB, özel ağlarda erişilebilir, koruma önlemleri varsayılan olarak açık.
MySQL, PostgreSQL ve MongoDB Bağlantıları
Her veritabanı için bir bağlantı kaydedin : host, port, kullanıcı, açılacak veritabanı ve sunucu istiyorsa TLS. Yerel veritabanınız, test ortamındaki ve üretim replikası aynı listede yaşar, yeniden yazılmak yerine seçilmeye hazır.
Özel Bir Veritabanına Ulaşın
Özel bir alt ağdaki veritabanı özel bir durum değildir. Bağlantıyı bir SSH tüneli ya da bir AWS SSM port yönlendirme oturumu üzerinden yönlendirin, AgentsRoom da uygulamada zaten kaydettiğiniz SSH ve SSM bağlantılarını yeniden kullanarak onu sizin için açsın.
Varsayılan Olarak Salt Okunur
Yeni bir bağlantı okuyabilir, başka bir şey yapamaz. Sorgular satır döndürür, veriyi değiştirecek ifadeler reddedilir. Güvenli modu açmayı kimsenin hatırlaması gerekmez, çünkü güvenli mod her bağlantının başladığı yerdir.
Bir Yazma İşleminden Önce İki Kilit
Yazmak bir değil, iki bilinçli eylem ister. Bağlantının yazılabilir yapılması ve işlemin kendisinin açıkça onaylanması gerekir. Dikkatsiz tek bir tık, WHERE koşulu olmayan bir UPDATE'e zincirlenemez.
Çağrı Başına Tek İfade
Her çağrı tam olarak bir ifade taşır. Noktalı virgülün arkasına dizilen her şey çalıştırılmak yerine reddedilir, böylece okuma gibi görünen bir okuma yanında ikinci bir ifadeyi kaçıramaz. Üstüne sonuç kümeleri de sınırlandırılır.
Üretim İşaretlenir
Bir bağlantıyı üretim olarak işaretleyin, onay da zorlaşsın. Önemli olan veritabanı, hem uzun bir günün sonunda size hem de bir görev listesini ilerleten bir ajana, yerel kopyayla birebir aynı görünmeyi bırakır.
Bağlantılarınız, Her Makinede
Ofisteki makinede kaydedilen bir bağlantı dizüstünüzde de duruyor : ad, host, port, kullanıcı, varsayılan veritabanı ve üzerinden geçtiği tünel. Geride kalan tek şey parola, onu yazdığınız makinede şifreli duruyor, böylece her makine parolayı bir kez soruyor.
Dışa Aktarın, İçe Aktarın, Kopyalayın
Bir veritabanını .sql dosyasına dökün, böyle bir dosyayı bir veritabanına geri yükleyin ya da bir veritabanını doğrudan bir başkasının üzerine kopyalayın. Hedef, üzerine yazılmadan önce yedeklenir ve onu tümüyle değiştirmek ayrı ve ayrıca onaylanan bir karardır.
Ajanlar Veritabanını Sorgular, Parolayı Asla Ellerinde Tutmaz
Veritabanı kimlik bilgileriniz AgentsRoom tarafından saklanır, dağıtılmaz. Bir ajan, adıyla bildiği bir bağlantıya karşı sorgu çalıştırmayı ister, uygulama bağlantıyı açar, ifadeyi çalıştırır ve satırları döndürür. Parola ne ajanın aldığı şeyin, ne yazdığı sorgunun, ne de tuttuğu konuşmanın parçasıdır.
Salt okunur kuralı bunun ikinci yarısıdır ve bir ajan için, konuşarak sıyrılabileceği bir varsayılan değildir. Bir ajanın sorgu çalıştırdığı araç, o bağlantı neye izin verirse versin, okuma dışında her şeyi reddeder. Bir bağlantıyı yazılabilir yapmak, yazma işlemlerini sizin için konsolda açar: orada her yazma açık bir onay ister ve bağlantı üretim olarak işaretlendiğinde bu onayı vermek bilinçli olarak zorlaşır. Bir ajanın kötü bir sorgu çalıştırmasının en kötü sonucu, kaybedilmiş bir tablo değil, yanlış bir cevap olarak kalır.
Tek ifade kuralı klasik açığı kapatır. Tek bir ifade taşıyan bir çağrı, bir noktalı virgül ve ikinci bir ifadeyle genişletilemez, böylece incelemede zararsız okunan bir sorgu çalışma anında başka bir şey yapamaz. Sınırlandırılmış sonuç kümeleriyle birleşince bir hata, bir veri dışa aktarımına dönüşmek yerine hata olarak kalır.
Üç motor, ve eksik olanların adını da veriyoruz
MySQL ve MariaDB, PostgreSQL ve MongoDB. Her birinin bir çeviri katmanı yerine kendi sürücüsü var, çünkü gerçekten birbirlerinden farklılar: bir PostgreSQL oturumu tek bir veritabanına bağlıdır, MongoDB SQL değil bir sorgu alır ve her dışa aktarma o motorla birlikte gelen araçları çalıştırır. Üçü de bir sunucuya doğrudan ulaşır ya da sunucu açık internete açık değilse bir SSH tüneli veya bir AWS SSM port yönlendirme oturumu üzerinden ulaşır.
SQL Server, Oracle, SQLite, Redis ve diğerleri desteklenmiyor. Bunu indirmeden sonra değil, önce bilmeyi hak ediyorsunuz. Sıradaki motoru insanların ne istediği belirler, dolayısıyla sizinki eksikse hangisi olduğunu halka açık backlog'ta söyleyin, sayılsın.
Veritabanı motorunuzu talep edinBir veritabanını yalnızca okumayın, taşıyın
Bir veritabanını bir dosyaya aktarın. Bir dosyayı bir veritabanına yükleyin. Ya da bir veritabanını doğrudan bir başkasının üzerine kopyalayın, zaten kaydettiğiniz SSH tüneli veya AWS SSM oturumu üzerinden de. Her motor kendi resmi araçlarını çalıştırır ve diske akış hâlinde yazar, böylece birkaç gigabaytlık bir veritabanı bir çökme değil, bir ilerleme çubuğu olur.
Bu araçlar AgentsRoom ile değil, veritabanının kendisiyle birlikte gelir: mysqldump ve mysql, pg_dump ve psql, mongodump ve mongorestore. Eksik olduklarında uygulama tam olarak hangilerinin eksik olduğunu söyler ve onları içeren klasörü göstermenize izin verir, bir veritabanı istemcisinin yapması gerektiği gibi: Dock'tan ya da Başlat menüsünden açılan bir uygulama yalnızca asgari bir PATH görür ve aksi hâlde, araçların kurulu olduğu bir makinede onları eksik sayardı.
Yanlış bir tıkın bir güne mal olduğu yer kopyalamadır, bu yüzden ideal senaryonun değil, tam da bunun etrafında kuruldu.
- Salt okunur bir bağlantı, hiçbir şey açılmadan, içe aktarmayı en baştan reddeder.
- Tek bir ifade bile uygulanmadan önce hedef, sizin seçtiğiniz bir dosyaya yedeklenir.
- Onay, bağlantının ve veritabanının adını anar; bağlantı üretim olarak işaretliyse sesini yükseltir.
- Hedef veritabanını silip yeniden oluşturmak ayrı bir seçenektir ve üretim bağlantılarında veritabanının adını elle yazmanız gerekir.
Özel Bir Veritabanından Bir Cevaba
Bağlantıyı kaydedin, yönlendirin, sonra siz sorgulayın ya da bir ajan sorgulasın.
Bağlantıyı kaydedin
Veritabanını ekleyin : host, port, kullanıcı, veritabanı adı ve sunucu bekliyorsa TLS. Sonradan tanıyacağınız bir ad verin ve öyleyse üretim olarak işaretleyin.
Özelse yönlendirin
Veritabanına doğrudan ulaşılamıyorsa bağlantıyı, AgentsRoom'da zaten kayıtlı bağlantılardan kurulan bir SSH tüneline ya da bir AWS SSM port yönlendirme oturumuna yönlendirin. Özel bir alt ağdaki veritabanı, herkese açılmadan erişilebilir hale gelir.
Siz sorgulayın ya da bir ajan sorgulasın
İfadenizi uygulamadan çalıştırın ya da bir ajan MCP üzerinden çalıştırsın. Siz değiştirene kadar salt okunur, çağrı başına tek ifade, sınırlandırılmış sonuç kümeleri ve her yazma işlemiyle verilerinizin arasında duran açık bir onay.
Bir Ajanın Gerçek Satırlara İhtiyaç Duyduğu Anlar
Üretim verisini okumanın çözüme giden en kısa yol olduğu anlar.
Gerçek veriye karşı hata ayıklama
Hata yalnızca birkaç hesapta görünüyor. Ajanın o satırları okumasına izin verin, verinin neye benzeyebileceğine dair üç teori önermek yerine mantığı bozan değeri bulsun.
Herkese açık olmayan bir veritabanı
Veritabanı, herkese açık bir uç noktası olmayan özel bir alt ağda yaşıyor. Bağlantıyı, kayıtlı bağlantılarınız üzerine kurulan bir SSH tüneli ya da bir AWS SSM oturumu üzerinden yönlendirin ve internete bir port açmadan sorgulayın.
Ajan tahmin etmesin, baksın
Bir ajan, bir migrasyon ya da bir sorgu yazmadan önce gerçekte neyin saklandığına bakabilir. Okur, raporlar ve bunu yaparken hiçbir şeyi değiştirme yetkisini asla eline geçirmez.
Üretim, yazma riski olmadan
Üretimi okumak çoğu zaman gereklidir, bir görevin ortasında ona yazmak neredeyse hiç gerekmez. Bağlantıyı üretim olarak işaretleyin, salt okunur bırakın, araştırmakla kırmak arasındaki fark da birinin dikkatli olmasına bağlı olmaktan çıksın.
Test ortamını gerçek verilerle tazeleyin
Hata yalnızca gerçek satırlarda tekrarlanıyor. Veritabanını, zaten kaydettiğiniz tünel üzerinden test ortamı sunucunuza kopyalayın; orada bulunanlar önce bir dosyaya yedeklenir.
Dizüstünü açın, her şey yerinde
Bağlantılarınız hesabınızı izler : aynı host'lar, aynı tüneller, aynı salt okunur ve üretim işaretleri. Her makine parolayı bir kez sorar, çünkü parola, yazıldığı makineden hiç çıkmayan kısımdır.
Ajanlarım veritabanını nasıl sorguluyor?
AgentsRoom MCP üzerinden, dört araçla. db_list kayıtlı bağlantılarınızı ve üst verilerini döndürür, db_schema tek satır SQL olmadan şemaları, tabloları ve sütunları dolaşır, db_query tek bir ifade çalıştırıp satırları döndürür ve db_connection_new henüz kaydetmediğiniz bir veritabanını önerir. Bağlantıyı AgentsRoom açar, önünde varsa SSH tüneli ya da AWS SSM oturumu dahil. Ajana geri giden şey bir sonuç kümesidir, asla bir kimlik bilgisi değil.
db_query, bağlantı neye izin verirse versin salt okunurdur. Bir bağlantıyı yazılabilir yapmak, yazma işlemlerini sizin için konsolda açar: orada her yazma açıkça onaylanır ve üretim olarak işaretlenmiş bir bağlantı bunu açıkça söyler. Bir ajan için ise açmaz: db_query için salt okunur kuralı MCP sürecinde değil masaüstü uygulamasında yaşar, dolayısıyla ajan başka bir şey istemeye ikna edilse bile kural geçerli kalır. Bir DROP çalıştırmak için parolaya ihtiyacınız yoktur; koruma önlemi bu yüzden yalnızca kimlik bilgisinin değil, ifadenin üzerinde oturur.
Aynı sınır bir veritabanını kaydetmek için de geçerlidir. db_connection_new, host, kullanıcı ve veritabanına üzerinden ulaşılması gereken SSH ya da AWS SSM bağlantısıyla önceden doldurulmuş oluşturma formunu açar; onu siz gözden geçirir, parolayı yazar ve kaydedersiniz. Siz kaydedene kadar hiçbir şey saklanmaz. Ajan, verileriniz üzerine akıl yürütmek için ihtiyacı olanı alır ve bu erişimin genelde bir olaya dönüşme yollarının hiçbiri ona açık değildir.
AgentsRoom MCP'yi keşfetSıkça Sorulan Sorular
Hangi veritabanları destekleniyor?
MySQL ve MariaDB, PostgreSQL ve MongoDB. Her birinin kendi sürücüsü var ve her birine doğrudan ya da bir SSH tüneli veya bir AWS SSM port yönlendirme oturumu üzerinden ulaşılır. SQL Server, Oracle, SQLite ve geri kalanlar bugün desteklenmiyor. Bunlardan birine ihtiyacınız varsa halka açık backlog'ta talep edin: liste, insanların gerçekten istedikleriyle büyür.
Bir yapay zeka ajanı veritabanıma yazabilir mi?
Hayır. Bir ajanın sorgu çalıştırdığı MCP aracı olan db_query, bağlantı neye izin verirse versin salt okunurdur: bir SELECT, bir SHOW ya da bir EXPLAIN geçer, bir MongoDB find veya aggregate de öyle; veriyi değiştirecek her şey reddedilir. Bir bağlantıyı yazılabilir yapmak, yazma işlemlerini bir ajan için değil, her birinin açıkça onaylandığı konsolda sizin için açar. Koruma önlemi parolanın değil ifadenin üzerinde oturur, çünkü bir DROP çalıştırmak için gereken şey bir parola değildir.
Özel bir alt ağdaki veritabanına nasıl ulaşırım?
Bağlantıyı, AgentsRoom'da zaten kaydettiğiniz SSH ve SSM bağlantılarından kurulan bir SSH tüneli ya da bir AWS SSM port yönlendirme oturumu üzerinden yönlendirin. Uygulama tüneli veya oturumu açar ve veritabanını onun üzerinden bağlar, böylece veritabanı herkese açık internetten erişilemez kalır.
Ajanlarım veritabanı parolasını görüyor mu?
Hayır. Ajanlar MCP üzerinden bir bağlantıyı adlandırarak sorgu çalıştırır. Kimlik bilgilerini AgentsRoom tutar ve ifadeyi kendisi çalıştırır, dolayısıyla parola ajana asla döndürülmez, sorguya asla yazılmaz ve konuşmanın asla parçası olmaz.
Bir ajan aynı anda birkaç ifade çalıştırabilir mi?
Hayır. Bir çağrı tam olarak bir ifade taşır. Noktalı virgülün arkasına dizilen her şey çalıştırılmak yerine reddedilir, bu da okuma gibi görünen bir şeyin içine yazma saklamanın en eski yolunu ortadan kaldırır.
Bir bağlantıyı üretim olarak işaretlemek neyi değiştirir?
Bir yazma işleminden önce istenen onayı sertleştirir. Önemli olan veritabanı yerel kopya gibi davranmayı bırakır, uzun bir günün sonunda istediğiniz de, bir görev listesini ilerleten bir ajandan daha da çok istediğiniz de budur.
Çok sayıda satır döndüren bir sorguda ne olur?
Sonuç kümeleri sınırlandırılır. Devasa bir tablo döndürecek bir sorgu, pencereyi ya da ajanın bağlamını boğmak yerine kırpılmış olarak geri gelir, böylece geniş bir SELECT verilerinizin dışa aktarımı değil, küçük bir zahmet olarak kalır.
Bir ajan veritabanı bağlantısı ekleyebilir mi?
Önerebilir, asla kaydedemez. db_connection_new, host, port, kullanıcı ve veritabanına üzerinden ulaşılması gereken SSH ya da AWS SSM bağlantısıyla önceden doldurulmuş oluşturma formunu açar; onu siz gözden geçirir, parolayı yazar ve kaydedersiniz. Siz kaydedene kadar hiçbir şey saklanmaz ve ajan hiçbir zaman kimlik bilgisi sağlamaz.
Bir ajan şemamı nasıl öğrenir?
Kayıtlı bir bağlantıyı hiç SQL olmadan keşfeden db_schema ile. Argümansız çağrıldığında şemaları listeler, bir veritabanı verildiğinde tabloları ve görünümleri listeler, bir tablo verildiğinde sütunları, tiplerini, null alabilirliklerini, anahtarlarını ve varsayılan değerlerini döndürür. Bu, bir ajana information_schema'yı elle sorgulatmaktan hem daha ucuz hem daha güvenlidir.
Veritabanı bağlantılarım makinelerim arasında senkronize oluyor mu?
Bağlantı evet, parola hayır. Ad, host, port, kullanıcı, varsayılan veritabanı, kapsam, salt okunur ve üretim işaretleri ve üzerinden geçtiği SSH ya da SSM tüneli hesabınızı izler : bir makinede kaydedilen bağlantı, yeniden yazılmak yerine diğerlerinde de görünür. Parola ise onu yazdığınız makinenin anahtar zincirinde şifreli kalır ve bize hiç gönderilmez; başka bir makineden gelen bir bağlantının, açılabilmesi için parolasını bekliyor diye işaretlenmesinin nedeni de budur.
Bir veritabanını dışa aktarıp başka bir yere içe aktarabilir miyim?
Evet. Bir veritabanını bir dosyaya aktarabilir, böyle bir dosyayı bir veritabanına geri yükleyebilir ya da bir veritabanını doğrudan bir başkasının üzerine kopyalayabilirsiniz; zaten kaydettiğiniz SSH veya SSM tünelleri üzerinden de. Her motor kendi resmi araçlarını çalıştırır (mysqldump ve mysql, pg_dump ve psql, mongodump ve mongorestore); bu araçlar AgentsRoom ile değil veritabanıyla birlikte gelir: bulunamazlarsa uygulama, bulundukları klasörü göstermenizi ister. Kopyalama yalnızca aynı motorun iki bağlantısı arasında çalışır, çünkü bir yedek ancak kendisini üreten motora geri yüklenebilir. Salt okunur bir bağlantıda içe aktarma reddedilir, hedefe hiçbir şey yazılmadan önce hedef sizin seçtiğiniz bir dosyaya yedeklenir ve hedefin üzerine yazmak, onayında veritabanının adını anan ayrı bir seçenektir.
Bunları da beğenebilirsiniz
AWS SSM üzerinden RDS
Herkese açık uç noktası olmayan bir Amazon RDS örneğine kendi makinenizden, aws ssm start-session ve AWS-StartPortForwardingSessionToRemoteHost belgesi üzerinden ulaşın. Bakımını üstleneceğiniz bir bastion yok, VPN yok, gelen SSH kuralı yok. AgentsRoom oturumu bir loopback portunda açar ve veritabanı istemcisini onun üzerinden bağlar. MySQL, PostgreSQL ve MongoDB, yani RDS MySQL, RDS PostgreSQL, Aurora ve DocumentDB.
SSH Bağlantıları
SSH bağlantılarınızı kaydedin, SSH üzerinden yerleşik bir terminal açın ve Claude Code, Codex veya Antigravity CLI'yi doğrudan uzak sunucunuzda ya da VPS'inizde çalıştırın. SSH anahtarı veya parola ile kimlik doğrulama, proje bazlı bağlantı profilleri, ayrı bir SSH istemcisine gerek yok.
Gizli Bilgi Yöneticisi
API anahtarlarınızı, token'larınızı ve parolalarınızı işletim sistemi anahtar zincirinizde saklayın, dev komutlarında ve ajan ortamlarında onlara {{secret:NAME}} ile referans verin, AgentsRoom da başlatma anında değeri çözümlesin. Ajanlar adları görür, değerleri asla, ve hiçbir şey bir sunucuya senkronize edilmez.
Dev Terminalleri
Proje bazlı terminal yöneticisi ve süreç başlatıcı. Backend, frontend ve worker'ları yerel olarak ya da uzak bir sunucuda tek tıkla başlatın.
AgentsRoom MCP
Ajanlarınızın AgentsRoom'un kendisini yönlendirmesini sağlayan MCP sunucusu : projeler, terminaller, backlog ve bağlantılar, beraberinde gelen koruma önlemleriyle.
Ajanlarınıza Veriyi Verin, Anahtarları Değil
AgentsRoom'u indirin, MySQL, PostgreSQL ve MongoDB bağlantılarınızı kaydedin, onlara bir SSH tüneli ya da bir AWS SSM oturumu üzerinden ulaşın ve ajanlarınız onları salt okunur sorgulasın.
Yardımcı uygulama: hareket halindeyken ajanlarınızı izleyin
Claude, Codex, Antigravity CLI veya başka bir AI sağlayıcı kullan.
Hataları ve istekleri doğrudan genel backlogunuza gönderin.