Bahasa Indonesia

Referensi Konfigurasi

Referensi Konfigurasi

Referensi lengkap untuk Codex config.toml dan requirements.toml

Gunakan halaman ini sebagai referensi yang dapat ditelusuri untuk file konfigurasi Codex. Untuk panduan konseptual dan contoh, mulailah dengan Dasar-dasar konfigurasi dan Konfigurasi Lanjutan.

config.toml

Konfigurasi tingkat pengguna berada di ~/.codex/config.toml. Anda juga dapat menambahkan penggantian cakupan proyek dalam file .codex/config.toml. Codex hanya memuat file konfigurasi cakupan proyek jika Anda memercayai proyek tersebut.

Konfigurasi cakupan proyek tidak dapat mengganti penyedia lokal mesin, autentikasi, metadata permintaan aplikasi milik host, notifikasi, pemilihan profil konfigurasi, atau kunci perutean telemetri. Codex mengabaikan openai_base_url, chatgpt_base_url, apps_mcp_product_sku, model_provider, model_providers, notify, profile, profiles, experimental_realtime_ws_base_url, dan otel ketika muncul dalam .codex/config.toml lokal proyek; tempatkan kunci penyedia, notifikasi, dan telemetri dalam konfigurasi tingkat pengguna. File profil konfigurasi berada di samping config.toml sebagai $CODEX_HOME/profile-name.config.toml; pilih salah satunya dengan --profile profile-name.

Untuk kunci sandbox dan persetujuan (approval_policy, sandbox_mode, dan sandbox_workspace_write.*), gunakan referensi ini bersama Sandbox dan persetujuan, Jalur terlindungi dalam root yang dapat ditulis, dan Akses jaringan. Untuk profil izin beta, lihat Izin.

Codex dan ChatGPT Work tidak lagi mendukung approval_policy = "untrusted". Hapus pengaturan tersebut atau pilih kebijakan yang didukung. Entri proyek dengan trust_level = "untrusted" dalam ~/.codex/config.toml tingkat pengguna tetap didukung. Lihat Bermigrasi dari kebijakan persetujuan untrusted yang telah dihentikan untuk contoh serta pertimbangan kelebihan dan kekurangan opsi persetujuan.

Kunci Tipe / nilai Detail
agents table Pengaturan multiagen dan deklarasi peran kustom. Nama pengaturan skalar dicadangkan dan tidak dapat digunakan sebagai nama peran kustom.
agents.<name>.config_file string (path) Path ke lapisan konfigurasi TOML untuk peran tersebut; path relatif ditentukan dari file konfigurasi yang mendeklarasikan peran.
agents.<name>.description string Panduan peran yang ditampilkan kepada Codex saat memilih dan membuat jenis agen tersebut.
agents.default_subagent_model string Model default untuk agen yang dibuat. Model yang ditentukan secara eksplisit saat pembuatan lebih diprioritaskan.
agents.default_subagent_reasoning_effort string Upaya penalaran default untuk agen yang dibuat. Upaya yang ditentukan secara eksplisit saat pembuatan lebih diprioritaskan.
agents.enabled boolean Mengaktifkan atau menonaktifkan alat multiagen (default: true).
agents.interrupt_message boolean Mencatat pesan yang dapat dilihat model ketika giliran agen diinterupsi (default: true).
agents.max_concurrent_threads_per_session number Jumlah maksimum thread agen yang dibuat yang dapat terbuka secara bersamaan, tidak termasuk thread utama. Jika tidak ditetapkan, Codex memilih nilai default.
agents.max_threads number Alias lama untuk agents.max_concurrent_threads_per_session.
allow_login_shell boolean Mengizinkan alat berbasis shell menggunakan semantik login shell. Nilai default-nya adalah true; jika false, permintaan login = true ditolak dan login yang tidak dicantumkan secara default menggunakan shell non-login.
analytics.enabled boolean Mengaktifkan atau menonaktifkan analitik untuk mesin/profil ini. Jika tidak ditetapkan, nilai default klien berlaku.
approval_policy on-request | never | { granular = { sandbox_approval = bool, rules = bool, mcp_elicitations = bool, request_permissions = bool, skill_approval = bool } } Mengontrol kapan Codex berhenti sementara untuk meminta persetujuan sebelum menjalankan perintah. Anda juga dapat menggunakan approval_policy = { granular = { ... } } untuk mengizinkan atau otomatis menolak kategori permintaan tertentu sambil mempertahankan permintaan lainnya tetap interaktif. untrusted tidak didukung, dan on-failure sudah usang; gunakan on-request untuk proses interaktif atau never untuk proses noninteraktif.
approval_policy.granular.mcp_elicitations boolean Jika true, prompt elisitasi MCP diizinkan untuk ditampilkan alih-alih ditolak secara otomatis.
approval_policy.granular.request_permissions boolean Jika true, prompt dari alat request_permissions diizinkan untuk ditampilkan.
approval_policy.granular.rules boolean Jika true, persetujuan yang dipicu oleh aturan execpolicy prompt diizinkan untuk ditampilkan.
approval_policy.granular.sandbox_approval boolean Jika true, prompt persetujuan eskalasi sandbox diizinkan untuk ditampilkan.
approval_policy.granular.skill_approval boolean Jika true, prompt persetujuan skrip skill diizinkan untuk ditampilkan.
approvals_reviewer user | auto_review Pihak yang meninjau prompt persetujuan yang memenuhi syarat berdasarkan on-request atau kebijakan persetujuan terperinci. Nilai default-nya adalah user; auto_review menggunakan subagen peninjau. Pengaturan ini tidak mengubah sandbox atau tindakan peninjauan yang sudah diizinkan di dalam sandbox.
apps._default.approvals_reviewer user | auto_review Peninjau default untuk prompt persetujuan alat aplikasi, kecuali diganti per aplikasi. Jika tidak dicantumkan, aplikasi mewarisi nilai approvals_reviewer tingkat teratas.
apps._default.default_tools_approval_mode auto | prompt | writes | approve Perilaku persetujuan default untuk alat aplikasi tanpa penggantian per aplikasi atau per alat.
apps._default.destructive_enabled boolean Izin/penolakan default untuk alat aplikasi dengan destructive_hint = true.
apps._default.enabled boolean Status aktif aplikasi secara default untuk semua aplikasi, kecuali diganti per aplikasi.
apps._default.open_world_enabled boolean Izin/penolakan default untuk alat aplikasi dengan open_world_hint = true.
apps.<id>.approvals_reviewer user | auto_review Peninjau untuk prompt persetujuan alat aplikasi ini. Menggantikan apps._default.approvals_reviewer.
apps.<id>.default_tools_approval_mode auto | prompt | writes | approve Perilaku persetujuan default untuk alat dalam aplikasi ini, kecuali terdapat penggantian per alat.
apps.<id>.default_tools_enabled boolean Status aktif default untuk alat dalam aplikasi ini, kecuali terdapat penggantian per alat.
apps.<id>.destructive_enabled boolean Mengizinkan atau memblokir alat dalam aplikasi ini yang mengiklankan destructive_hint = true.
apps.<id>.enabled boolean Mengaktifkan atau menonaktifkan aplikasi/konektor tertentu berdasarkan ID (default: true).
apps.<id>.open_world_enabled boolean Mengizinkan atau memblokir alat dalam aplikasi ini yang mengiklankan open_world_hint = true.
apps.<id>.tools.<tool>.approval_mode auto | prompt | writes | approve Penggantian perilaku persetujuan per alat untuk satu alat aplikasi.
apps.<id>.tools.<tool>.enabled boolean Penggantian status aktif per alat untuk suatu alat aplikasi (misalnya repos/list).
auto_review.policy string Instruksi kebijakan Markdown lokal untuk peninjauan otomatis. guardian_policy_config terkelola lebih diprioritaskan. Nilai kosong diabaikan.
background_terminal_max_timeout number Jendela polling maksimum dalam milidetik untuk polling write_stdin kosong (polling terminal latar belakang). Default: 300000 (5 menit). Menggantikan key background_terminal_timeout yang lebih lama.
browser_use.allow_history_access boolean Tetapkan ke false untuk membatasi akses riwayat browser. Persyaratan terkelola dapat memberlakukan pembatasan ini.
browser_use.default_origin_policy table Pembatasan origin browser cadangan. Mendukung access, uploads, downloads, dan full_cdp_access, yang masing-masing ditetapkan ke allow atau deny.
browser_use.origins.<origin> table Pembatasan browser per origin dengan bidang yang sama seperti browser_use.default_origin_policy. Sertakan skema HTTP atau HTTPS dan port opsional; jangan sertakan path, kueri, dan fragmen. Nilai lokal tidak dapat melonggarkan penolakan terkelola.
chatgpt_base_url string Mengganti URL dasar yang digunakan selama alur login ChatGPT.
check_for_update_on_startup boolean Memeriksa pembaruan Codex saat dimulai (tetapkan ke false hanya jika pembaruan dikelola secara terpusat).
cli_auth_credentials_store file | keyring | auto | ephemeral Mengontrol tempat CLI menyimpan kredensial dalam cache.
compact_prompt string Penggantian inline untuk prompt pemadatan riwayat.
computer_use.default_app_access allow | deny Kebijakan akses aplikasi native cadangan untuk Computer Use. Entri khusus aplikasi dapat menyediakan kebijakan; konfigurasi lokal tidak dapat melonggarkan pembatasan terkelola.
computer_use.macos.bundle_ids map<string, allow | deny> Akses aplikasi macOS native yang diidentifikasi berdasarkan pengenal bundle.
computer_use.windows.always_allowed_app_ids array<string> Pengenal aplikasi Windows yang dapat dibuka Computer Use tanpa meminta persetujuan. Aplikasi yang tidak ada dalam daftar memerlukan persetujuan; hapus entri tersimpan dari pengaturan Computer Use di aplikasi desktop ChatGPT.
computer_use.windows.aumids map<string, allow | deny> Akses aplikasi Windows terpaket yang diidentifikasi berdasarkan Application User Model ID (AUMID).
computer_use.windows.exes array<table> Aturan akses executable Windows. Setiap aturan memerlukan publisher_name, product_name, dan access (allow atau deny); binary_name bersifat opsional.
default_permissions string Nama profil izin default yang diterapkan pada pemanggilan alat dalam sandbox. Profil bawaan adalah :read-only, :workspace, dan :danger-full-access; nama profil kustom memerlukan tabel [permissions.&lt;name&gt;] yang sesuai. Jangan gabungkan dengan sandbox_mode atau [sandbox_workspace_write].
desktop.custom_file_handlers.<id> table Khusus tingkat pengguna. Menentukan target Buka di tambahan untuk aplikasi desktop ChatGPT. Lihat Menambahkan handler file kustom untuk contoh dan batasan ID handler.
desktop.custom_file_handlers.<id>.args array<string> Argumen yang disisipkan di antara perintah dan input file (default: []).
desktop.custom_file_handlers.<id>.command string Path executable atau nama perintah yang akan dideteksi dan diluncurkan. Wajib diisi.
desktop.custom_file_handlers.<id>.icon string Path aset yang disertakan, URL data:image/... berenkode Base64, URI file, atau path lokal absolut untuk ikon handler. Wajib diisi; sumber yang tidak didukung menggunakan ikon VS Code default.
desktop.custom_file_handlers.<id>.input path | json_argument | json_stdin Cara aplikasi mengirim input file ke handler (default: path).
desktop.custom_file_handlers.<id>.label string Nama tampilan yang ditampilkan dalam menu Buka di. Wajib diisi.
desktop.custom_file_handlers.<id>.supports_ssh boolean Menawarkan handler untuk file dalam workspace SSH (default: false).
developer_instructions string Instruksi developer tambahan yang dimasukkan ke dalam sesi (opsional).
disable_paste_burst boolean Menonaktifkan deteksi penempelan burst di TUI.
experimental_compact_prompt_file string (path) Memuat penggantian prompt pemadatan dari file (eksperimental).
experimental_use_unified_exec_tool boolean Nama lama untuk mengaktifkan exec terpadu; utamakan [features].unified_exec atau codex --enable unified_exec.
features.apps boolean Mengaktifkan integrasi aplikasi (konektor) (stabil; aktif secara default). Lalu lintas aplikasi dan konektor tidak dikontrol oleh proksi jaringan perintah dalam sandbox maupun daftar izin domainnya.
features.code_mode.direct_only_tool_namespaces array<string> Namespace alat yang hanya dapat digunakan mode kode melalui pemanggilan alat langsung.
features.code_mode.enabled boolean Mengaktifkan konfigurasi fitur mode kode. Fitur ini masih dikembangkan dan nonaktif secara default.
features.code_mode.excluded_tool_namespaces array<string> Namespace alat yang dikecualikan mode kode dari panduan alat mode kode bertingkat dan eksposur eksekutor.
features.context_management.experimental_mode boolean Mengaktifkan pengelolaan konteks eksperimental (nonaktif secara default). Alih-alih berulang kali memampatkan konteks menjadi satu ringkasan, fitur ini menggunakan catatan dan riwayat yang dapat dicari untuk mempertahankan detail yang terkumpul. Memerlukan login ChatGPT pada Plus, Pro, atau Pro Lite.
features.enable_request_compression boolean Memampatkan isi permintaan streaming dengan zstd jika didukung (stabil; aktif secara default).
features.fast_mode boolean Mengaktifkan pemilihan tingkat layanan katalog model di TUI, termasuk perintah tingkat Fast ketika model aktif mengiklankannya (stabil; aktif secara default).
features.goals boolean Mengaktifkan tujuan yang dipertahankan dan kelanjutan otomatis (stabil; aktif secara default).
features.hooks boolean Mengaktifkan hook siklus hidup yang dimuat dari hooks.json atau konfigurasi [hooks] inline. features.codex_hooks adalah alias yang sudah tidak digunakan lagi.
features.memories boolean Mengaktifkan Memori (nonaktif secara default).
features.multi_agent boolean Mengaktifkan alat kolaborasi multiagen (spawn_agent, send_input, resume_agent, wait_agent, dan close_agent) (stabil; aktif secara default).
features.network_proxy boolean | table Memulai proksi jaringan untuk perintah dalam sandbox (eksperimental; nonaktif secara default). Diperlukan untuk memberlakukan aturan domain profil izin, kecuali persyaratan experimental_network terkelola administrator yang aktif memulai proksi. Gunakan tabel saat menetapkan opsi kebijakan tingkat fitur seperti domains. Tidak memfilter pencarian web, aplikasi, MCP, atau alat terkelola lainnya.
features.network_proxy.allow_local_binding boolean Mengizinkan akses jaringan lokal/privat yang lebih luas. Nilai default-nya adalah false; aturan izin literal IP lokal persis atau localhost tetap dapat mengizinkan target lokal tertentu.
features.network_proxy.allow_upstream_proxy boolean Mengizinkan penerusan berantai melalui proksi upstream dari lingkungan. Nilai default-nya adalah true.
features.network_proxy.dangerously_allow_all_unix_sockets boolean Mengizinkan tujuan soket Unix apa pun, bukan hanya akses berdasarkan daftar izin. Nilai default-nya adalah false; gunakan hanya di lingkungan yang dikontrol ketat.
features.network_proxy.dangerously_allow_non_loopback_proxy boolean Mengizinkan alamat listener non-loopback. Nilai default-nya adalah false; mengaktifkannya dapat mengekspos listener proksi di luar localhost.
features.network_proxy.domains map<string, allow | deny> Kebijakan domain untuk jaringan dalam sandbox. Secara default tidak ditetapkan, yang berarti tujuan eksternal tidak diizinkan sampai Anda menambahkan aturan allow. Mendukung host persis, *.example.com hanya untuk subdomain, **.example.com untuk domain apex beserta subdomain, dan aturan izin * global; utamakan aturan yang cakupannya terbatas karena * membuka akses keluar publik secara luas. Tambahkan aturan deny untuk tujuan yang diblokir; deny lebih diprioritaskan jika terjadi konflik.
features.network_proxy.enable_socks5 boolean Mengekspos dukungan SOCKS5. Nilai default-nya adalah true.
features.network_proxy.enable_socks5_udp boolean Mengizinkan UDP melalui SOCKS5. Nilai default-nya adalah true.
features.network_proxy.enabled boolean Memulai proksi jaringan perintah dalam sandbox ketika akses jaringan perintah diaktifkan. Nilai default-nya adalah false; aturan domain profil izin tidak diberlakukan saat proksi nonaktif.
features.network_proxy.proxy_url string URL listener HTTP untuk jaringan dalam sandbox. Nilai default-nya adalah "http://127.0.0.1:3128".
features.network_proxy.socks_url string URL listener SOCKS5. Nilai default-nya adalah "http://127.0.0.1:8081".
features.network_proxy.unix_sockets map<string, allow | deny> Kebijakan soket Unix untuk jaringan dalam sandbox. Secara default tidak ditetapkan; tambahkan entri allow untuk soket yang diizinkan.
features.personality boolean Mengaktifkan kontrol pemilihan kepribadian (stabil; aktif secara default).
features.prevent_idle_sleep boolean Mencegah mesin memasuki mode tidur saat suatu giliran sedang aktif berjalan (eksperimental; nonaktif secara default).
features.remote_plugin boolean Mengaktifkan katalog plugin jarak jauh (stabil; aktif secara default).
features.rollout_budget.enabled boolean Mengaktifkan pelacakan anggaran rollout. Fitur ini masih dikembangkan dan nonaktif secara default. Jika diaktifkan, features.rollout_budget.limit_tokens wajib diisi.
features.rollout_budget.limit_tokens integer Batas token positif untuk pelacakan anggaran rollout. Wajib diisi saat anggaran rollout diaktifkan.
features.rollout_budget.prefill_token_weight number Pengali terbatas nonnegatif untuk token prefill dalam penghitungan anggaran rollout. Nilai default-nya adalah 1.0.
features.rollout_budget.reminder_interval_tokens integer Interval token positif antara pengingat anggaran rollout. Nilai default-nya adalah 10% dari limit_tokens, dengan minimum 1 token.
features.rollout_budget.sampling_token_weight number Pengali terbatas nonnegatif untuk token sampel dalam penghitungan anggaran rollout. Nilai default-nya adalah 1.0.
features.shell_snapshot boolean Membuat snapshot lingkungan shell untuk mempercepat perintah berulang (stabil; aktif secara default).
features.shell_tool boolean Mengaktifkan alat shell default untuk menjalankan perintah (stabil; aktif secara default).
features.skill_mcp_dependency_install boolean Mengizinkan permintaan dan pemasangan dependensi MCP yang belum tersedia untuk skill (stabil; aktif secara default).
features.unified_exec boolean Menggunakan alat exec terpadu yang didukung PTY (stabil; aktif secara default kecuali di Windows).
features.web_search boolean Toggle lama yang sudah tidak digunakan lagi; utamakan pengaturan tingkat teratas web_search.
features.web_search_cached boolean Toggle lama yang sudah tidak digunakan lagi. Jika web_search tidak ditetapkan, true dipetakan ke web_search = "cached".
features.web_search_request boolean Toggle lama yang sudah tidak digunakan lagi. Jika web_search tidak ditetapkan, true dipetakan ke web_search = "live".
feedback.enabled boolean Mengaktifkan pengiriman umpan balik melalui /feedback di seluruh klien lokal (default: true).
file_opener vscode | vscode-insiders | windsurf | cursor | none Skema URI yang digunakan untuk membuka sitasi dari output Codex (default: vscode).
forced_chatgpt_workspace_id string (uuid) Membatasi login ChatGPT pada pengenal workspace tertentu.
forced_login_method chatgpt | api Membatasi Codex agar hanya menggunakan metode autentikasi tertentu.
hide_agent_reasoning boolean Menyembunyikan peristiwa penalaran dalam TUI maupun output codex exec.
history.max_bytes number Jika ditetapkan, membatasi ukuran file riwayat dalam byte dengan menghapus entri terlama.
history.persistence save-all | none Mengontrol apakah Codex menyimpan transkrip sesi ke history.jsonl.
hooks table Hook siklus hidup yang dikonfigurasi secara inline dalam config.toml. Menggunakan skema peristiwa yang sama seperti hooks.json; lihat panduan Hooks untuk contoh dan peristiwa yang didukung.
hooks.<Event> array<table> Grup pencocok untuk peristiwa hook seperti PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit, Stop, atau Interrupt.
hooks.<Event>[].hooks array<table> Handler hook untuk grup pencocok. Hook perintah dan alat MCP didukung, sedangkan handler hook prompt dan agen diurai tetapi dilewati.
hooks.<Event>[].hooks[].additionalContextLimit integer Perkiraan ambang batas token per handler untuk menyimpan additionalContext yang terlalu besar ke disk dan menampilkan pratinjau yang lebih singkat kepada model. Nilai default-nya adalah 2500; 0 meneruskan konteks lengkap secara langsung ke model. Lihat Output hook berukuran besar.
hooks.<Event>[].hooks[].async boolean Menjalankan hook perintah di latar belakang tanpa menunda operasi pemicu. Nilai default-nya adalah false; SessionEnd selalu berjalan secara sinkron. Lihat Menjalankan hook di latar belakang.
hooks.<Event>[].hooks[].commandWindows string Penggantian perintah khusus Windows untuk hook perintah. Alias TOML command_windows juga diterima.
instructions string Dicadangkan untuk penggunaan mendatang; utamakan model_instructions_file atau AGENTS.md.
log_dir string (path) Direktori tempat Codex menulis file log; nilai default-nya adalah $CODEX_HOME/log. Menetapkan nilai ini secara eksplisit juga mengaktifkan log TUI teks biasa yang bersifat opsional, codex-tui.log, di direktori tersebut.
marketplaces.<name>.ref string Cabang, tag, atau commit Git opsional untuk marketplace.
marketplaces.<name>.source string Lokasi repositori Git atau direktori akar marketplace lokal. Gunakan jalur absolut untuk sumber lokal; direktori tersebut berisi .agents/plugins/marketplace.json.
marketplaces.<name>.source_type git | local Jenis sumber untuk marketplace plugin yang dikonfigurasi. Marketplace dapat didefinisikan dalam config.toml sistem, yang dikelola cloud, pengguna, atau proyek tepercaya.
marketplaces.<name>.sparse_paths array<string> Jalur sparse checkout opsional untuk marketplace Git. Sertakan katalog marketplace dan semua direktori plugin lokal yang dirujuknya.
mcp_oauth_callback_port integer Port tetap global opsional untuk server callback HTTP lokal yang digunakan saat login OAuth MCP. oauth.callback_port khusus server lebih diprioritaskan. Jika keduanya tidak ditetapkan, Codex melakukan binding ke port sementara yang dipilih OS.
mcp_oauth_callback_url string URL callback dasar opsional untuk login OAuth MCP, seperti URL ingress devbox. Klien baru yang telah didaftarkan sebelumnya menggunakan URL ini tanpa perubahan ketika server otorisasi mendukung identifikasi penerbit; klien lama tanpa callback tersimpan menambahkan ID callback khusus server. Tanpa dukungan penerbit, setiap server MCP yang telah didaftarkan sebelumnya dan callback terkonfigurasinya tidak memiliki ID yang diwajibkan akan beralih ke URL ini dengan ID tersebut ditambahkan. Port URL callback tidak menentukan port listener.
mcp_oauth_credentials_store auto | file | keyring Penyimpanan pilihan untuk kredensial OAuth MCP.
mcp_optional_startup_grace_ms integer (milliseconds) Waktu tunggu bersama untuk server MCP opsional saat membuat katalog alat awal. Nilai default-nya adalah 1000. Tetapkan ke 0 untuk menunggu startup_timeout_sec setiap server.
mcp_servers.<id>.args array<string> Argumen yang diteruskan ke perintah server MCP stdio.
mcp_servers.<id>.auth oauth | chatgpt Autentikasi cadangan untuk server HTTP MCP setelah token bearer dan header otorisasi yang dikonfigurasi. oauth (default) menggunakan kredensial OAuth MCP tersimpan jika tersedia. chatgpt menggunakan sesi ChatGPT saat ini untuk origin ChatGPT pihak pertama yang tepercaya, lalu beralih ke OAuth tersimpan. Kedua mode dapat terhubung tanpa autentikasi jika tidak ada sumber kredensial yang ditemukan.
mcp_servers.<id>.bearer_token_env_var string Variabel lingkungan yang menjadi sumber token bearer untuk server HTTP MCP.
mcp_servers.<id>.command string Perintah peluncur untuk server MCP stdio.
mcp_servers.<id>.cwd string Direktori kerja untuk proses server MCP stdio.
mcp_servers.<id>.default_tools_approval_mode auto | prompt | writes | approve Perilaku persetujuan default untuk alat MCP pada server ini, kecuali terdapat penggantian per alat.
mcp_servers.<id>.disabled_tools array<string> Daftar penolakan yang diterapkan setelah enabled_tools untuk server MCP.
mcp_servers.<id>.enabled boolean Menonaktifkan server MCP tanpa menghapus konfigurasinya.
mcp_servers.<id>.enabled_tools array<string> Daftar izin nama alat yang diekspos oleh server MCP.
mcp_servers.<id>.env map<string,string> Variabel lingkungan yang diteruskan ke server MCP stdio.
mcp_servers.<id>.env_http_headers map<string,string> Header HTTP yang diisi dari variabel lingkungan untuk server HTTP MCP.
mcp_servers.<id>.env_vars array<string | { name = string, source = "local" | "remote" }> Variabel lingkungan tambahan yang dimasukkan ke daftar izin untuk server MCP stdio. Entri string secara default menggunakan source = "local"; gunakan source = "remote" hanya dengan stdio jarak jauh yang didukung eksekutor.
mcp_servers.<id>.experimental_environment local | remote Penempatan eksperimental untuk server MCP. remote memulai server stdio melalui lingkungan eksekutor jarak jauh; penempatan jarak jauh untuk HTTP yang dapat melakukan streaming belum diterapkan.
mcp_servers.<id>.http_headers map<string,string> Header HTTP statis yang disertakan dalam setiap permintaan HTTP MCP.
mcp_servers.<id>.http_headers_helper string (command) Perintah lokal yang mencetak objek JSON berisi nama dan nilai header HTTP. Hanya didukung untuk server HTTP MCP yang terhubung secara lokal. Token bearer eksplisit dan kredensial OAuth lebih diprioritaskan daripada header Authorization yang disediakan helper.
mcp_servers.<id>.oauth_resource string Parameter resource OAuth RFC 8707 opsional yang disertakan saat login MCP.
mcp_servers.<id>.oauth.callback_port integer Port listener callback OAuth tetap untuk server MCP ini. Menggantikan mcp_oauth_callback_port. Untuk callback loopback langsung dengan port URL eksplisit, konfigurasikan port listener yang sama.
mcp_servers.<id>.oauth.callback_url string Callback OAuth khusus server. Klien yang telah didaftarkan sebelumnya menggunakannya kembali ketika identifikasi penerbit didukung atau URL sudah diakhiri dengan ID callback khusus server. Jika tidak, Codex menggunakan callback global atau default dengan ID tersebut ditambahkan. Klien tanpa ID yang telah didaftarkan sebelumnya menggunakan callback ini selama pendaftaran klien.
mcp_servers.<id>.oauth.client_id string ID klien OAuth yang telah didaftarkan sebelumnya untuk otorisasi dan pertukaran token dengan server MCP ini.
mcp_servers.<id>.required boolean Jika true, gagalkan proses mulai/melanjutkan apabila server MCP aktif ini tidak dapat diinisialisasi.
mcp_servers.<id>.scopes array<string> Cakupan OAuth yang diminta saat melakukan autentikasi ke server MCP tersebut.
mcp_servers.<id>.startup_timeout_ms number Alias untuk startup_timeout_sec dalam milidetik.
mcp_servers.<id>.startup_timeout_sec number Mengganti batas waktu mulai default 10 detik untuk server MCP.
mcp_servers.<id>.tool_timeout_sec number Mengganti batas waktu per alat default 60 detik untuk server MCP.
mcp_servers.<id>.tools.<tool>.approval_mode auto | prompt | writes | approve Penggantian perilaku persetujuan per alat untuk satu alat MCP pada server ini.
mcp_servers.<id>.tools.<tool>.output_token_limit integer (positive) Anggaran token untuk output satu alat MCP, sebelum alokasi serialisasi standar sebesar 20%. Menggantikan anggaran pemotongan output default model untuk alat tersebut.
mcp_servers.<id>.url string Endpoint untuk server HTTP MCP yang dapat melakukan streaming.
memories.consolidation_model string Penggantian model opsional untuk konsolidasi memori global.
memories.disable_on_external_context boolean Jika true, thread yang menggunakan konteks eksternal seperti pemanggilan alat MCP, pencarian web, atau pencarian alat tidak disertakan dalam pembuatan memori. Nilai default-nya adalah false. Alias lama: memories.no_memories_if_mcp_or_web_search.
memories.extract_model string Penggantian model opsional untuk ekstraksi memori per thread.
memories.generate_memories boolean Jika false, thread yang baru dibuat tidak disimpan sebagai input pembuatan memori. Nilai default-nya adalah true.
memories.max_raw_memories_for_consolidation number Jumlah maksimum memori mentah terbaru yang dipertahankan untuk konsolidasi global. Nilai default-nya adalah 256 dan dibatasi hingga 4096.
memories.max_rollout_age_days number Usia maksimum thread yang dipertimbangkan untuk pembuatan memori. Nilai default-nya adalah 30 dan dibatasi dalam rentang 0-90.
memories.max_rollouts_per_startup number Jumlah maksimum kandidat rollout yang diproses dalam setiap proses saat dimulai. Nilai default-nya adalah 16 dan dibatasi hingga 128.
memories.max_unused_days number Jumlah hari maksimum sejak memori terakhir digunakan sebelum tidak lagi memenuhi syarat untuk konsolidasi. Nilai default-nya adalah 30 dan dibatasi dalam rentang 0-365.
memories.min_rate_limit_remaining_percent number Persentase tersisa minimum yang diperlukan dalam jendela batas laju Codex sebelum pembuatan memori dimulai. Nilai default-nya adalah 25 dan dibatasi dalam rentang 0-100.
memories.min_rollout_idle_hours number Waktu menganggur minimum sebelum suatu thread dipertimbangkan untuk pembuatan memori. Nilai default-nya adalah 6 dan dibatasi dalam rentang 1-48.
memories.use_memories boolean Jika false, Codex tidak memasukkan memori yang ada ke sesi mendatang. Nilai default-nya adalah true.
model string Model yang akan digunakan (misalnya, gpt-5.6-sol).
model_auto_compact_token_limit number Ambang batas token yang memicu pemadatan riwayat otomatis (jika tidak ditetapkan, menggunakan nilai default model).
model_auto_compact_token_limit_scope total | body_after_prefix Mengontrol apakah ambang batas pemadatan otomatis menghitung seluruh konteks aktif (total, nilai default) atau hanya pertumbuhan setelah prefiks jendela pemadatan yang dipertahankan (body_after_prefix).
model_catalog_json string (path) Path opsional ke katalog model JSON yang dimuat saat dimulai. File profil $CODEX_HOME/profile-name.config.toml yang dipilih dapat mengganti nilai ini untuk setiap profil.
model_context_window number Token jendela konteks yang tersedia bagi model aktif.
model_instructions_file string (path) Pengganti instruksi bawaan sebagai alternatif untuk AGENTS.md.
model_provider string ID penyedia dari model_providers (default: openai).
model_providers.<id> table Definisi penyedia kustom. ID penyedia bawaan (openai, ollama, dan lmstudio) dicadangkan dan tidak dapat diganti.
model_providers.<id>.auth table Konfigurasi token bearer berbasis perintah untuk penyedia kustom. Jangan gabungkan dengan env_key, experimental_bearer_token, atau requires_openai_auth.
model_providers.<id>.auth.args array<string> Argumen yang diteruskan ke perintah token.
model_providers.<id>.auth.command string Perintah yang dijalankan ketika Codex memerlukan token bearer. Perintah harus mencetak token ke stdout.
model_providers.<id>.auth.cwd string (path) Direktori kerja untuk perintah token.
model_providers.<id>.auth.refresh_interval_ms number Seberapa sering Codex secara proaktif memperbarui token dalam milidetik (default: 300000). Tetapkan ke 0 agar hanya memperbarui setelah percobaan ulang autentikasi.
model_providers.<id>.auth.timeout_ms number Waktu eksekusi maksimum perintah token dalam milidetik (default: 5000).
model_providers.<id>.base_url string URL dasar API untuk penyedia model.
model_providers.<id>.env_http_headers map<string,string> Header HTTP yang diisi dari variabel lingkungan jika tersedia.
model_providers.<id>.env_key string Variabel lingkungan yang menyediakan API key penyedia.
model_providers.<id>.env_key_instructions string Panduan penyiapan opsional untuk API key penyedia.
model_providers.<id>.experimental_bearer_token string Token bearer langsung untuk penyedia (tidak disarankan; gunakan env_key).
model_providers.<id>.http_headers map<string,string> Header HTTP statis yang ditambahkan ke permintaan penyedia.
model_providers.<id>.name string Nama tampilan untuk penyedia model kustom.
model_providers.<id>.query_params map<string,string> Parameter kueri tambahan yang ditambahkan ke permintaan penyedia.
model_providers.<id>.request_max_retries number Jumlah percobaan ulang untuk permintaan HTTP ke penyedia (default: 4).
model_providers.<id>.requires_openai_auth boolean Penyedia menggunakan autentikasi OpenAI (nilai default-nya false).
model_providers.<id>.stream_idle_timeout_ms number Batas waktu menganggur untuk stream SSE dalam milidetik (default: 300000).
model_providers.<id>.stream_max_retries number Jumlah percobaan ulang untuk gangguan streaming SSE (default: 5).
model_providers.<id>.supports_standalone_web_search boolean Mengiklankan dukungan untuk endpoint pencarian web mandiri yang kompatibel (default: false). Pencarian mandiri masih dikembangkan dan nonaktif secara default; kompatibilitas penyedia saja tidak mengaktifkannya.
model_providers.<id>.supports_websockets boolean Menentukan apakah penyedia tersebut mendukung transport WebSocket Responses API.
model_providers.<id>.wire_api responses Protokol yang digunakan penyedia. responses adalah satu-satunya nilai yang didukung dan menjadi nilai default jika tidak dicantumkan.
model_providers.amazon-bedrock.aws.profile string Nama profil AWS yang digunakan oleh penyedia amazon-bedrock bawaan.
model_providers.amazon-bedrock.aws.region string Wilayah AWS yang digunakan oleh penyedia amazon-bedrock bawaan.
model_reasoning_effort minimal | low | medium | high | xhigh Menyesuaikan upaya penalaran untuk model yang didukung (khusus Responses API; xhigh bergantung pada model).
model_reasoning_summary auto | concise | detailed | none Memilih tingkat detail ringkasan penalaran atau menonaktifkan ringkasan sepenuhnya.
model_supports_reasoning_summaries boolean Memaksa Codex mengirim atau tidak mengirim metadata penalaran.
model_verbosity low | medium | high Penggantian tingkat detail GPT-5 Responses API opsional; jika tidak ditetapkan, nilai default model/preset yang dipilih akan digunakan.
notice.hide_full_access_warning boolean Melacak konfirmasi prompt peringatan akses penuh.
notice.hide_gpt-5.1-codex-max_migration_prompt boolean Melacak konfirmasi prompt migrasi gpt-5.1-codex-max.
notice.hide_gpt5_1_migration_prompt boolean Melacak konfirmasi prompt migrasi GPT-5.1.
notice.hide_rate_limit_model_nudge boolean Melacak pilihan untuk tidak menerima pengingat penggantian model terkait batas laju.
notice.hide_world_writable_warning boolean Melacak konfirmasi peringatan direktori Windows yang dapat ditulis oleh semua pengguna.
notice.model_migrations map<string,string> Melacak migrasi model yang telah dikonfirmasi sebagai pemetaan lama->baru.
notify array<string> Perintah yang dipanggil untuk notifikasi; menerima payload JSON dari Codex.
openai_base_url string Penggantian URL dasar untuk penyedia model openai bawaan.
oss_provider lmstudio | ollama Penyedia lokal default yang digunakan saat menjalankan dengan --oss (secara default akan meminta pilihan jika tidak ditetapkan).
otel.environment string Tag lingkungan yang diterapkan pada peristiwa OpenTelemetry yang dipancarkan (default: dev).
otel.exporter none | otlp-http | otlp-grpc Memilih pengekspor OpenTelemetry dan menyediakan metadata endpoint yang diperlukan.
otel.exporter.<id>.endpoint string Endpoint pengekspor untuk log OTEL.
otel.exporter.<id>.headers map<string,string> Header statis yang disertakan dalam permintaan pengekspor OTEL.
otel.exporter.<id>.protocol binary | json Protokol yang digunakan oleh pengekspor OTLP/HTTP.
otel.exporter.<id>.tls.ca-certificate string Path sertifikat CA untuk TLS pengekspor OTEL.
otel.exporter.<id>.tls.client-certificate string Path sertifikat klien untuk TLS pengekspor OTEL.
otel.exporter.<id>.tls.client-private-key string Path kunci privat klien untuk TLS pengekspor OTEL.
otel.log_user_prompt boolean Mengikutsertakan prompt pengguna mentah dalam ekspor log OpenTelemetry.
otel.metrics_exporter none | statsig | otlp-http | otlp-grpc Memilih pengekspor metrik OpenTelemetry (nilai default-nya adalah statsig).
otel.trace_exporter none | otlp-http | otlp-grpc Memilih pengekspor trace OpenTelemetry dan menyediakan metadata endpoint yang diperlukan.
otel.trace_exporter.<id>.endpoint string Endpoint pengekspor trace untuk log OTEL.
otel.trace_exporter.<id>.headers map<string,string> Header statis yang disertakan dalam permintaan pengekspor trace OTEL.
otel.trace_exporter.<id>.protocol binary | json Protokol yang digunakan oleh pengekspor trace OTLP/HTTP.
otel.trace_exporter.<id>.tls.ca-certificate string Path sertifikat CA untuk TLS pengekspor trace OTEL.
otel.trace_exporter.<id>.tls.client-certificate string Path sertifikat klien untuk TLS pengekspor trace OTEL.
otel.trace_exporter.<id>.tls.client-private-key string Path kunci privat klien untuk TLS pengekspor trace OTEL.
permissions.<name>.description string Deskripsi yang mudah dipahami manusia untuk profil bernama ini. Profil tidak mewarisi deskripsi induknya melalui extends.
permissions.<name>.extends string Profil induk opsional yang diterapkan sebelum profil bernama ini. Tetapkan ke profil bernama lain, :read-only, atau :workspace; :danger-full-access, induk yang tidak ditentukan, dan siklus akan ditolak.
permissions.<name>.filesystem table Profil izin sistem file bernama. Setiap key adalah path absolut atau token khusus seperti :minimal atau :workspace_roots.
permissions.<name>.filesystem.":workspace_roots".<subpath-or-glob> "read" | "write" | "deny" Akses sistem file dengan cakupan relatif terhadap setiap direktori akar ruang kerja yang berlaku. Gunakan "." untuk direktori akar itu sendiri; subjalur glob seperti "**/*.env" dapat menolak pembacaan dengan "deny".
permissions.<name>.filesystem.<path-or-glob> "read" | "write" | "deny" | table Memberikan akses langsung untuk path, pola glob, atau token khusus, atau membatasi cakupan entri bertingkat di bawah root tersebut. Gunakan "deny" untuk menolak pembacaan path yang cocok.
permissions.<name>.filesystem.glob_scan_max_depth number Kedalaman maksimum untuk memperluas pola glob penolakan baca pada platform yang membuat snapshot kecocokan sebelum sandbox dimulai. Harus setidaknya 1 jika ditetapkan.
permissions.<name>.network.allow_local_binding boolean Mengizinkan akses jaringan lokal/privat yang lebih luas melalui jaringan dalam sandbox. Aturan izin literal IP lokal persis atau localhost tetap dapat mengizinkan target lokal tertentu ketika nilai ini tetap false.
permissions.<name>.network.allow_upstream_proxy boolean Mengizinkan jaringan dalam sandbox diteruskan secara berantai melalui proksi upstream lain.
permissions.<name>.network.dangerously_allow_all_unix_sockets boolean Mengizinkan tujuan soket Unix apa pun, bukan kumpulan terbatas default. Gunakan hanya di lingkungan yang dikontrol ketat.
permissions.<name>.network.dangerously_allow_non_loopback_proxy boolean Mengizinkan alamat binding non-loopback untuk listener jaringan dalam sandbox. Mengaktifkannya dapat mengekspos listener di luar localhost.
permissions.<name>.network.domains table Aturan domain untuk perintah dalam sandbox. Hanya diberlakukan ketika features.network_proxy atau persyaratan jaringan terkelola administrator yang aktif mengaktifkan proksi. Mendukung host persis, *.example.com, **.example.com, dan aturan izin * global; deny lebih diprioritaskan. Tidak membatasi pencarian web, aplikasi, atau server MCP.
permissions.<name>.network.domains.<pattern> allow | deny Mengizinkan atau menolak host persis atau pola wildcard dengan cakupan seperti *.example.com atau **.example.com.
permissions.<name>.network.enable_socks5 boolean Mengekspos dukungan SOCKS5 saat profil izin ini mengaktifkan jaringan dalam sandbox.
permissions.<name>.network.enable_socks5_udp boolean Mengizinkan UDP melalui listener SOCKS5 ketika diaktifkan.
permissions.<name>.network.enabled boolean Mengaktifkan akses jaringan untuk perintah dalam profil izin ini. Tindakan ini tidak memulai proksi jaringan. Tanpa features.network_proxy atau persyaratan jaringan terkelola administrator yang aktif, akses jaringan perintah bersifat langsung dan aturan domain profil tidak diberlakukan.
permissions.<name>.network.mode limited | full Mode proksi jaringan yang digunakan untuk lalu lintas subproses.
permissions.<name>.network.proxy_url string URL listener HTTP yang digunakan saat profil izin ini mengaktifkan jaringan dalam sandbox.
permissions.<name>.network.socks_url string Endpoint proksi SOCKS5 yang digunakan oleh profil izin ini.
permissions.<name>.network.unix_sockets table Penggantian daftar izin soket Unix untuk jaringan dalam sandbox. Gunakan path soket sebagai key; allow menambahkan path, dan deny menolaknya.
permissions.<name>.network.unix_sockets.<path> allow | deny Menambahkan path soket Unix absolut ke daftar izin efektif dengan allow, atau menolaknya dengan deny. Entri yang ditolak tidak disertakan dalam daftar izin efektif.
permissions.<name>.workspace_roots table Root workspace yang ditentukan profil dan menerima aturan sistem file :workspace_roots bersama root workspace runtime sesi.
permissions.<name>.workspace_roots.<path> boolean Memasukkan path ke kumpulan root workspace profil ketika true. Entri yang dinonaktifkan tetap tidak aktif.
personality none | friendly | pragmatic Gaya komunikasi default untuk model yang mengiklankan supportsPersonality; dapat diganti per thread/giliran atau melalui /personality.
plan_mode_reasoning_effort none | minimal | low | medium | high | xhigh Penggantian penalaran khusus mode Rencana. Jika tidak ditetapkan, mode Rencana menggunakan nilai default preset bawaannya.
plugins.<plugin>.enabled boolean Mengaktifkan atau menonaktifkan plugin marketplace lokal menggunakan kunci plugin-name@marketplace-name. Dibaca dari konfigurasi gabungan yang berlaku; pengaturan proyek tepercaya dapat mengganti default pengguna, yang dikelola cloud, dan sistem. Penyegaran marketplace dapat memasang atau menyegarkan plugin yang dikonfigurasi meskipun dinonaktifkan. Ini tidak mengganti status pengaktifan yang dikelola ruang kerja.
plugins.<plugin>.mcp_servers.<server>.default_tools_approval_mode auto | prompt | writes | approve Perilaku persetujuan default untuk alat pada server MCP yang disediakan plugin.
plugins.<plugin>.mcp_servers.<server>.disabled_tools array<string> Daftar penolakan yang diterapkan setelah enabled_tools untuk server MCP yang disediakan plugin.
plugins.<plugin>.mcp_servers.<server>.enabled boolean Mengaktifkan atau menonaktifkan server MCP yang disertakan dalam plugin terpasang tanpa mengubah manifes plugin.
plugins.<plugin>.mcp_servers.<server>.enabled_tools array<string> Daftar izin alat yang diekspos dari server MCP yang disediakan plugin.
plugins.<plugin>.mcp_servers.<server>.tools.<tool>.approval_mode auto | prompt | writes | approve Penggantian perilaku persetujuan per alat untuk alat MCP yang disediakan plugin.
project_doc_fallback_filenames array<string> Nama file tambahan yang dicoba ketika AGENTS.md tidak tersedia.
project_doc_max_bytes number Jumlah byte maksimum yang dibaca dari AGENTS.md saat membuat instruksi proyek.
project_root_markers array<string> Daftar nama file penanda root proyek; digunakan saat mencari direktori induk untuk menemukan root proyek.
projects.<path>.trust_level string Menandai proyek atau worktree sebagai tepercaya atau tidak tepercaya ("trusted" | "untrusted"). Proyek yang tidak tepercaya melewati lapisan .codex/ dengan cakupan proyek, termasuk konfigurasi, hook, dan aturan lokal proyek.
review_model string Penggantian model opsional yang digunakan oleh /review (nilai default-nya adalah model sesi saat ini).
sandbox_mode read-only | workspace-write | danger-full-access Kebijakan sandbox untuk akses sistem file dan jaringan selama eksekusi perintah.
sandbox_workspace_write.exclude_slash_tmp boolean Mengecualikan /tmp dari root yang dapat ditulis dalam mode workspace-write.
sandbox_workspace_write.exclude_tmpdir_env_var boolean Mengecualikan $TMPDIR dari root yang dapat ditulis dalam mode workspace-write.
sandbox_workspace_write.network_access boolean Mengizinkan akses jaringan keluar di dalam sandbox workspace-write.
sandbox_workspace_write.writable_roots array<string> Root tambahan yang dapat ditulis ketika sandbox_mode = "workspace-write".
service_tier string Tingkat layanan pilihan untuk giliran baru. Gunakan fast atau tingkat lain yang diiklankan oleh model aktif; fast dipetakan ke nilai permintaan priority.
shell_environment_policy.exclude array<string> Pola pengecualian variabel lingkungan lama. Gunakan shell_environment_policy.filters untuk konfigurasi baru; jangan gabungkan kedua bentuk dalam lapisan yang sama.
shell_environment_policy.experimental_use_profile boolean Menggunakan profil shell pengguna saat membuat subproses.
shell_environment_policy.filters map<string, include | exclude> Filter pola variabel lingkungan kanonis yang tidak peka huruf besar-kecil. Entri include membuat daftar izin dan tidak dapat memulihkan nilai yang dikecualikan. Nilai eksplisit set diterapkan setelah pengecualian. Jangan gabungkan filter dengan array lama exclude atau include_only dalam lapisan yang sama.
shell_environment_policy.ignore_default_excludes boolean Mempertahankan variabel yang berisi KEY, SECRET, atau TOKEN sebelum filter lain dijalankan (default: true). Tetapkan ke false untuk menerapkan pengecualian otomatis berdasarkan nama rahasia.
shell_environment_policy.include_only array<string> Daftar izin pola variabel lingkungan lama. Gunakan shell_environment_policy.filters untuk konfigurasi baru; jangan gabungkan kedua bentuk dalam lapisan yang sama.
shell_environment_policy.inherit all | core | none Pewarisan lingkungan dasar saat membuat subproses.
shell_environment_policy.set map<string,string> Nilai lingkungan eksplisit yang dimasukkan setelah pengecualian; filter include tetap dapat menghapusnya.
show_raw_agent_reasoning boolean Menampilkan konten penalaran mentah ketika model aktif menghasilkannya.
skills.config array<object> Penggantian status aktif per skill yang disimpan dalam config.toml.
skills.config.<index>.enabled boolean Mengaktifkan atau menonaktifkan skill yang dirujuk.
skills.config.<index>.path string (path) Path ke folder skill yang berisi SKILL.md.
skills.max_context_tokens integer (positive) Anggaran token untuk katalog skill yang tersedia. Nilai default-nya adalah 2% dari jendela konteks model. Nilai eksplisit dibatasi hingga 10000 token.
sqlite_home string (path) Direktori tempat Codex menyimpan DB status berbasis SQLite yang digunakan oleh tugas agen dan status runtime lain yang dapat dilanjutkan.
suppress_unstable_features_warning boolean Menyembunyikan peringatan yang muncul saat flag fitur yang masih dikembangkan diaktifkan.
tool_output_token_limit number Anggaran token untuk menyimpan setiap output alat/fungsi dalam riwayat.
tool_suggest.disabled_tools array<table> Menonaktifkan saran untuk konektor atau plugin tertentu yang dapat ditemukan. Setiap entri menggunakan type = "connector" atau "plugin" serta sebuah id.
tool_suggest.discoverables array<table> Mengizinkan saran alat untuk konektor atau plugin tambahan yang dapat ditemukan. Setiap entri menggunakan type = "connector" atau "plugin" serta sebuah id.
tools.view_image boolean Mengaktifkan alat lampiran gambar lokal view_image.
tools.web_search boolean | { context_size = "low|medium|high", allowed_domains = [string], location = { country, region, city, timezone } } Konfigurasi alat pencarian web opsional. Bentuk objek dapat menetapkan ukuran konteks pencarian, domain pencarian yang diizinkan, dan perkiraan lokasi pengguna. Filter domain pencarian ini terpisah dari aturan domain jaringan perintah dalam sandbox dan tidak membatasi konektor atau server MCP.
tui table Opsi khusus TUI seperti mengaktifkan notifikasi desktop inline.
tui.alternate_screen auto | always | never Mengontrol penggunaan layar alternatif untuk TUI (default: auto; auto melewatinya di Zellij untuk mempertahankan scrollback).
tui.animations boolean Mengaktifkan animasi terminal (layar sambutan, shimmer, spinner) (default: true).
tui.keymap.<context>.<action> string | array<string> Binding pintasan keyboard untuk tindakan TUI. Konteks yang didukung meliputi global, chat, composer, editor, vim_normal, vim_operator, vim_text_object, pager, list, dan approval. Tindakan editor tertentu beralih ke binding tui.keymap.global yang sesuai sebagai cadangan; binding khusus konteks lebih diprioritaskan jika didukung.
tui.keymap.<context>.<action> = [] empty array Melepas binding tindakan dalam konteks keymap tersebut. Nama tombol menggunakan string yang dinormalisasi seperti ctrl-a, shift-enter, page-down, atau minus.
tui.model_availability_nux.<model> integer Status tooltip saat dimulai internal yang diidentifikasi berdasarkan slug model.
tui.notification_condition unfocused | always Mengontrol apakah notifikasi TUI hanya dipicu ketika terminal tidak memiliki fokus atau tetap dipicu tanpa memandang fokus. Nilai default-nya adalah unfocused.
tui.notification_method auto | osc9 | bel Metode notifikasi untuk notifikasi terminal (default: auto).
tui.notifications boolean | array<string> Mengaktifkan notifikasi TUI; secara opsional membatasinya pada jenis peristiwa tertentu.
tui.raw_output_mode boolean Memulai TUI dalam mode scrollback mentah agar pemilihan teks terminal lebih mudah disalin (default: false). Anda dapat mengubahnya dengan /raw atau binding tombol default alt-r.
tui.resume_cwd current | session Direktori kerja yang digunakan saat melanjutkan atau melakukan fork sesi. Jika tidak ditetapkan, Codex meminta Anda memilih jika direktori saat ini berbeda dari direktori tersimpan sesi.
tui.show_tooltips boolean Menampilkan tooltip orientasi pada layar sambutan TUI (default: true).
tui.status_line array<string> | null Daftar berurutan pengenal item baris status footer TUI. null menonaktifkan baris status.
tui.terminal_title array<string> | null Daftar berurutan pengenal item judul jendela/tab terminal. Nilai default-nya adalah ["spinner", "project"]; null menonaktifkan pembaruan judul.
tui.theme string Penggantian tema penyorotan sintaks (nama tema dalam kebab-case).
tui.vim_mode_default boolean Memulai editor dalam mode normal Vim, bukan mode insert (default: false). Anda tetap dapat mengubahnya per sesi dengan /vim.
web_search disabled | cached | indexed | live Mode pencarian web (default: "cached"; cached menggunakan indeks yang dikelola OpenAI tanpa akses web eksternal; indexed mengizinkan akses eksternal hanya jika disaring oleh indeks pencarian; jika Anda menggunakan --yolo atau pengaturan sandbox akses penuh lainnya, nilai default-nya adalah "live"). Gunakan "live" untuk pengambilan langsung tanpa batasan, atau "disabled" untuk menghapus alat.
windows_wsl_setup_acknowledged boolean Melacak konfirmasi orientasi Windows (khusus Windows).
windows.sandbox unelevated | elevated Mode sandbox native khusus Windows saat menjalankan Codex secara native di Windows.
windows.sandbox_private_desktop boolean Secara default, menjalankan proses anak terakhir yang berada dalam sandbox di desktop privat pada Windows native. Tetapkan false hanya untuk kompatibilitas dengan perilaku Winsta0\\Default yang lebih lama.

Anda dapat menemukan skema JSON terbaru untuk config.toml di sini.

Untuk mendapatkan pelengkapan otomatis dan diagnostik saat mengedit config.toml di VS Code atau Cursor, Anda dapat menginstal ekstensi Even Better TOML dan menambahkan baris ini di bagian atas config.toml Anda:

#:schema https://developers.openai.com/codex/config-schema.json

Catatan: Ganti nama experimental_instructions_file menjadi model_instructions_file. Codex menghentikan penggunaan kunci lama tersebut; perbarui konfigurasi yang ada agar menggunakan nama baru.

requirements.toml

requirements.toml adalah file konfigurasi yang diberlakukan oleh administrator dan membatasi pengaturan sensitif terhadap keamanan yang tidak dapat ditimpa oleh pengguna. Untuk detail, lokasi, dan contoh, lihat Persyaratan yang diberlakukan administrator.

Bagi pengguna ChatGPT Business dan Enterprise, Codex juga dapat menerapkan persyaratan yang diambil dari cloud. Lihat halaman keamanan untuk mengetahui detail urutan prioritas.

Gunakan [features] di requirements.toml untuk menetapkan flag fitur runtime berdasarkan kunci kanonis yang sama dengan yang digunakan config.toml. Persyaratan juga dapat mencakup kunci khusus aplikasi terdokumentasi yang tidak termasuk dalam config.toml. Kunci yang tidak dicantumkan tetap tidak dibatasi.

Beberapa persyaratan terkelola memberlakukan nilai konfigurasi yang persis sama, bukan daftar yang diizinkan. Pengguna tidak dapat menimpa jalur, preferensi pembaruan, kebijakan shell login, pengaturan umpan balik, atau pengaturan desktop privat Windows yang diberlakukan.

Daftar profil izin terkelola yang diizinkan memerlukan Codex 0.138.0 atau yang lebih baru. Codex 0.137.0 dan versi sebelumnya mengabaikan allowed_permission_profiles serta default_permissions terkelola.

Gunakan allowed_sandbox_modes bersama sandbox_mode. Untuk deployment profil izin, gunakan allowed_permission_profiles bersama default_permissions terkelola.

Entri untrusted dalam allowed_approval_policies tetap valid untuk perilaku persetujuan yang lebih ketat yang diterapkan Codex saat proyek menggunakan trust_level = "untrusted". Entri ini tidak mengizinkan pengaturan approval_policy = "untrusted" secara eksplisit.

Tabel [models.new_thread] menyediakan nilai default terkelola, bukan aturan yang wajib dipatuhi. Jika Anda secara eksplisit mengganti model atau upaya penalaran dengan --model, --config, atau --profile, Codex mengabaikan baik model maupun model_reasoning_effort dalam [models.new_thread]. service_tier bersifat independen.

Persyaratan browser mencakup tiga permukaan yang terpisah. in_app_browser mengontrol panel browser yang dibuka dan digunakan langsung oleh seseorang. browser_use mengontrol pekerjaan yang dijalankan agen di browser. computer_use mengontrol pekerjaan yang dijalankan agen di aplikasi desktop native.

Nilai kebijakan Browser Use dan Computer Use yang bersarang tidak memberikan akses dengan sendirinya. allow khusus origin atau aplikasi dapat menggantikan nilai fallback untuk sumber kebijakan yang sama, tetapi pemeriksaan fitur, persetujuan, dan kebijakan lainnya tetap berlaku. Jika persyaratan terkelola dan config.toml sama-sama berlaku, deny dari salah satunya akan diprioritaskan.

Kunci Tipe / nilai Detail
allow_appshots boolean Tetapkan ke false untuk menonaktifkan Appshots bagi pengguna terkelola. Jika tidak dicantumkan, Appshots tidak dibatasi oleh persyaratan dan mengikuti ketersediaan produk normal.
allow_browser_and_computer_use boolean Tetapkan ke false untuk memblokir Browser Use yang dijalankan agen dan Computer Use pada aplikasi native. Menetapkannya ke true atau tidak mencantumkannya tidak mengaktifkan kedua fitur tersebut; pemeriksaan fitur, kebijakan, dan persetujuan lainnya tetap berlaku.
allow_login_shell boolean Mewajibkan apakah alat shell dapat memulai shell login.
allow_managed_hooks_only boolean Jika true, Codex melewati hook pengguna, proyek, sesi, dan plugin, tetapi tetap mengizinkan hook terkelola dari requirements.toml dan lapisan konfigurasi terkelola lainnya.
allow_remote_control boolean Tetapkan ke false untuk menonaktifkan kendali jarak jauh perangkat bagi pengguna terkelola. Jika tidak dicantumkan, kendali jarak jauh perangkat tidak dibatasi oleh persyaratan dan mengikuti ketersediaan produk normal.
allowed_approval_policies array<string> Kebijakan persetujuan yang diizinkan, seperti on-request, never, dan granular. Sertakan untrusted untuk mengizinkan kebijakan yang lebih ketat yang diturunkan dari proyek tidak tepercaya; kebijakan ini tidak dapat dipilih langsung dengan approval_policy.
allowed_approvals_reviewers array<string> Nilai yang diizinkan untuk approvals_reviewer, seperti user dan auto_review.
allowed_chatgpt_workspaces array<string> Batasi login ChatGPT, termasuk token akses Codex, ke ID ruang kerja yang tercantum. Daftar kosong menonaktifkan login ChatGPT; autentikasi API tetap tersedia jika diizinkan. Tetapkan melalui file persyaratan sistem lokal atau MDM macOS; nilai yang dikelola melalui cloud diabaikan.
allowed_login_methods array<string> Izinkan chatgpt, api, atau keduanya. Jika tidak ditentukan, pengaturan ini tidak membatasi metode login. Jika ditetapkan, daftar harus memuat setidaknya satu metode. api mengizinkan autentikasi API, termasuk Amazon Bedrock. Tetapkan melalui file persyaratan sistem lokal atau MDM macOS. Nilai yang dikelola melalui cloud diabaikan.
allowed_permission_profiles table<boolean> Daftar lengkap profil izin yang diperbolehkan. Profil yang ditetapkan ke true diizinkan. Profil yang tidak dicantumkan atau ditetapkan ke false ditolak, termasuk profil yang ditambahkan dalam versi mendatang. Saat sumber persyaratan digabungkan, entri dicocokkan berdasarkan nama profil.
allowed_permission_profiles.<name> boolean Mengizinkan atau menolak profil izin bawaan atau khusus yang ditentukan dalam sumber konfigurasi atau persyaratan yang dimuat. Sumber persyaratan berikutnya yang berprioritas lebih tinggi dapat menggunakan false untuk menonaktifkan profil yang diizinkan oleh sumber sebelumnya yang berprioritas lebih rendah.
allowed_sandbox_modes array<string> Nilai yang diizinkan untuk sandbox_mode.
allowed_web_search_modes array<string> Nilai yang diizinkan untuk web_search (disabled, cached, indexed, live). disabled selalu diizinkan; daftar kosong secara efektif hanya mengizinkan disabled.
apps table Persyaratan aplikasi terkelola yang menggunakan pengidentifikasi aplikasi sebagai kunci. Persyaratan dapat menonaktifkan aplikasi atau membatasi perilaku persetujuan untuk setiap alat.
apps.<id>.enabled boolean Tetapkan ke false untuk menonaktifkan aplikasi. Persyaratan yang menonaktifkan tetap bersifat membatasi saat beberapa sumber persyaratan digabungkan.
apps.<id>.tools.<tool>.approval_mode auto | prompt | writes | approve Menetapkan mode persetujuan terkelola untuk satu alat aplikasi.
browser_use table Persyaratan terkelola untuk Browser Use yang dijalankan agen.
browser_use.allow_global_persistent_approval boolean Tetapkan ke false untuk mencegah Browser Use membuat atau mematuhi persetujuan Always allow yang mencakup setiap situs, seperti mengizinkan unduhan dari situs mana pun. Persetujuan tersimpan yang sudah ada diabaikan, bukan dihapus. Menetapkannya ke true atau tidak mencantumkannya tidak membuat persetujuan.
browser_use.allow_history_access boolean Tetapkan ke false untuk mencegah Browser Use membaca riwayat browser. Menetapkannya ke true atau tidak mencantumkannya mempertahankan pengaturan riwayat dan pemeriksaan ketersediaan normal.
browser_use.default_origin_policy table Fallback untuk setiap pengaturan Browser Use jika tidak ada entri yang cocok di bawah browser_use.origins yang menentukannya. Aturan origin yang cocok menggantikan fallback untuk sumber tersebut. Codex kemudian menerapkan hasil yang lebih ketat dari persyaratan terkelola dan konfigurasi pengguna.
browser_use.default_origin_policy.access allow | deny Gunakan deny untuk memblokir Browser Use pada origin yang menggunakan fallback. Origin yang ditolak juga memblokir unggahan, unduhan, akses debugging browser penuh, dan peninjauan otomatis di sana. allow hanya memungkinkan pemeriksaan persetujuan dan kebijakan normal berlanjut.
browser_use.default_origin_policy.access_approval_lifetime turn | thread Menetapkan durasi persetujuan akses situs nonpersisten: turn membatasinya pada giliran saat ini, sedangkan thread mempertahankannya selama sisa thread saat ini. persistent_approval secara terpisah mengendalikan apakah Always allow tersedia. Default produknya adalah thread.
browser_use.default_origin_policy.auto_review allow | deny Gunakan deny untuk melewati peninjauan otomatis pada origin yang menggunakan fallback dan sebagai gantinya meminta persetujuan pengguna. allow membuat peninjauan otomatis tetap tersedia ketika pengaturan lainnya mengizinkannya.
browser_use.default_origin_policy.downloads allow | deny Gunakan deny untuk memblokir unduhan Browser Use pada origin yang menggunakan fallback. allow hanya memungkinkan pemeriksaan persetujuan dan kebijakan normal berlanjut.
browser_use.default_origin_policy.full_cdp_access allow | deny Gunakan deny untuk memblokir akses penuh Chrome DevTools Protocol (CDP) pada origin yang menggunakan fallback. allow hanya memungkinkan pemeriksaan keikutsertaan dan persetujuan normal berlanjut.
browser_use.default_origin_policy.persistent_approval boolean Tetapkan ke false untuk mencegah Browser Use menyimpan atau mematuhi persetujuan Always allow pada origin yang menggunakan fallback. Persetujuan untuk giliran atau thread saat ini tetap dapat berlaku. true membuat Always allow tersedia jika diizinkan, tetapi tidak membuat persetujuan.
browser_use.default_origin_policy.uploads allow | deny Gunakan deny untuk memblokir unggahan Browser Use pada origin yang menggunakan fallback. allow hanya memungkinkan pemeriksaan persetujuan dan kebijakan normal berlanjut.
browser_use.disable_auto_review boolean Tetapkan ke true untuk melewati peninjauan otomatis bagi Browser Use dan sebagai gantinya meminta persetujuan pengguna. Menetapkannya ke false atau tidak mencantumkannya membuat peninjauan otomatis tetap tersedia ketika pengaturan lainnya mengizinkannya.
browser_use.origins map<string, table> Kebijakan Browser Use khusus origin. Kunci menggunakan &lt;scheme&gt;://&lt;host-pattern&gt;[:&lt;port&gt;] dengan http atau https. Gunakan host yang persis, *.example.com hanya untuk subdomain, atau **.example.com untuk domain dasar beserta subdomainnya. Wildcard * lainnya dapat mencakup titik, sehingga region*.example.com juga cocok dengan region.api.example.com; host * cocok dengan setiap host untuk skema tersebut. Skema dan port nondefault diperhitungkan; port default eksplisit dihapus saat normalisasi. Path, kueri, nama pengguna atau kata sandi tersemat, serta skema atau port wildcard tidak valid. Apit pola dengan tanda kutip dalam TOML, misalnya [browser_use.origins."https://**.example.com"].
browser_use.origins.<pattern> table Kebijakan untuk origin yang cocok dengan pola ini. Jika beberapa pola cocok, Codex menggunakan nilai yang paling membatasi untuk setiap kemampuan: deny mengalahkan allow, false mengalahkan true, dan turn mengalahkan thread.
browser_use.origins.<pattern>.access allow | deny Gunakan deny untuk memblokir Browser Use pada origin yang cocok. Penolakan juga memblokir unggahan, unduhan, akses debugging browser penuh, dan peninjauan otomatis di sana. allow hanya memungkinkan pemeriksaan persetujuan dan kebijakan normal berlanjut.
browser_use.origins.<pattern>.access_approval_lifetime turn | thread Menetapkan durasi persetujuan akses situs nonpersisten untuk origin yang cocok: turn membatasinya pada giliran saat ini, sedangkan thread mempertahankannya selama sisa thread saat ini. persistent_approval secara terpisah mengendalikan apakah Always allow tersedia.
browser_use.origins.<pattern>.auto_review allow | deny Gunakan deny untuk melewati peninjauan otomatis pada origin yang cocok dan sebagai gantinya meminta persetujuan pengguna. allow membuat peninjauan otomatis tetap tersedia ketika pengaturan lainnya mengizinkannya.
browser_use.origins.<pattern>.downloads allow | deny Gunakan deny untuk memblokir unduhan Browser Use pada origin yang cocok. allow hanya memungkinkan pemeriksaan persetujuan dan kebijakan normal berlanjut.
browser_use.origins.<pattern>.full_cdp_access allow | deny Gunakan deny untuk memblokir akses penuh Chrome DevTools Protocol (CDP) pada origin yang cocok. allow hanya memungkinkan pemeriksaan keikutsertaan dan persetujuan normal berlanjut.
browser_use.origins.<pattern>.persistent_approval boolean Tetapkan ke false untuk mencegah Browser Use menyimpan atau mematuhi persetujuan Always allow pada origin yang cocok. Persetujuan untuk giliran atau thread saat ini tetap dapat berlaku. true membuat Always allow tersedia jika diizinkan, tetapi tidak membuat persetujuan.
browser_use.origins.<pattern>.uploads allow | deny Gunakan deny untuk memblokir unggahan Browser Use pada origin yang cocok. allow hanya memungkinkan pemeriksaan persetujuan dan kebijakan normal berlanjut.
chatgpt_base_url string Tetapkan URL dasar layanan ChatGPT sebelum autentikasi dan pengambilan kebijakan cloud. Pengaturan ini tidak mengonfigurasi semua tujuan jaringan Codex. Tetapkan melalui file persyaratan sistem lokal atau MDM macOS; nilai yang dikelola melalui cloud diabaikan.
check_for_update_on_startup boolean Mewajibkan apakah Codex memeriksa pembaruan saat dimulai.
cli_auth_credentials_store file | keyring | auto | ephemeral Tetapkan penyimpanan kredensial CLI sebelum autentikasi dimuat. file menggunakan CODEX_HOME/auth.json; keyring mewajibkan penyimpanan kredensial OS; auto beralih ke file jika penyimpanan kredensial tidak tersedia; ephemeral menyimpan kredensial di memori untuk proses saat ini. Tetapkan melalui file persyaratan sistem lokal atau MDM macOS; nilai yang dikelola melalui cloud diabaikan.
computer_use table Persyaratan terkelola untuk pekerjaan yang dijalankan agen dalam aplikasi desktop native. Aturan aplikasi terkelola dan aturan aplikasi config.toml sama-sama diberlakukan; aplikasi harus diizinkan oleh setiap sumber kebijakan.
computer_use.allow_locked_computer_use boolean Tetapkan ke false untuk mencegah pengguna mengaktifkan Locked Use pada perangkat macOS terkelola. Persyaratan ini menghapus kontrol pengaktifan; persyaratan ini tidak menonaktifkan Locked Use jika sudah aktif. Jika tidak dicantumkan, ketersediaan produk normal berlaku.
computer_use.allow_persistent_approval boolean Tetapkan ke false untuk menghapus opsi menyimpan persetujuan aplikasi lintas sesi. Persetujuan untuk sesi saat ini tetap tersedia. Menetapkannya ke true atau tidak mencantumkannya tidak menyetujui aplikasi.
computer_use.default_app_access allow | deny Akses fallback untuk aplikasi native yang tidak cocok dengan aturan khusus platform. deny memblokir akses. allow hanya memungkinkan pemeriksaan persetujuan dan kebijakan normal berlanjut. Default produknya adalah allow.
computer_use.macos table Aturan aplikasi Computer Use untuk macOS.
computer_use.macos.bundle_ids map<string, allow | deny> Memetakan pengidentifikasi bundle macOS yang persis ke allow atau deny. Aturan yang cocok menggantikan computer_use.default_app_access dalam sumber kebijakan yang sama. Penolakan dari persyaratan terkelola atau konfigurasi pengguna tetap memblokir akses.
computer_use.macos.bundle_ids.<bundle-id> allow | deny Gunakan deny untuk memblokir pengidentifikasi bundle yang persis. allow hanya menggantikan default sumber kebijakan ini dan tetap mengharuskan sumber kebijakan lainnya serta alur persetujuan normal mengizinkan aplikasi.
computer_use.windows table Aturan aplikasi Computer Use untuk aplikasi Windows terpaket dan tanpa paket.
computer_use.windows.aumids map<string, allow | deny> Memetakan Application User Model IDs (AUMIDs) yang persis dan terdaftar untuk aplikasi terpaket bertanda tangan ke allow atau deny. Aturan yang cocok menggantikan computer_use.default_app_access dalam sumber kebijakan yang sama.
computer_use.windows.aumids.<aumid> allow | deny Gunakan deny untuk memblokir identitas aplikasi terpaket yang persis. allow hanya menggantikan default sumber kebijakan ini dan tetap mengharuskan sumber kebijakan lainnya serta alur persetujuan normal mengizinkan aplikasi.
computer_use.windows.exes array<table> Aturan untuk executable Windows tanpa paket yang bertanda tangan. Aturan mencocokkan penerbit terverifikasi dan informasi versi bertanda tangan milik executable, bukan path atau nama filenya saat ini. Penolakan yang cocok lebih diprioritaskan daripada izin yang cocok. Executable tanpa tanda tangan menggunakan computer_use.default_app_access; executable yang identitas bertanda tangannya tidak dapat diverifikasi secara tegas akan diblokir.
computer_use.windows.exes[].access allow | deny Keputusan akses wajib untuk executable yang cocok. deny memblokir akses. allow hanya menggantikan default sumber kebijakan ini dan tetap mengharuskan sumber kebijakan lainnya serta alur persetujuan normal mengizinkan aplikasi.
computer_use.windows.exes[].binary_name string OriginalFilename opsional dari informasi versi bertanda tangan milik executable. Pencocokan tidak peka huruf besar-kecil. Jika aturan penerbit dan produk yang cocok mewajibkan nilai ini tetapi executable tidak menyediakannya, Computer Use memblokir executable tersebut.
computer_use.windows.exes[].product_name string ProductName persis yang wajib diambil dari informasi versi bertanda tangan milik executable.
computer_use.windows.exes[].publisher_name string Nama penerbit persis yang wajib diambil dari sertifikat penandatanganan tepercaya milik executable, yang diformat sebagai nama khusus Windows X.500.
default_permissions string Profil izin default terkelola. Profil tersebut harus diizinkan oleh allowed_permission_profiles. Tetapkan ini secara eksplisit agar perilakunya dapat diprediksi; jika tidak dicantumkan, Codex menggunakan :workspace secara default hanya jika :workspace dan :read-only keduanya diizinkan secara eksplisit.
enforce_residency string Mengharuskan lalu lintas layanan Codex menggunakan residensi data yang didukung. Saat ini menerima us.
experimental_network table Persyaratan jaringan yang dikelola administrator untuk perintah lokal dalam sandbox, yang diberlakukan dari requirements.toml. Jika diaktifkan, persyaratan ini dapat memulai proxy jaringan perintah tanpa features.network_proxy. Alat browser secara terpisah memeriksa penolakan jaringan terkelola dan daftar izin eksklusif. Persyaratan ini tidak merutekan lalu lintas browser melalui proxy atau mengendalikan pencarian web, aplikasi, server MCP, lalu lintas aplikasi native, maupun jaringan cloud Codex.
experimental_network.allow_local_binding boolean Mengizinkan akses jaringan lokal/privat yang lebih luas untuk jaringan dalam sandbox. Literal IP lokal yang persis atau aturan izin localhost tetap dapat mengizinkan target lokal tertentu saat pengaturan ini tetap false.
experimental_network.allow_upstream_proxy boolean Mengizinkan jaringan dalam sandbox dirangkai melalui proxy upstream dari lingkungan.
experimental_network.allowed_domains array<string> Aturan izin administrator untuk jaringan perintah dalam sandbox saat proxy jaringan terkelola diaktifkan. Aturan ini tidak berlaku untuk pencarian web, aplikasi, atau server MCP. Jangan gabungkan ini dengan experimental_network.domains.
experimental_network.dangerously_allow_all_unix_sockets boolean Mengizinkan tujuan soket Unix apa pun, bukan hanya akses dalam daftar izin. Gunakan hanya di lingkungan yang dikendalikan secara ketat.
experimental_network.dangerously_allow_non_loopback_proxy boolean Mengizinkan alamat listener non-loopback untuk persyaratan [experimental_network]. Mengaktifkannya dapat mengekspos listener di luar localhost.
experimental_network.denied_domains array<string> Aturan penolakan administrator berbentuk daftar untuk jaringan dalam sandbox. Jangan gabungkan ini dengan experimental_network.domains.
experimental_network.domains map<string, allow | deny> Kebijakan domain berbentuk peta yang dikelola administrator untuk jaringan dalam sandbox. Mendukung host yang persis, *.example.com hanya untuk subdomain, **.example.com untuk domain apex beserta subdomain, dan aturan izin global *; utamakan aturan terbatas karena * membuka akses keluar publik secara luas. deny menang jika terjadi konflik. Jangan gabungkan ini dengan experimental_network.allowed_domains atau experimental_network.denied_domains.
experimental_network.enabled boolean Mengaktifkan persyaratan jaringan dalam sandbox. Ini tidak memberikan akses jaringan jika sandbox aktif tetap menonaktifkan jaringan perintah.
experimental_network.http_port integer Port listener HTTP loopback yang digunakan untuk persyaratan [experimental_network].
experimental_network.managed_allowed_domains_only boolean Jika true, hanya aturan izin yang dikelola administrator yang tetap berlaku saat persyaratan jaringan dalam sandbox aktif; penambahan daftar izin oleh pengguna diabaikan. Tanpa aturan izin terkelola, aturan izin domain yang ditambahkan pengguna tidak tetap berlaku.
experimental_network.socks_port integer Port listener SOCKS5 loopback yang digunakan untuk persyaratan [experimental_network].
experimental_network.unix_sockets map<string, allow | deny> Kebijakan soket Unix yang dikelola administrator untuk jaringan dalam sandbox.
features table Nilai fitur yang dipatok. Gunakan nama kanonis dari config.toml untuk fitur runtime; kunci persyaratan khusus aplikasi yang terdokumentasi juga didukung di sini.
features.<name> boolean Mengharuskan fitur runtime atau aplikasi yang terdokumentasi tetap aktif atau nonaktif.
features.apps boolean Mematok ketersediaan integrasi Apps menjadi aktif atau nonaktif bagi pengguna terkelola.
features.browser_use boolean Tetapkan ke false dalam requirements.toml untuk menonaktifkan Browser Use yang dijalankan agen.
features.browser_use_external boolean Tetapkan ke false dalam requirements.toml untuk mencegah Codex mengoperasikan browser yang didukung melalui ekstensi browser ChatGPT, termasuk tab yang sudah ada dan sesi yang sudah login.
features.browser_use_full_cdp_access boolean Tetapkan ke false dalam requirements.toml untuk menonaktifkan akses penuh Chrome DevTools Protocol dalam runtime lokal, termasuk mode Browser Developer, dan mencegah aplikasi desktop ChatGPT mengaktifkan pengaturan terkait. Jika tidak dicantumkan, ketersediaan produk normal berlaku.
features.computer_use boolean Tetapkan ke false dalam requirements.toml untuk menonaktifkan Computer Use, Record & Replay, serta alur penginstalan atau pengaktifan terkait.
features.fast_mode boolean Mematok fitur kanonis fast_mode menjadi aktif atau nonaktif bagi pengguna terkelola.
features.guardian_approval boolean Mematok ketersediaan persetujuan Guardian menjadi aktif atau nonaktif bagi pengguna terkelola.
features.in_app_browser boolean Tetapkan ke false dalam requirements.toml untuk menonaktifkan panel browser bawaan yang dibuka dan dikendalikan langsung oleh pengguna.
features.in_app_updates boolean Tetapkan ke false dalam requirements.toml untuk menonaktifkan pembaruan dalam aplikasi. Pembaruan tetap aktif secara default jika persyaratan ini tidak dicantumkan.
features.memories boolean Mematok ketersediaan Memories menjadi aktif atau nonaktif bagi pengguna terkelola.
features.multi_agent boolean Mematok ketersediaan multi-agent menjadi aktif atau nonaktif bagi pengguna terkelola.
features.plugin_sharing boolean Tetapkan ke false dalam requirements.toml yang dikelola di cloud untuk menonaktifkan berbagi ruang kerja bagi plugin yang dibuat secara lokal.
features.plugins boolean Mematok ketersediaan plugin menjadi aktif atau nonaktif bagi pengguna terkelola.
features.remote_plugin boolean Mematok ketersediaan katalog plugin jarak jauh menjadi aktif atau nonaktif bagi pengguna terkelola.
features.workspace_dependencies boolean Mematok ketersediaan runtime dependensi ruang kerja yang dibundel menjadi aktif atau nonaktif bagi pengguna terkelola.
feedback table Pengaturan umpan balik terkelola.
feedback.enabled boolean Mewajibkan apakah pengguna dapat mengirimkan umpan balik melalui berbagai klien Codex.
guardian_policy_config string Instruksi kebijakan Markdown terkelola untuk peninjauan otomatis. Pengaturan ini lebih diprioritaskan daripada [auto_review].policy lokal. Nilai kosong diabaikan.
hooks table Hook siklus hidup terkelola yang diwajibkan administrator. Memerlukan direktori hook terkelola dan menggunakan skema peristiwa yang sama dengan [hooks] sebaris dalam config.toml.
hooks.<Event> array<table> Grup pencocok untuk peristiwa hook seperti PreToolUse, PermissionRequest, PostToolUse, PreCompact, PostCompact, SessionStart, SessionEnd, SubagentStart, SubagentStop, UserPromptSubmit, atau Stop.
hooks.<Event>[].hooks array<table> Handler hook untuk grup pencocok. Hook perintah dan alat MCP didukung, sedangkan handler hook prompt dan agen diurai tetapi dilewati.
hooks.<Event>[].hooks[].additionalContextLimit integer Ambang token perkiraan per handler untuk menyimpan additionalContext yang terlalu besar ke disk dan menampilkan pratinjau yang lebih singkat kepada model. Default-nya 2500; 0 meneruskan konteks lengkap langsung ke model. Lihat Output hook berukuran besar.
hooks.<Event>[].hooks[].async boolean Menjalankan hook perintah di latar belakang tanpa menunda operasi pemicu. Default-nya false; SessionEnd selalu berjalan secara sinkron. Lihat Menjalankan hook di latar belakang.
hooks.<Event>[].hooks[].commandWindows string Penggantian perintah khusus Windows untuk hook perintah. Alias TOML command_windows juga diterima.
hooks.managed_dir string (absolute path) Direktori yang berisi skrip hook terkelola pada macOS dan Linux. Codex memvalidasi bahwa path tersebut absolut dan ada sebelum memuat hook terkelola.
hooks.windows_managed_dir string (absolute path) Direktori yang berisi skrip hook terkelola pada Windows. Codex memvalidasi bahwa path tersebut absolut dan ada sebelum memuat hook terkelola.
in_app_browser table Persyaratan untuk panel browser bawaan. Pengaturan ini tidak mengendalikan Browser Use yang dijalankan agen.
in_app_browser.allow_external_browser_settings_import boolean Tetapkan ke false untuk mencegah pengguna mengimpor pengaturan atau data penelusuran dari browser eksternal ke browser bawaan. Menetapkannya ke true atau tidak mencantumkannya membuat impor tetap tersedia ketika pemeriksaan produk lainnya mengizinkannya. Ini adalah pengaturan khusus terkelola tanpa penggantian config.toml.
log_dir string (path) Mewajibkan direktori tempat Codex menulis file log lokal.
marketplaces table Persyaratan administrator untuk sumber marketplace plugin. Aturan berlaku ketika restrict_to_allowed_sources bernilai true.
marketplaces.allowed_sources table Sumber marketplace yang diizinkan dan menggunakan nama aturan pilihan administrator sebagai kunci. Nama yang berbeda terakumulasi di seluruh lapisan persyaratan; bidang dengan nama yang sama menggunakan prioritas lapisan normal.
marketplaces.allowed_sources.<name> table Satu aturan sumber yang diizinkan. Nilai akhir source setelah penggabungan persyaratan menentukan bidang sejajar yang ditafsirkan Codex.
marketplaces.allowed_sources.<name>.host_pattern string Ekspresi reguler yang wajib saat source = "host_pattern". Codex mencocokkannya dengan nama host huruf kecil yang diurai dari sumber Git bergaya HTTPS, SSH, atau SCP. Gunakan ^ dan $ untuk mewajibkan kecocokan seluruh host.
marketplaces.allowed_sources.<name>.path string (absolute path) Direktori marketplace lokal yang wajib saat source = "local". Codex mewajibkan path absolut dan membandingkan path setelah normalisasi.
marketplaces.allowed_sources.<name>.ref string Ref Git persis yang bersifat opsional untuk aturan git. Jika tidak dicantumkan, aturan mengizinkan ref apa pun untuk repositori yang cocok.
marketplaces.allowed_sources.<name>.source git | host_pattern | local Jenis pencocok sumber marketplace. Gunakan git untuk satu repositori, host_pattern untuk host Git yang dicocokkan dengan ekspresi reguler, atau local untuk satu direktori.
marketplaces.allowed_sources.<name>.url string URL repositori Git yang wajib saat source = "git". Codex menormalisasi URL yang dikonfigurasi dan diizinkan sebelum mewajibkan kecocokan repositori yang persis.
marketplaces.restrict_to_allowed_sources boolean Jika true, wajibkan sumber marketplace yang dikonfigurasi cocok dengan allowed_sources untuk penambahan marketplace, penginstalan plugin, penyegaran, dan pemuatan runtime. Katalog Git yang dikurasi OpenAI, termasuk katalog API key, juga harus cocok dengan daftar izin. Plugin ruang kerja yang dibundel dan diinstal dari jarak jauh terpisah dari kebijakan sumber Git terkurasi ini.
mcp_servers table Daftar izin server MCP yang dapat diaktifkan. Nama server (&lt;id&gt;) dan identitasnya harus sama-sama cocok agar server MCP dapat diaktifkan. Setiap server MCP terkonfigurasi yang tidak ada dalam daftar izin (atau memiliki identitas yang tidak cocok) akan dinonaktifkan.
mcp_servers.<id>.identity table Aturan identitas untuk satu server MCP. Tetapkan command (stdio) atau url (HTTP yang dapat dialirkan).
mcp_servers.<id>.identity.command string | table Mengizinkan server MCP stdio berdasarkan string perintah yang persis, atau menggunakan tabel pencocok untuk mewajibkan executable yang persis dan pencocok argumen yang berurutan. Bentuk string tidak memeriksa argumen, cwd, env, atau env_vars.
mcp_servers.<id>.identity.command.args array<table> Pencocok argumen berurutan untuk server stdio. Daftar argumen terkonfigurasi harus memiliki panjang yang sama dan setiap posisinya harus cocok. Pencocok perintah tidak memeriksa cwd, env, atau env_vars.
mcp_servers.<id>.identity.command.args[].expression string Ekspresi reguler yang digunakan oleh pencocok argumen regex. Ekspresi harus valid dan cocok dengan keseluruhan nilai argumen.
mcp_servers.<id>.identity.command.args[].match exact | prefix | regex Operasi pencocokan untuk posisi argumen ini.
mcp_servers.<id>.identity.command.args[].value string Nilai yang digunakan oleh pencocok argumen exact atau prefix.
mcp_servers.<id>.identity.command.executable string Executable yang harus sama persis dengan command terkonfigurasi milik server stdio.
mcp_servers.<id>.identity.url string | table Mengizinkan server MCP HTTP yang dapat dialirkan berdasarkan string URL yang persis, atau menggunakan tabel pencocok nilai exact, prefix, atau regex.
mcp_servers.<id>.identity.url.expression string Ekspresi reguler yang digunakan oleh pencocok URL regex. Ekspresi harus valid dan cocok dengan keseluruhan nilai URL.
mcp_servers.<id>.identity.url.match exact | prefix | regex Operasi pencocokan untuk URL server MCP yang dikonfigurasi.
mcp_servers.<id>.identity.url.value string Nilai yang digunakan oleh pencocok URL exact atau prefix.
model_catalog_json string (path) Mewajibkan katalog model JSON yang digunakan Codex saat dimulai.
models table Default model terkelola untuk thread baru. Nilai ini lebih diprioritaskan daripada default pengguna dan proyek, tetapi pilihan eksplisit untuk thread baru dapat menggantikannya.
models.new_thread table Default yang diterapkan saat thread lokal baru dimulai. Setiap pengaturan model bersifat opsional.
models.new_thread.model string Model default untuk thread baru. Penggantian --model atau --config model/penalaran yang eksplisit lebih diprioritaskan.
models.new_thread.model_reasoning_effort string Upaya penalaran default untuk thread baru. Penggantian model atau upaya penalaran yang eksplisit mengabaikan kedua bidang model terkelola.
models.new_thread.service_tier string Tingkat layanan default untuk thread baru. Penggantian tingkat layanan yang eksplisit diprioritaskan secara independen dari bidang model.
permissions table Profil izin yang ditentukan administrator dan menggunakan nama profil sebagai kunci. Menggunakan bidang profil yang sama dengan config.toml.
permissions.<name> table Profil izin yang ditentukan administrator. Namanya tidak boleh diawali dengan :, menggunakan nama khusus filesystem, atau menduplikasi profil dari konfigurasi yang dimuat. Menggunakan bidang profil yang sama dengan config.toml; lihat panduan Izin untuk skema profil lengkap.
permissions.filesystem.deny_read array<string> Penolakan baca sistem file yang diwajibkan administrator. Entri dapat berupa path atau pola glob, dan pengguna tidak dapat melonggarkannya melalui konfigurasi lokal.
plugins table Daftar izin server MCP khusus plugin yang menggunakan pengidentifikasi plugin sebagai kunci. Jika tabel ini ada, server yang dibundel bersama plugin tanpa entri plugin dan server yang cocok akan dinonaktifkan.
plugins.<plugin>.mcp_servers table Daftar izin untuk server MCP yang dibundel bersama satu plugin. Persyaratan server plugin menggunakan bentuk identitas persis dan pencocok yang sama dengan persyaratan mcp_servers tingkat atas.
plugins.<plugin>.mcp_servers.<server>.identity table Aturan identitas untuk satu server MCP yang dibundel bersama plugin. Tetapkan command (stdio) atau url (HTTP yang dapat dialirkan).
plugins.<plugin>.mcp_servers.<server>.identity.command string | table Mengizinkan server MCP stdio milik plugin berdasarkan string perintah yang persis, atau menggunakan tabel pencocok untuk mewajibkan executable yang persis dan pencocok argumen yang berurutan.
plugins.<plugin>.mcp_servers.<server>.identity.command.args array<table> Pencocok argumen berurutan untuk server stdio yang dibundel bersama plugin. Daftar argumen terkonfigurasi harus memiliki panjang yang sama dan setiap posisinya harus cocok.
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].expression string Ekspresi reguler yang digunakan oleh pencocok argumen regex. Ekspresi harus cocok dengan keseluruhan nilai argumen.
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].match exact | prefix | regex Operasi pencocokan untuk posisi argumen ini.
plugins.<plugin>.mcp_servers.<server>.identity.command.args[].value string Nilai yang digunakan oleh pencocok argumen exact atau prefix.
plugins.<plugin>.mcp_servers.<server>.identity.command.executable string Executable yang harus sama persis dengan perintah terkonfigurasi milik server stdio yang dibundel bersama plugin.
plugins.<plugin>.mcp_servers.<server>.identity.url string | table Mengizinkan server MCP HTTP yang dapat dialirkan milik plugin berdasarkan string URL yang persis, atau menggunakan tabel pencocok nilai exact, prefix, atau regex.
plugins.<plugin>.mcp_servers.<server>.identity.url.expression string Ekspresi reguler yang digunakan oleh pencocok URL regex. Ekspresi harus cocok dengan keseluruhan nilai URL.
plugins.<plugin>.mcp_servers.<server>.identity.url.match exact | prefix | regex Operasi pencocokan untuk URL server MCP yang dibundel bersama plugin.
plugins.<plugin>.mcp_servers.<server>.identity.url.value string Nilai yang digunakan oleh pencocok URL exact atau prefix.
remote_sandbox_config array<table> Persyaratan sandbox khusus host. Entri pertama yang hostname_patterns-nya cocok dengan nama host yang ditentukan akan menggantikan allowed_sandbox_modes tingkat atas untuk sumber persyaratan tersebut. Entri khusus host saat ini hanya menggantikan mode sandbox.
remote_sandbox_config[].allowed_sandbox_modes array<string> Mode sandbox yang diizinkan untuk diterapkan saat entri khusus host ini cocok.
remote_sandbox_config[].hostname_patterns array<string> Pola nama host yang tidak peka huruf besar-kecil. Mendukung * untuk urutan karakter apa pun dan ? untuk satu karakter.
rules table Aturan perintah yang diwajibkan administrator dan digabungkan dengan file .rules. Aturan persyaratan harus bersifat membatasi.
rules.prefix_rules array<table> Daftar aturan prefiks yang diwajibkan. Setiap aturan harus menyertakan pattern dan decision.
rules.prefix_rules[].decision prompt | forbidden Wajib. Aturan persyaratan hanya dapat meminta konfirmasi atau melarang (bukan mengizinkan).
rules.prefix_rules[].justification string Alasan opsional yang tidak kosong dan ditampilkan dalam permintaan persetujuan atau pesan penolakan.
rules.prefix_rules[].pattern array<table> Prefiks perintah yang dinyatakan sebagai token pola. Setiap token menetapkan token atau any_of.
rules.prefix_rules[].pattern[].any_of array<string> Daftar token alternatif yang diizinkan pada posisi ini.
rules.prefix_rules[].pattern[].token string Satu token literal pada posisi ini.
sqlite_home string (path) Mewajibkan direktori tempat Codex menyimpan status runtime berbasis SQLite.
windows table Persyaratan sandbox Windows native.
windows.allowed_sandbox_implementations array<string> Implementasi sandbox Windows native yang diizinkan untuk windows.sandbox (elevated dan unelevated). Daftar tidak boleh kosong. Jika keduanya diizinkan dan tidak ada mode yang dipilih, Codex memilih elevated.
windows.sandbox_private_desktop boolean Mewajibkan apakah sandbox Windows native memulai proses turunannya di desktop privat.