Naar de inhoud
NLEN
← Apps-overzicht

Codex: technische tutorial

Codex: ReviewInstalleren & instellenNieuwsTechnische tutorial

Stand september 2026, samengesteld uit onze eigen notities en nieuwsarchief; tekst machinaal opgesteld en redactioneel gecontroleerd. Controleer versies en commando's in de officiële documentatie.

Deze tutorial gaat verder waar de installatie ophoudt. Aan bod komen config.toml, sandbox- en goedkeuringsbeleid, projectinstructies via AGENTS.md, MCP-servers, profielen, een eigen proxy of gateway, en Codex in scripts en CI. Sleutels en vlaggen zijn gecontroleerd tegen de officiële documentatie (stand september 2026).

config.toml: waar en in welke volgorde

Een basisconfiguratie:

model = "gpt-6-sol"
model_reasoning_effort = "medium"
approval_policy = "on-request"
sandbox_mode = "workspace-write"

Sandbox en goedkeuring

Codex heeft twee knoppen die samen bepalen wat de agent zelfstandig mag.

sandbox_mode, de grens op OS-niveau:

approval_policy, wanneer Codex het jou vraagt:

untrusted wordt niet meer ondersteund en on-failure is verouderd; gebruik ze niet in nieuwe configuraties.

De sandbox gebruikt Seatbelt op macOS, bubblewrap op Linux en WSL 2, en de native Windows-sandbox in PowerShell. In september 2026 werden twee ontsnappingen gedicht: Heapjack (een host-actie vanuit read-only zonder goedkeuringsvraag) en Overpatch (schrijven buiten de werkmap). Gebruik minstens CLI 0.149.0.

Projectinstructies met AGENTS.md

Codex bouwt de instructies op in deze volgorde:

  1. Globaal: ~/.codex/AGENTS.override.md als dat bestaat, anders ~/.codex/AGENTS.md.
  2. Project: van de root van de repository tot je huidige map. Per niveau eerst AGENTS.override.md, anders AGENTS.md.
  3. Bestanden dichter bij je huidige map gaan voor op eerdere instructies.

Samen mogen de bestanden standaard 32 KiB zijn (project_doc_max_bytes); daarboven stopt Codex met toevoegen. Heet je instructiebestand anders, voeg de naam dan toe:

project_doc_fallback_filenames = ["TEAM_GUIDE.md", ".agents.md"]

Een praktisch patroon voor monorepo's: algemene afspraken in de root-AGENTS.md, en per pakket een korte AGENTS.md met de specifieke build- en testcommando's.

MCP-servers

Een lokale server toevoegen vanaf de commandoregel:

codex mcp add context7 -- npx -y @upstash/context7-mcp

Of direct in config.toml:

[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]
startup_timeout_sec = 20
tool_timeout_sec = 60

[mcp_servers.context7.env]
MY_ENV_VAR = "waarde"

[mcp_servers.figma]
url = "https://mcp.figma.com/mcp"
bearer_token_env_var = "FIGMA_OAUTH_TOKEN"

Standaard wacht Codex 10 seconden op het opstarten van een server (startup_timeout_sec) en 60 seconden per toolaanroep (tool_timeout_sec). Servers die via npx eerst iets moeten downloaden, hebben vaak meer opstarttijd nodig.

Profielen

Met een profiel wissel je snel tussen instellingen, bijvoorbeeld een zuinig profiel voor kleine klussen en een zwaar profiel voor reviews. Sinds versie 0.134.0 is elk profiel een los bestand naast je hoofdconfiguratie, met alleen de waarden die afwijken. De oude [profiles.x]-tabel in config.toml wordt niet meer ondersteund.

~/.codex/deep-review.config.toml:

model = "gpt-6-astra"
model_reasoning_effort = "high"
sandbox_mode = "read-only"

Gebruiken:

codex --profile deep-review

Een proxy of eigen provider

Wil je al het verkeer via een eigen LLM-proxy laten lopen, voor logging, kostenbewaking of sleutelbeheer? Zet dan in je gebruikersconfiguratie:

openai_base_url = "https://proxy.example.com/v1"

Voor een aparte provider definieer je een eigen blok en kies je die met model_provider:

model_provider = "mijnproxy"

[model_providers.mijnproxy]
name = "Eigen LLM-proxy"
base_url = "https://proxy.example.com/v1"
env_key = "MIJNPROXY_API_KEY"
wire_api = "responses"

env_key is de naam van de omgevingsvariabele met de sleutel, niet de sleutel zelf. wire_api bepaalt het API-formaat: "responses" voor de Responses API; zonder die regel gebruikt Codex het Chat Completions-formaat. Controleer welk formaat je proxy doorgeeft, want niet elke gateway ondersteunt beide.

Codex in scripts en CI

codex exec draait zonder interface en is bedoeld voor pipelines, pre-merge checks en geplande taken.

codex exec --sandbox workspace-write "Draai de tests en repareer wat faalt"

Handige vlaggen:

Een voorbeeld dat alleen een oordeel teruggeeft:

CODEX_API_KEY="$CODEX_KEY" codex exec --sandbox read-only \
  --output-schema review-schema.json -o review.json \
  "Beoordeel de wijzigingen in deze branch op beveiligingsrisico's"

Let op met sleutels in CI. OpenAI raadt aan CODEX_API_KEY alleen mee te geven aan het commando zelf, zoals hierboven, en niet als omgevingsvariabele voor de hele job. Anders kan code uit de repository die je in dezelfde job draait de sleutel uitlezen.

Veelvoorkomende problemen

Documentatie: learn.chatgpt.com/docs.