Bahasa Indonesia

Tinjauan otomatis

Cara Codex meneruskan persetujuan pada batas sandbox kepada agen peninjau

Tinjauan otomatis menggantikan persetujuan manual pada batas sandbox dengan agen peninjau terpisah. Agen utama Codex tetap berjalan di dalam sandbox yang sama, dengan kebijakan persetujuan serta batas jaringan dan sistem file yang sama. Perbedaannya adalah siapa yang meninjau permintaan eskalasi yang memenuhi syarat.

Cara kerja tinjauan otomatis

Secara umum, alurnya adalah:

  1. Agen utama bekerja di dalam read-only atau workspace-write.
  2. Saat perlu melampaui batas sandbox, agen meminta persetujuan.
  3. Jika approvals_reviewer = "auto_review", Codex meneruskan permintaan persetujuan tersebut kepada agen peninjau terpisah, alih-alih berhenti untuk menunggu seseorang.
  4. Peninjau memutuskan apakah tindakan boleh dijalankan dan memberikan alasannya.
  5. Jika tindakan disetujui, eksekusi berlanjut. Jika ditolak, agen utama diperintahkan untuk mencari cara yang secara substansial lebih aman atau berhenti dan bertanya kepada pengguna.

Tinjauan otomatis adalah penggantian peninjau, bukan pemberian izin. Tinjauan ini tidak memperluas writable_roots, mengaktifkan akses jaringan, atau melemahkan jalur yang dilindungi. Tinjauan ini hanya mengubah cara Codex menangani tindakan yang sudah memerlukan persetujuan.

Kapan tinjauan otomatis dipicu

Tinjauan otomatis mengevaluasi permintaan persetujuan yang jika tidak ditinjau akan menghentikan proses untuk menunggu manusia. Permintaan ini meliputi:

  • Pemanggilan alat shell atau exec yang meminta eskalasi izin sandbox.
  • Permintaan jaringan yang diblokir oleh sandbox atau kebijakan saat ini.
  • Pengeditan file di luar root yang diizinkan untuk ditulisi.
  • Pemanggilan alat MCP atau aplikasi yang memerlukan persetujuan berdasarkan anotasi alat atau mode persetujuan yang dikonfigurasi.
  • Akses Computer Use ke situs web atau domain baru.

Tinjauan otomatis tidak berjalan untuk tindakan rutin yang sudah diizinkan di dalam sandbox. Jika perintah dapat berjalan di bawah sandbox_mode aktif, atau pemanggilan alat tetap dalam kebijakan yang diizinkan, agen utama akan melanjutkan tanpa tinjauan.

Computer Use merupakan kasus terpisah. Persetujuan aplikasi untuk Computer Use tetap ditampilkan langsung kepada pengguna, sehingga Tinjauan otomatis tidak menggantikan permintaan tingkat aplikasi tersebut.

Hal yang diblokir oleh tinjauan otomatis

Secara umum, Tinjauan otomatis dirancang untuk memblokir tindakan seperti:

  • mengirim data pribadi, rahasia, atau kredensial ke tujuan yang tidak tepercaya
  • mencari kredensial, token, cookie, atau materi sesi
  • pelemahan keamanan yang luas atau persisten
  • tindakan destruktif dengan risiko kerusakan permanen yang signifikan

Kebijakan persisnya tersedia dalam repositori Codex sumber terbuka: policy_template.md dan policy.md. Kebijakan tersebut dapat disesuaikan untuk setiap perusahaan dengan guardian_policy_config atau untuk setiap pengguna dengan [auto_review].policy lokal.

Hal yang dilihat peninjau

Peninjau itu sendiri merupakan agen Codex dengan tugas yang lebih sempit daripada agen utama: memutuskan apakah tindakan tertentu yang melampaui batas boleh dijalankan.

Peninjau melihat transkrip ringkas beserta permintaan persetujuan yang tepat. Hal tersebut biasanya mencakup pesan pengguna, pembaruan asisten yang ditampilkan, pemanggilan alat dan output alat yang relevan, serta tindakan yang sekarang diajukan untuk disetujui. Peninjau juga dapat melakukan pemeriksaan hanya-baca untuk mengumpulkan konteks yang belum tersedia, tetapi jarang melakukannya.

Penalaran asisten yang tersembunyi tidak disertakan. Tinjauan otomatis melihat item chat yang dipertahankan dan bukti dari alat, bukan rantai pemikiran privat.

Penolakan dan perilaku saat terjadi kegagalan

Penolakan eksplisit tidak diperlakukan seperti kesalahan sandbox biasa. Codex mengembalikan alasan peninjauan kepada agen utama dan menambahkan instruksi yang lebih tegas:

  • Jangan mengejar hasil yang sama melalui solusi alternatif, eksekusi tidak langsung, atau pengelakan kebijakan.
  • Lanjutkan hanya dengan alternatif yang secara substansial lebih aman.
  • Jika tidak, berhenti dan tanyakan kepada pengguna.

Codex juga menerapkan pemutus sirkuit penolakan untuk setiap giliran. Dalam implementasi sumber terbuka saat ini, Tinjauan otomatis menghentikan giliran setelah 3 penolakan berturut-turut atau 10 penolakan dalam jendela bergulir dari 50 tinjauan terakhir pada giliran yang sama.

Setiap hasil selain penolakan mengatur ulang penghitung penolakan berturut-turut. Saat pemutus terpicu, Codex menampilkan peringatan dan membatalkan giliran saat ini melalui interupsi, alih-alih membiarkan agen terus mengulang upaya eskalasi.

Timeout ditampilkan secara terpisah dari penolakan eksplisit, dan agen utama diberi tahu bahwa timeout saja bukan bukti bahwa tindakan tersebut tidak aman.

Tersedia juga jalur pengambilalihan eksplisit untuk tindakan yang ditolak. Dalam TUI sumber terbuka saat ini, jalankan /approve untuk membuka pemilih Penolakan Tinjauan otomatis, lalu pilih satu tindakan yang baru-baru ini ditolak untuk menyetujuinya bagi satu kali percobaan ulang. Codex menyimpan hingga 10 penolakan terbaru per tugas. Persetujuan tersebut bersifat sempit: hanya berlaku pada tindakan yang tepat itu, bukan pada tindakan serupa di masa mendatang; dicatat untuk satu kali percobaan ulang dalam konteks yang sama; dan percobaan ulang tetap melalui Tinjauan otomatis. Di balik layar, Codex menyisipkan penanda persetujuan dalam cakupan developer untuk tindakan yang tepat tersebut. Peninjau kemudian melihat pengambilalihan eksplisit oleh pengguna itu sebagai konteks, tetapi tetap mengikuti kebijakan dan dapat menolak lagi jika kebijakan menyatakan bahwa pengguna tidak dapat mengesampingkan jenis penolakan tersebut.

Konfigurasi

Untuk detail penyiapan, lihat Konfigurasi terkelola.

Kebijakan peninjau default tersedia dalam repositori Codex sumber terbuka: core/src/guardian/policy.md. Perusahaan dapat mengganti bagian khusus tenant dengan guardian_policy_config dalam persyaratan terkelola. Pengguna individu juga dapat menetapkan [auto_review].policy lokal dalam config.toml mereka, tetapi persyaratan terkelola diprioritaskan:

[auto_review]
policy = """
YOUR POLICY GOES HERE
"""

Untuk menyesuaikan kebijakan, salin seluruh redaksi kebijakan default terlebih dahulu, lalu lakukan iterasi berdasarkan profil risiko pribadi Anda.

Mengurangi volume tinjauan tanpa melemahkan keamanan

Tinjauan otomatis bekerja paling baik saat sandbox sudah mencakup alur kerja aman yang umum bagi Anda. Jika terlalu banyak tindakan rutin memerlukan tinjauan, perbaiki batasnya terlebih dahulu, alih-alih mengajari peninjau untuk terus menyetujui eskalasi yang tidak perlu.

Dalam praktiknya, perubahan dengan dampak terbesar adalah:

  • Tambahkan writable_roots yang terbatas untuk direktori sementara atau repositori di sekitarnya yang sengaja Anda gunakan.
  • Tambahkan aturan prefiks dengan cakupan sempit. Utamakan prefiks perintah yang spesifik seperti ["cargo", "test"] atau ["pnpm", "run", "lint"] daripada pola umum seperti ["python"] atau ["curl"]. Aturan yang luas sering kali menghapus batas yang justru dirancang untuk dijaga oleh Tinjauan otomatis.

Transkrip sesi Tinjauan otomatis disimpan di bawah ~/.codex/sessions secara default, sehingga Anda dapat meminta Codex menganalisis aktivitas sebelumnya di sana sebelum mengubah kebijakan atau izin.

Batasan

Tinjauan otomatis meningkatkan kondisi operasi default untuk pekerjaan berbasis agen yang berjalan lama, tetapi bukan jaminan keamanan deterministik.

  • Tinjauan ini hanya mengevaluasi tindakan yang meminta untuk melampaui batas.
  • Tinjauan ini masih dapat membuat kesalahan, terutama dalam konteks adversarial atau tidak biasa.
  • Tinjauan ini harus melengkapi, bukan menggantikan, desain sandbox, pemantauan, dan kebijakan khusus organisasi yang baik.

Untuk dasar penelitian dan hasil evaluasi yang telah dipublikasikan, lihat artikel Alignment Research tentang Tinjauan otomatis.