Biarkan Agen Anda Menjalankan Kueri ke Database,
Baca-Saja Sampai Anda Menentukan Sebaliknya
AgentsRoom mengelola koneksi MySQL, PostgreSQL, SQL Server, MongoDB, SQLite, dan Google BigQuery Anda dan memberi agen coding AI Anda cara menjalankan kueri terhadapnya. Baca-saja secara bawaan, satu pernyataan dalam satu waktu, dengan kata sandi tetap di luar jangkauan.
Agen yang bisa membaca baris data yang sebenarnya berhenti menebak-nebak soal data Anda. Agen yang tidak bisa menulis ke sana berhenti menjadi risiko yang harus Anda awasi baris demi baris.
Bagaimana AgentsRoom menjangkau database di subnet privat dan menjawab kueri baca-saja dari sebuah agen AI.
Agen coding AI yang tidak bisa melihat data Anda menulis kode berdasarkan skema yang ia bayangkan sendiri. Ia mengarang sebuah kolom, mengira sebuah enum punya tiga nilai padahal tujuh, dan menjelaskan sebuah bug dengan teori alih-alih dengan satu baris data. Memberinya koneksi database memperbaiki itu, dan sekaligus jalan tercepat mengubah agen yang membantu menjadi sebuah insiden. AgentsRoom dibangun di sekitar ketegangan itu.
Anda menyimpan koneksi di aplikasi seperti di klien database mana pun: mesin database, host, port, pengguna, database, dan TLS bila server memintanya. Jika database tidak bisa dijangkau dari internet terbuka, koneksinya dialihkan lewat terowongan SSH atau sesi penerusan port AWS SSM, memakai koneksi SSH dan SSM yang sudah Anda simpan di AgentsRoom. Begitulah database yang duduk di subnet privat menjadi sesuatu yang bisa Anda kueri tanpa membukanya ke seluruh dunia.
Setiap koneksi dimulai dalam mode baca-saja. Sebuah SELECT berjalan. Pernyataan yang akan mengubah data tidak, sampai Anda membuat koneksi itu bisa ditulis dan mengonfirmasi operasinya. Hanya satu pernyataan yang diterima per panggilan, jadi tidak ada tambahan yang bersembunyi di balik titik koma, dan set hasil dibatasi supaya kueri yang lebar tidak membanjiri agen atau jendela. Sebuah koneksi juga bisa ditandai sebagai produksi, yang membuat konfirmasinya lebih sulit diberikan secara tidak sengaja.
Membaca bukan seluruh pekerjaannya. Koneksi yang disimpan di satu mesin muncul di mesin Anda yang lain, jadi Anda menyiapkan sebuah database sekali saja, bukan sekali untuk tiap komputer. Dan sebuah database bisa diekspor ke file, dipulihkan dari file, atau disalin langsung ke server lain lewat terowongan yang sama: pekerjaan yang selama ini membuat Anda harus keluar dari aplikasi.
Klien Database yang Berasumsi Ada Agen di Balik Kemudi
MySQL, PostgreSQL, SQL Server, MongoDB, SQLite, dan Google BigQuery, dengan mesin server yang terjangkau di jaringan privat, dengan pengaman menyala secara bawaan.
Koneksi MySQL, PostgreSQL, SQL Server, dan MongoDB
Simpan satu koneksi per database: host, port, pengguna, database yang dibuka, dan TLS bila server mewajibkannya. Database lokal Anda, yang staging, dan replika produksi semuanya tinggal di daftar yang sama, siap dipilih alih-alih diketik ulang.
Jangkau Database Privat
Database di subnet privat bukan kasus khusus. Alihkan koneksinya lewat terowongan SSH atau sesi penerusan port AWS SSM dan AgentsRoom membukanya untuk Anda, memakai ulang koneksi SSH dan SSM yang sudah Anda simpan di aplikasi. Instance Google Cloud SQL dijangkau lewat nama koneksinya melalui Cloud SQL Auth Proxy, dengan login gcloud Anda sendiri dan tanpa menyimpan apa pun.
Baca-Saja secara Bawaan
Koneksi baru hanya bisa membaca dan tidak lebih. Kueri mengembalikan baris, pernyataan yang akan mengubah data ditolak. Tidak ada yang perlu ingat menyalakan mode aman, karena mode aman adalah tempat setiap koneksi bermula.
Dua Kunci Sebelum Sebuah Penulisan
Menulis butuh dua tindakan yang disengaja, bukan satu. Koneksinya harus dibuat bisa ditulis, dan operasinya sendiri harus dikonfirmasi secara eksplisit. Satu klik ceroboh tidak bisa berlanjut menjadi UPDATE tanpa klausa WHERE.
Satu Pernyataan per Panggilan
Setiap panggilan membawa tepat satu pernyataan. Apa pun yang ditumpuk di balik titik koma ditolak alih-alih dieksekusi, jadi pembacaan yang terlihat seperti pembacaan tidak bisa menyelundupkan pernyataan kedua. Di atas itu, set hasil dibatasi.
Produksi Selalu Ditandai
Tandai sebuah koneksi sebagai produksi dan konfirmasinya menjadi lebih ketat. Database yang penting berhenti terlihat persis seperti salinan lokal, baik bagi Anda di penghujung hari yang panjang maupun bagi agen yang sedang menyelesaikan daftar tugas.
Koneksi Anda, di Setiap Mesin
Koneksi yang disimpan di mesin kantor sudah ada di laptop: nama, host, port, pengguna, database bawaan, dan terowongan yang dilaluinya. Satu-satunya yang tertinggal adalah kata sandi, terenkripsi di mesin tempat Anda mengetiknya, jadi setiap mesin menanyakannya sekali.
Ekspor, Impor, Salin
Tuang sebuah database ke file .sql, muat file seperti itu ke dalam sebuah database, atau salin satu database langsung ke database lain. Tujuannya dicadangkan sebelum ditimpa, dan menggantinya sepenuhnya adalah keputusan tersendiri yang dikonfirmasi terpisah.
Agen Menjalankan Kueri ke Database, Mereka Tidak Pernah Memegang Kata Sandinya
Kredensial database Anda disimpan oleh AgentsRoom, bukan dibagikan. Sebuah agen meminta menjalankan kueri terhadap koneksi yang ia kenal lewat nama, aplikasi membuka koneksinya, menjalankan pernyataannya, dan mengembalikan barisnya. Kata sandi tidak pernah menjadi bagian dari apa yang diterima agen, tidak pernah menjadi bagian dari kueri yang ia tulis, dan tidak pernah menjadi bagian dari percakapan yang ia simpan.
Aturan baca-saja adalah separuh lainnya, dan bagi sebuah agen itu bukan sesuatu yang bisa ia hindari dengan berargumen. Alat yang dipakai agen untuk menjalankan kueri menolak apa pun selain pembacaan, kecuali dua hal terpenuhi: koneksinya bisa ditulis, dan Anda telah mengaktifkan "Izinkan agen menulis" untuk koneksi itu. Opsi ini nonaktif secara bawaan, dan pemeriksaannya berjalan di aplikasi desktop, bukan di proses agen. Penulisan Anda sendiri di konsol tetap meminta konfirmasi eksplisit, yang sengaja dibuat lebih sulit diberikan ketika koneksinya ditandai sebagai produksi. Begitu sebuah koneksi dibuka untuk penulisan oleh agen, penulisan itu berjalan tanpa konfirmasi tersebut, jadi simpan opsi ini untuk database yang memang Anda percayakan kepada agen. Di tempat lain, hasil terburuk dari kueri yang buruk tetap berupa jawaban yang salah, bukan tabel yang hilang.
Aturan satu pernyataan menutup celah klasik. Panggilan yang membawa satu pernyataan tidak bisa diperpanjang dengan titik koma dan pernyataan kedua, jadi kueri yang terbaca tidak berbahaya saat ditinjau tidak bisa melakukan hal lain saat dieksekusi. SQL Server tidak membutuhkan titik koma itu, jadi di sana sebuah pembacaan adalah SELECT atau WITH tanpa kata kunci penulisan atau transaksi di bagian mana pun, dan dijalankan di dalam transaksi yang selalu di-rollback. Digabung dengan set hasil yang dibatasi, sebuah kesalahan tetap menjadi kesalahan alih-alih berubah menjadi ekspor data.
Enam mesin database, dan kami sebutkan juga yang belum ada
MySQL dan MariaDB, PostgreSQL, SQL Server (termasuk Azure SQL dan Amazon RDS for SQL Server), MongoDB, SQLite, dan Google BigQuery. Masing-masing punya driver sendiri, bukan lapisan penerjemah, karena semuanya memang benar-benar berbeda: satu sesi PostgreSQL atau SQL Server terikat pada satu database, MongoDB menerima kueri dan bukan SQL, T-SQL tidak membutuhkan titik koma di antara dua pernyataan, setiap ekspor menjalankan perkakas bawaan mesin database itu sendiri, SQLite hanyalah sebuah file di komputer Anda, tanpa host, pengguna, atau kata sandi, dan koneksi BigQuery adalah sebuah project Google Cloud beserta set data (dataset) bawaan, masuk dengan login Google Anda sendiri (gcloud auth application-default login), tanpa kunci yang disimpan. Keempat mesin server dijangkau secara langsung, atau lewat terowongan SSH atau sesi penerusan port AWS SSM ketika tidak terekspos ke internet terbuka.
Oracle, Redis, dan yang lainnya tidak didukung. Di SQL Server, Anda masuk dengan login SQL (autentikasi Windows, Active Directory, dan Entra ID tidak tersedia), dan tidak ada ekspor, impor, maupun penyalinan. Di BigQuery, Google menagih setiap kueri berdasarkan jumlah byte yang dibacanya, jadi setiap koneksi punya batas tagihan per kueri (1 GiB secara bawaan, bisa diubah): kueri yang melampauinya ditolak alih-alih ditagih. Membuka tabel itu gratis dan baca-saja, agen Anda memakai alat db_list, db_schema, dan db_query yang sama dengan pengaman yang sama dan melihat berapa byte yang dibaca setiap kueri, dan di sana pun tidak ada ekspor, impor, maupun penyalinan. Anda berhak tahu itu sebelum mengunduh, bukan sesudahnya. Mesin database mana yang menyusul ditentukan oleh apa yang diminta orang, jadi kalau milik Anda belum ada, sebutkan yang mana di backlog publik dan permintaan itu akan dihitung.
Minta mesin database AndaPindahkan sebuah database, bukan cuma membacanya
Ekspor sebuah database ke sebuah file. Impor sebuah file ke dalam database. Atau salin satu database langsung ke database lain, termasuk lewat terowongan SSH atau sesi AWS SSM yang sudah Anda simpan. Setiap mesin database menjalankan perkakas resminya sendiri dan menulis ke disk secara mengalir, jadi database berukuran beberapa gigabyte menjadi sebuah bilah kemajuan, bukan sebuah crash.
Perkakas itu datang bersama databasenya, bukan bersama AgentsRoom: mysqldump dan mysql, pg_dump dan psql, mongodump dan mongorestore. SQL Server tidak punya padanan yang mengalirkan seluruh database, jadi koneksinya tidak memiliki ekspor, impor, maupun penyalinan. Ketika perkakas itu tidak ada, aplikasi menyebut persis yang mana dan membiarkan Anda menunjuk folder tempatnya berada, sebagaimana seharusnya sebuah klien database: dijalankan dari Dock atau dari menu Start, sebuah aplikasi hanya melihat PATH seadanya dan kalau tidak akan menyatakan perkakas itu hilang di mesin yang sebenarnya punya.
Di penyalinanlah satu klik yang keliru memakan satu hari kerja, jadi bagian itu dibangun mengelilingi kemungkinan tersebut, bukan mengelilingi jalur yang mulus.
- Koneksi baca-saja menolak impor sejak awal, sebelum apa pun dibuka.
- Database tujuan dicadangkan ke file pilihan Anda sebelum satu pernyataan pun dijalankan.
- Konfirmasinya menyebut nama koneksi dan nama database, dan bicara lebih keras ketika koneksinya ditandai sebagai produksi.
- Menghapus lalu membuat ulang database tujuan adalah opsi tersendiri, dan pada koneksi produksi Anda harus mengetik ulang nama database itu.
Dari Database Privat Menjadi Sebuah Jawaban
Simpan koneksinya, alihkan rutenya, lalu jalankan kuerinya sendiri atau biarkan agen yang melakukannya.
Simpan koneksinya
Tambahkan databasenya: host, port, pengguna, nama database, dan TLS bila server memintanya. Beri nama yang akan Anda kenali nanti, dan tandai sebagai produksi jika memang itu adanya.
Alihkan rutenya jika privat
Jika database tidak bisa dijangkau langsung, arahkan koneksinya ke terowongan SSH atau sesi penerusan port AWS SSM yang dibangun dari koneksi yang sudah tersimpan di AgentsRoom. Database di subnet privat menjadi terjangkau tanpa perlu mengeksposnya ke publik. Di Google Cloud, pilih instance Cloud SQL sebagai gantinya: AgentsRoom menjalankan Cloud SQL Auth Proxy untuk Anda.
Jalankan kuerinya, atau biarkan agen yang menjalankan
Jalankan pernyataan Anda dari aplikasi, atau biarkan sebuah agen menjalankannya lewat MCP. Baca-saja sampai Anda mengubahnya, satu pernyataan per panggilan, set hasil dibatasi, dan sebuah konfirmasi eksplisit berdiri di antara setiap penulisan dan data Anda.
Saat Sebuah Agen Butuh Baris Data yang Sebenarnya
Momen ketika membaca data produksi adalah jalan terpendek menuju perbaikan.
Debug dengan data nyata
Bug itu hanya muncul untuk segelintir akun. Biarkan agen membaca baris-baris itu dan ia menemukan nilai yang merusak logikanya, alih-alih menawarkan tiga teori tentang seperti apa datanya.
Database yang tidak publik
Database tinggal di subnet privat tanpa endpoint publik. Alihkan koneksinya lewat terowongan SSH atau sesi AWS SSM yang dibangun dari koneksi tersimpan Anda, lalu jalankan kueri tanpa membuka satu port pun ke internet.
Biarkan agen memeriksa, bukan menebak
Sebelum menulis sebuah migrasi atau sebuah kueri, agen bisa melihat apa yang benar-benar tersimpan. Ia membaca, ia melapor, dan kecuali Anda membuka koneksi itu untuk penulisan oleh agen, ia tidak punya cara untuk mengubah apa pun selagi melakukannya.
Produksi, tanpa risiko penulisan
Membaca produksi sering kali perlu, menulis ke sana hampir tidak pernah perlu di tengah sebuah tugas. Tandai koneksinya sebagai produksi, jaga tetap baca-saja, dan perbedaan antara menyelidiki dan merusak berhenti bergantung pada ada tidaknya orang yang memperhatikan.
Segarkan staging dengan data nyata
Bug itu hanya bisa direproduksi pada baris data yang nyata. Salin databasenya ke server staging Anda lewat terowongan yang sudah tersimpan, dengan isi lama di sana dicadangkan lebih dulu.
Buka laptop, semuanya sudah ada
Koneksi Anda mengikuti akun Anda: host yang sama, terowongan yang sama, penanda baca-saja dan produksi yang sama. Dengan kata sandi tersinkron aktif, kata sandinya ikut juga, terenkripsi end-to-end, sehingga tidak ada yang diketik ulang; tanpanya, tiap mesin menanyakan kata sandi sekali.
Bagaimana agen saya menjalankan kueri ke database?
Lewat AgentsRoom MCP, dengan empat alat. db_list mengembalikan koneksi tersimpan Anda beserta metadatanya, db_schema menelusuri skema, tabel, dan kolomnya tanpa satu baris SQL pun, db_query menjalankan satu pernyataan dan mengembalikan barisnya, dan db_connection_new mengusulkan database yang belum Anda simpan. AgentsRoom yang membuka koneksinya, termasuk terowongan SSH atau sesi AWS SSM di depannya bila ada. Yang kembali ke agen adalah set hasil, tidak pernah sebuah kredensial.
Agen hanya bisa menulis jika Anda mengaktifkan "Izinkan agen menulis" pada koneksi yang juga bisa ditulis. Opsi ini harus diaktifkan sendiri, nonaktif secara bawaan, dan tersinkron bersama koneksinya di seluruh akun Anda. Setelah diaktifkan, penulisan dijalankan seketika, jadi gunakan hanya jika Anda memercayakan database itu kepada agen. Desktop memeriksa izin ini di proses utamanya, dan db_query tetap hanya menerima satu pernyataan per panggilan.
Mendaftarkan sebuah database pun bisa sepenuhnya menjadi tugas agen. db_connection_new menjaga jalur yang ditinjau: ia membuka formulir pembuatan yang terisi awal dengan host, pengguna, dan koneksi SSH atau AWS SSM yang seharusnya dipakai untuk menjangkaunya, lalu Anda meninjaunya, mengetik kata sandinya, dan menyimpan, tidak ada yang tersimpan sampai Anda melakukannya. Kecuali Anda mematikan "Agen dapat mengelola koneksi" (Pengaturan, aktif secara default), db_connection_save menyimpan koneksinya begitu saja, dan kata sandinya tetap tidak pernah lewat percakapan: ia disalin dari sebuah rahasia brankas yang namanya saja disebut agen. Agen mendapat apa yang ia butuhkan untuk menalar tentang data Anda, dan tak satu pun cara yang biasanya membuat akses itu berubah menjadi insiden tersedia baginya.
Setiap kueri yang dijalankan agen juga terlihat. Panggilan db_query dan db_schema masuk ke tab Aktivitas pada panel kanan, beserta SQL-nya dan baris-baris pertama yang dikembalikan, dalam satu log per database; avatar agen tampil di tombol Basis data dan, dengan lencana Agen sedang bekerja, di daftar database Anda. Anda juga bisa memantaunya dari ponsel, di kartu agen pada aplikasi seluler. Log itu hanya berpindah antara komputer dan ponsel Anda, terenkripsi end-to-end dengan rahasia yang disamarkan: tidak ada set hasil yang disimpan di server.
Jelajahi AgentsRoom MCPTab Aktivitas yang sama yang mendaftar panggilan db_query dan db_schema Anda, di sini direkam pada sebuah server SSH tersimpan : sebuah agen menjalankan tiga perintah, masing-masing mendarat beserta keluarannya, kode keluarnya, dan durasinya, lalu log koneksi itu terbuka utuh. Log itu tetap di komputer Anda.
Database apa saja yang didukung?
Bisakah agen AI menulis ke database saya?
Bagaimana cara menjangkau database di subnet privat?
Apakah agen saya melihat kata sandi database?
Bisakah sebuah agen menjalankan beberapa pernyataan sekaligus?
Apa yang berubah kalau sebuah koneksi ditandai sebagai produksi?
Apa yang terjadi dengan kueri yang mengembalikan sangat banyak baris?
Bisakah sebuah agen menambahkan koneksi database?
Bagaimana sebuah agen mempelajari skema saya?
Apakah koneksi database saya tersinkron di antara mesin-mesin saya?
Bisakah saya mengekspor sebuah database dan mengimpornya di tempat lain?
Bagaimana akun yang menyimpan koneksi saya dilindungi?
Tangkapan layar
Tangkapan layar asli dari aplikasi, ditambahkan seiring perkembangan fitur ini.
Anda mungkin juga suka
RDS lewat AWS SSM
Jangkau instance Amazon RDS yang tidak punya endpoint publik, dari mesin Anda sendiri, lewat aws ssm start-session dan dokumen AWS-StartPortForwardingSessionToRemoteHost. Tidak ada bastion yang harus dirawat, tidak ada VPN, tidak ada aturan SSH masuk. AgentsRoom membuka sesinya pada sebuah port loopback dan menyambungkan klien databasenya lewat jalur itu. MySQL, PostgreSQL, SQL Server, dan MongoDB, jadi RDS MySQL, RDS PostgreSQL, RDS for SQL Server, Aurora, dan DocumentDB.
Cloud SQL Auth Proxy
Jangkau instance Cloud SQL for MySQL atau PostgreSQL dari mesin Anda sendiri, termasuk yang hanya punya IP privat, tanpa VM bastion. AgentsRoom menjalankan Cloud SQL Auth Proxy pada sebuah port loopback dengan Application Default Credentials gcloud Anda, mendukung autentikasi basis data IAM, dan membiarkan agen AI menjalankan kueri secara baca-saja.
Koneksi SSH
Simpan koneksi SSH-mu, buka terminal SSH bawaan, dan jalankan Claude Code, Codex, atau Antigravity CLI langsung di server jarak jauh atau VPS-mu. Autentikasi dengan kunci SSH atau kata sandi, profil koneksi per proyek, tanpa perlu klien SSH terpisah.
Pengelola Rahasia
Simpan kunci API, token, dan kata sandi di keychain sistem operasi Anda, rujuk sebagai {{secret:NAME}} di perintah dev dan lingkungan agen, lalu biarkan AgentsRoom menggantinya dengan nilai asli saat peluncuran. Agen melihat namanya, tidak pernah nilainya, dan tidak ada yang disinkronkan ke server.
Terminal Dev
Pengelola terminal dan peluncur proses per proyek. Jalankan backend, frontend, dan worker dengan satu klik, secara lokal atau di server jarak jauh.
AgentsRoom MCP
Server MCP yang membiarkan agen Anda mengemudikan AgentsRoom itu sendiri: proyek, terminal, backlog, dan koneksi, lengkap dengan pengaman yang menyertainya.
Beri Agen Anda Datanya, Bukan Kunci Anda
Unduh AgentsRoom, simpan koneksi MySQL, PostgreSQL, SQL Server, MongoDB, SQLite, dan Google BigQuery Anda, jangkau yang ada di server lewat terowongan SSH atau sesi AWS SSM, dan biarkan agen Anda menjalankan kueri, baca-saja kecuali Anda membuka sebuah koneksi untuk penulisan mereka.
Aplikasi pendamping: pantau agen Anda saat bepergian
Gunakan Claude, Codex, Antigravity CLI, atau penyedia AI lainnya.
Kirim bug dan permintaan langsung ke backlog publik Anda.
Agen yang dibaca seperti percakapan
Setiap agen punya peran, wajah, dan utas yang Anda baca seperti aplikasi pesan.



