Agen AI boleh menulis invoice, tetapi jangan biarkan ia mengirim sendiri

Agen AI boleh membaca data yang diperlukan dan menyusun draf invoice, tetapi jangan memberinya kebebasan untuk mengirim sendiri. Pisahkan kemampuan membaca, merancang perubahan, dan menimbulkan efek eksternal; tahan pengiriman, pembayaran, penghapusan, perubahan produksi, dan komunikasi keluar sampai manusia memeriksa tindakan final.
Batas tersebut harus diterapkan pada identitas, izin tool, dan sistem tujuan, bukan hanya ditulis dalam prompt. Lengkapi dengan plafon biaya dan iterasi, perilaku gagal-tertutup, serta catatan audit agar instruksi keliru tidak langsung berubah menjadi transaksi nyata.
Petakan tindakan, risiko, dan kontrolnya

Klasifikasikan setiap tool menurut dampaknya sebelum menghubungkannya ke agen. Panduan Excessive Agency OWASP mengaitkan kerusakan dengan fungsi, izin, atau otonomi berlebihan dan merekomendasikan fungsi yang sempit, hak minimum, otorisasi pada sistem tujuan, serta persetujuan manusia untuk tindakan berdampak tinggi.
- Risiko rendah—otomatis: membaca katalog yang diizinkan, mencari status invoice, melakukan perhitungan, atau menyimpan draf di ruang terisolasi. Gunakan kredensial hanya-baca, pembatasan tenant, dan validasi keluaran.
- Risiko menengah—otomatis dengan syarat: memperbarui label internal atau membuat tiket dalam cakupan tertentu. Batasi jenis objek, kolom, jumlah operasi, dan kondisi bisnisnya.
- Risiko tinggi—wajib disetujui: mengirim invoice, email, atau pesan; memulai pembayaran atau refund; menghapus data; mengubah produksi; dan menerbitkan dokumen resmi.
- Dilarang: memperluas izin sendiri, membuat kredensial, mematikan pencatatan, mengekspor data massal di luar tujuan, atau mengubah kebijakan persetujuan.
Dalam alur invoice, agen dapat membaca pesanan yang telah disetujui, menerapkan aturan perhitungan aplikasi, lalu menyimpan draf. Tool pengiriman harus menjadi kemampuan terpisah yang tidak berjalan tanpa gerbang persetujuan.
Berikan identitas sempit, bukan kunci serbaguna
Gunakan identitas khusus untuk agen dan kredensial berbeda bagi tool baca, tulis, serta eksekusi. Jangan menaruh token administrator di konteks model atau menyediakan fungsi umum yang dapat menjalankan perintah bebas ketika kebutuhan sebenarnya hanya membaca pesanan dan membuat draf.
Model tanggung jawab agen AI Microsoft menyatakan bahwa pelanggan tetap bertanggung jawab atas data, identitas dan hak minimum, otorisasi tindakan, serta pengawasan manusia; pembagian kontrol lain, termasuk guardrail langkah dan biaya, bergantung pada model penerapan. Karena itu, sistem tujuan perlu memeriksa setiap panggilan: pengguna ini, melalui agen ini, boleh melakukan tindakan ini terhadap objek ini.
Terapkan allowlist untuk pelanggan, rekening, jenis dokumen, dan lingkungan yang boleh disentuh. Agen yang bertindak atas nama pengguna tidak boleh memperoleh cakupan lebih luas melalui akun layanan bersama.
Persetujuan harus mengikat tindakan yang diperiksa

Tempatkan gerbang persetujuan tepat sebelum efek eksternal, setelah draf final tersedia. Alur human-in-the-loop OpenAI Agents SDK dapat menjeda eksekusi sebelum tool sensitif berjalan, menampilkan panggilan sebagai interupsi, menerima keputusan setuju atau tolak, lalu melanjutkan proses; aturan persetujuannya juga gagal-tertutup ketika argumen tidak dapat diperiksa dengan aman.
Simpan persetujuan bersama hash atau versi payload, identitas pemberi persetujuan, cakupan keputusan, dan masa berlakunya. Jika agen mengganti penerima, nominal, lampiran, atau isi invoice setelah pemeriksaan, batalkan persetujuan lama dan minta keputusan baru.
- Tampilkan tindakan dan sistem tujuan, bukan hanya nama teknis tool.
- Perlihatkan penerima, nilai, data yang akan keluar, serta perubahan sebelum dan sesudah.
- Batasi keputusan pada satu panggilan berisiko tinggi dengan payload yang telah diperiksa.
- Pisahkan pengusul dan penyetuju jika kebijakan keuangan organisasi mengharuskannya.
Batasi biaya, waktu, dan jumlah percobaan
Tetapkan penghenti independen untuk jumlah langkah, jumlah panggilan tool, durasi eksekusi, dan anggaran model. Tambahkan batas bisnis yang terpisah, seperti jumlah invoice per batch, nilai per tindakan, dan akumulasi nilai harian. Plafon konsumsi model tidak membatasi jumlah uang yang dapat dipindahkan kecuali sistem transaksi juga menerapkan batasnya.
Nilai ambang harus mengikuti toleransi risiko dan volume normal organisasi, bukan angka universal. Mulailah dengan batas kecil di lingkungan uji, catat pekerjaan sah yang terhenti, lalu naikkan melalui perubahan konfigurasi yang ditinjau. Pembahasan tentang batas belanja agen relevan karena plafon mengurangi potensi dampak, tetapi tidak membuktikan bahwa tindakan agen benar.
Hentikan proses saat agen mengulang pasangan tool dan argumen, tidak menghasilkan kemajuan, menerima penolakan berulang, atau mendekati plafon. Agen tidak boleh menaikkan batasnya sendiri; serahkan pekerjaan kepada operator bersama jejak langkah yang sudah terjadi.
Gunakan pola gagal-tertutup
Jika identitas pengguna tidak jelas, kebijakan tidak tersedia, payload tidak valid, tujuan berada di luar allowlist, atau layanan persetujuan gagal, tindakan tidak boleh dijalankan. Gangguan bukan persetujuan implisit, dan pemeriksaan setelah eksekusi tidak dapat menggantikan gerbang sebelumnya.
Perlakukan email, dokumen, halaman web, hasil pencarian, dan keluaran tool sebagai data yang tidak tepercaya. Instruksi tersembunyi dapat mencoba mengalihkan agen dari membaca invoice menuju pengiriman atau ekspor data; pemisahan tool dan otorisasi pada sistem tujuan membatasi akibatnya meskipun model mengikuti instruksi tersebut. Mekanisme serangan ini dijelaskan lebih khusus dalam pembahasan prompt injection pada agen.
Gunakan idempotency key pada permintaan yang mungkin dicoba ulang agar retry tidak mengirim invoice atau membayar transaksi dua kali. Bila status eksekusi tidak pasti, hentikan percobaan otomatis dan tandai pekerjaan untuk rekonsiliasi manusia.
Bukti audit sebelum agen diaktifkan

Sebelum produksi, tim perlu menunjukkan bahwa kontrol benar-benar bekerja. Uji jalur berhasil, penolakan, timeout, perubahan payload setelah persetujuan, kredensial kedaluwarsa, retry, dan percobaan melampaui batas.
- Inventaris tool beserta pemilik, tujuan, izin, data yang disentuh, dan klasifikasi risikonya.
- Matriks kebijakan yang membedakan tindakan otomatis, bersyarat, wajib disetujui, dan terlarang.
- Log panggilan tool yang memuat identitas agen dan pengguna, argumen tervalidasi, hasil, keputusan kebijakan, persetujuan, waktu, dan correlation ID.
- Bukti bahwa token tidak masuk ke prompt atau log, dapat dicabut, memiliki masa berlaku, dan hanya menjangkau resource yang diperlukan.
- Hasil uji alarm untuk lonjakan biaya, loop, penolakan berulang, tujuan baru, serta volume atau nilai yang tidak biasa.
- Prosedur penghentian untuk mencabut akses, menghentikan antrean, mempertahankan bukti, dan merekonsiliasi tindakan berstatus tidak pasti.
Aktifkan agen bertahap: mulai dari observasi tanpa eksekusi, lanjutkan ke mode draf, lalu otomatisasi tindakan berisiko rendah. Pengiriman invoice tetap berada di balik persetujuan manusia selama organisasi belum menetapkan kontrol sistem tujuan dan akuntabilitas yang memadai untuk mengubah kebijakan tersebut.
Baca juga:
Berlangganan buletin kami
Dapatkan berita Web3, AI, dan kripto terbaru langsung di kotak masuk Anda.