Memulai
Instalasi
npm install -g @openai/codex
Autentikasi
export OPENAI_API_KEY="sk-..."

Set di shell profile atau file .env

Pertama Kali Digunakan
codex "explain this project" codex "add input validation to app.py"
Perintah
Interaktif (Default)
codex # start interactive session codex "fix the login bug" # with initial prompt
codex exec
codex exec "write unit tests for utils.py" codex exec "refactor db.py to use async"

Non-interaktif — menjalankan task sampai selesai

codex review
codex review # review staged changes codex review --diff HEAD~3 # review last 3 commits
Mode
Mode Persetujuan
suggestTampilkan perubahan yang diusulkan, minta persetujuan untuk setiap edit file dan perintah
auto-editTerapkan edit file otomatis, minta persetujuan untuk perintah shell
full-autoTerapkan edit dan jalankan perintah tanpa persetujuan
Mengatur Mode
codex --approval-mode suggest "add tests" codex --approval-mode auto-edit "refactor" codex --approval-mode full-auto "fix lint"
Konfigurasi
File Konfigurasi
# ~/.codex/config.yaml model: o4-mini approval_mode: suggest providers: - name: openai api_key_env: OPENAI_API_KEY

Override per-proyek: .codex/config.yaml di root proyek

Instruksi Proyek
# AGENTS.md (in project root) - Run tests with: uv run pytest - Use ruff for linting - Never modify migration files
Opsi Konfigurasi Berguna
modelModel yang digunakan (mis. o4-mini, o3)
approval_modeMode persetujuan default
providersKonfigurasi provider API (key, base URL)
historySimpan riwayat percakapan: true / false
Sandboxing
Cara Kerjanya
Codex menjalankan perintah di lingkungan sandbox untuk mencegah efek samping yang tidak diinginkan. Akses jaringan dinonaktifkan secara default. Penulisan file dibatasi pada direktori proyek.
Opsi Sandbox
macOSApple Seatbelt (default, bawaan)
LinuxSandbox berbasis Docker
--full-autoMemerlukan sandbox aktif
--dangerously-auto-approveLewati sandbox (tidak disarankan)
Tips
Prompt yang Efektif
Spesifik"add retry logic to fetch_data()" > "improve code"
Referensikan file"fix the bug in src/auth.py" mempersempit cakupan
Nyatakan batasan"don't change the public API" menetapkan batas
IterasiLanjutkan dengan penyempurnaan dalam sesi yang sama
Pola Alur Kerja
# Explore → plan → execute codex "explain the auth module" codex "plan how to add OAuth support" codex --approval-mode auto-edit "add OAuth" # Review before commit git add -A codex review
Flag Umum
--model, -mOverride model untuk sesi ini
--approval-modeSet mode persetujuan
--quiet, -qOutput minimal
--no-project-docAbaikan AGENTS.md