Codex is een terminalgebaseerde code-agent van OpenAI die bestanden kan lezen, code kan aanpassen en opdrachten kan uitvoeren in je werkdirectory. Je kunt Codex vrijwel overal gebruiken: op je pc, laptop, server en zelfs op je telefoon (waarmee je je computer kunt bedienen!). Door Codex op een VPS of OpenStack-instance te draaien, beschik je over een blijvende Linux-omgeving voor langdurige codeersessies, externe repositories en ontwikkelwerk dat onafhankelijk van je laptop doorgaat.
In deze handleiding installeer en/of gebruik je Codex op een Linux-server en gebruik je het veilig via SSH. Dit is een praktische setup voor ontwikkeling en automatisering, omdat het taalmodel zelf via OpenAI draait, met je ChatGPT-account of een OpenAI API-sleutel, en niet op je VPS. Als alternatief kun je ook zelf gehoste modellen gebruiken (bijvoorbeeld via Ollama) om Codex aan te sturen.
- Codex op basis van GPT vereist toegang tot Codex via je ChatGPT-account of een OpenAI API-sleutel. De Codex CLI zelf draait lokaal, maar heeft internettoegang nodig om met OpenAI te communiceren.
- Dit artikel gaat ervan uit dat je een Linux-server gebruikt, zoals onze vooraf geïnstalleerde Codex-image die Ubuntu gebruikt. Als je server ook productiediensten host, houd Codex dan weg bij gevoelige directories, secrets, deployment keys en klantgegevens.
Waarom een GPU niet vereist is voor Codex
Bij een standaard Codex CLI-setup voert je server zelf geen model-inference uit. In de praktijk betekent dit dat een server met alleen een CPU voldoende is, zolang de server genoeg geheugen, internettoegang en een ondersteunde Linux-distributie heeft.
Je server biedt vooral de shell, bestandssysteemtoegang, git-repository en runtime-omgeving waarin Codex werkt. Een snellere CPU en meer geheugen verbeteren lokale taken zoals pakketinstallaties, tests, indexering en builds, maar een GPU is geen vereiste voor de Codex CLI zelf.
Welke serverspecificaties heb ik nodig om Codex effectief te gebruiken?
De systeemvereisten om Codex te draaien hangen af van je setup, maar komen vooral neer op de systeemvereisten van je besturingssysteem:
- server met Ubuntu + Codex via je ChatGPT-/OpenAI API-account: 2 CPU-cores, 4GB RAM.
- server met Ubuntu + Codex + externe Ollama-server die de LLM host: 2 CPU-cores, 4GB RAM.
- server met Ubuntu + Codex + lokale Ollama-server die de LLM host: de specificaties hangen af van de gekozen LLM, maar ga voor praktisch gebruik uit van minimaal 32GB RAM. Zie deze handleiding voor een overzicht van hoe je de juiste specificaties kiest.
Codex handmatig installeren
- Sla dit hoofdstuk over als je een Codex VPS met vooraf geïnstalleerde Codex hebt besteld.
- De onderstaande stappen gaan ervan uit dat je Ubuntu of Debian gebruikt.
Stap 1
Maak verbinding met je server via SSH, de VPS-console (VPS), of de OpenStack-console (OpenStack-instance).
Stap 2
Werk je server bij en installeer de tools die in deze handleiding worden gebruikt:
sudo apt -y update && sudo apt -y upgrade && sudo apt -y install curl git build-essential tmux nodejs npm bubblewrapIn deze opdracht is curl handig voor downloads, wordt git gebruikt voor repositories, levert build-essential algemene buildtools voor lokale afhankelijkheden, zorgt tmux ervoor dat je shellsessie actief blijft nadat je de SSH-verbinding verbreekt, worden nodejs en npm gebruikt om Codex te installeren, en biedt bubblewrap betrouwbare Linux-sandboxing voor opdrachten die door Codex worden uitgevoerd.
Stap 3
Installeer Codex met npm:
npm i -g @openai/codexAls npm een rechtenfout geeft, configureer npm dan zo dat globale pakketten voor je eigen gebruikersaccount worden geïnstalleerd en probeer het opnieuw:
mkdir -p ~/.local
npm config set prefix ~/.local
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
npm i -g @openai/codexHiermee voorkom je dat Codex als root wordt geïnstalleerd en blijft het uitvoerbare bestand in het PATH van je gebruiker.
Stap 4
Herlaad je shell en controleer of Codex beschikbaar is:
source ~/.bashrc
command -v codexAls een pad zoals /home/username/.local/bin/codex wordt weergegeven, is Codex beschikbaar vanuit je shell.
Stap 5
Start tot slot Codex:
codexBij de eerste keer starten leidt Codex je door de authenticatie en eerste configuratie. Zie het volgende hoofdstuk voor de bijbehorende stappen.
Codex-onboarding en authenticatie
Stap 1
Wanneer je Codex voor het eerst uitvoert met de opdracht codex, vraagt Codex je om in te loggen. Je kunt inloggen met je ChatGPT-account of met een OpenAI API-sleutel.
Voor de meeste interactieve toepassingen op een server is inloggen met ChatGPT de eenvoudigste optie:
codex loginAls je server geen browser kan openen, gebruik dan in plaats daarvan de apparaatauthenticatieflow:
codex login --device-authCodex toont vervolgens een inlogcode en een URL. Open de URL in je lokale browser, voer de code in en voltooi de login.
Stap 2
Controleer of Codex is ingelogd:
codex login statusAls de opdracht bevestigt dat er inloggegevens aanwezig zijn, is Codex klaar voor gebruik.
Stap 3
Start Codex in een projectdirectory:
mkdir -p ~/projects/example-project
cd ~/projects/example-project
codexVanaf dit punt kun je gewoon met Codex chatten om het te gebruiken. Clone bijvoorbeeld een git-repository naar je server, navigeer naar de directory, start Codex en zeg iets als: “Ik werk in deze git-repo voor <beschrijving van het project> en ik wil een bug oplossen in bestand <bestandsnaam>. Help me dit op te lossen.”
Ollama gebruiken met Codex
Als alternatief voor het gebruik van Codex met je ChatGPT-account of een OpenAI API-sleutel kun je ook een LLM gebruiken die via Ollama wordt gehost op dezelfde server of op een externe server. Hierdoor kan Codex een lokaal of via Ollama gehost open-weight model gebruiken in plaats van een door OpenAI gehost model.
- In deze handleiding behandelen we de installatie van Ollama.
- In dit artikel leggen we uit welk formaat server en LLM je het beste minimaal kunt gebruiken om Claude Code nuttig te gebruiken icm Ollama.
- Tip: als je Ollama op een externe server draait, beperk dan de IP-toegang door firewallregels te maken die toegang tot de Ollama-server beperken tot specifieke IP-adressen, zoals je server waarop Claude Code draait.
Ollama geïnstalleerd op dezelfde server als Codex
De snelste manier om Codex met Ollama te starten is:
ollama launch codexOm Codex voor Ollama te configureren zonder het direct te starten, voer je uit:
ollama launch codex --configJe kunt Codex ook handmatig met Ollama starten door de vlag --oss te gebruiken:
codex --ossStandaard gebruikt Codex Ollama als lokale provider voor OSS-modus. Om een specifiek model te gebruiken, geef je het model mee met -m, bijvoorbeeld:
codex --oss -m gpt-oss:120b
Ollama geïnstalleerd op een andere server dan Codex & permanente setups
Voeg voor een permanente setup een Ollama-provider en -profiel toe aan ~/.codex/config.toml:
Open eerst het bestand:
nano ~/.codex/config.tomlZorg ervoor dat de volgende inhoud aan het bestand wordt toegevoegd/bijgewerkt, sla je werk op en sluit het bestand (ctrl + x > y > enter).
[model_providers.ollama-launch]
name = "Ollama"
base_url = "http://localhost:11434/v1"
wire_api = "responses"
[profiles.ollama-launch]
model = "gpt-oss:120b"
model_provider = "ollama-launch"
model_context_window = 131072
model_auto_compact_token_limit = 90000
model_supports_reasoning_summaries = falseStart Codex daarna met dat profiel:
codex --profile ollama-launch- Als Ollama op een externe server draait, beperk dan de toegang tot de Ollama API met firewallregels of private networking. Stel de Ollama API niet publiek beschikbaar zonder authenticatie en netwerkcontroles.
- Lokale modellen kunnen trager of minder capabel zijn dan door OpenAI gehoste Codex-modellen, vooral bij grote repositories, complexe refactors en lange debugtaken met meerdere stappen.
Codex gebruiken met een API-sleutel
Als alternatief voor inloggen met een ChatGPT-account kun je Codex gebruiken met een OpenAI API-sleutel. Dit is vooral handig voor scripts, CI/CD-workflows en andere programmatische toepassingen.
- Gebruik van API-sleutels wordt gefactureerd via je OpenAI Platform-account in plaats van via je ChatGPT-abonnement.
- Plak API-sleutels niet in gedeelde terminals, shellgeschiedenis, openbare repositories of projectbestanden.
Voer het volgende uit om in te loggen met een API-sleutel zonder de sleutel in de terminal weer te geven:
read -rsp "OpenAI API key: " OPENAI_API_KEY; echo
printf '%s' "$OPENAI_API_KEY" | codex login --with-api-key
unset OPENAI_API_KEYControleer daarna de loginstatus:
codex login statusAls je later opgeslagen Codex-inloggegevens van de server wilt verwijderen, voer je uit:
codex logout
Handige opdrachten
Codex kan zowel vanuit een interactieve Codex-sessie als rechtstreeks vanuit de Linux-shell worden gebruikt. De onderstaande opdrachten zijn handig zodra Codex is geïnstalleerd en geauthenticeerd.
Een sessie starten of voortzetten
Start Codex in de huidige directory:
codexStart Codex met een eerste prompt:
codex "explain this project"Hervat een eerdere interactieve sessie:
codex resumeHervat de meest recente sessie voor de huidige directory:
codex resume --last
Rechten
Codex draait met de rechten van je gebruikersaccount. Daarom raden we aan Codex niet als root-gebruiker of met sudo uit te voeren.
Je kunt de goedkeuringsinstellingen van Codex versoepelen via het permissiemenu:
/permissionsJe kunt Codex ook starten met een ander goedkeuringsbeleid, bijvoorbeeld:
codex --ask-for-approval neverWees hier voorzichtig mee op een server. Als je de sandbox ook omzeilt met --dangerously-bypass-approvals-and-sandbox of --yolo, kan Codex opdrachten uitvoeren zonder goedkeuringen of sandboxing. Gebruik dit alleen in een geïsoleerde omgeving.
Codex niet-interactief uitvoeren
Gebruik codex exec als je wilt dat Codex één taak uitvoert en daarna afsluit. Dit is handig voor het controleren van logs, uitleggen van bestanden, genereren van samenvattingen of het gebruiken van Codex in scripts:
codex exec "summarize the current git diff"Je kunt ook content naar Codex pipen:
cat logs.txt | codex exec "explain the error and suggest a fix"Gebruik JSON Lines-output om niet-interactieve output eenvoudiger in scripts te verwerken:
codex exec --json "summarize the repository structure" | jq- Standaard is
codex execbedoeld voor gecontroleerde, eenmalige taken. Geef het alleen de rechten die het nodig heeft voor de taak.
- Gebruik
--sandbox workspace-writealleen wanneer Codex bestanden moet bewerken, en gebruikdanger-full-accessalleen in een geïsoleerde runner of container.
Handige opdrachten binnen Codex
De volgende opdrachten voer je in binnen een actieve Codex-sessie:
/helpToont de beschikbare opdrachten.
/initGenereert een AGENTS.md-basisbestand in de huidige directory. Dit bestand kan het project, opdrachten, codeerstijl, testinstructies en alles wat Codex verder voor deze repository moet onthouden beschrijven.
/permissionsOpent het rechtenoverzicht, waar je kunt bekijken of wijzigen wat Codex mag doen zonder eerst toestemming te vragen.
/modelHiermee kun je het actieve model kiezen en, waar beschikbaar, het redeneerniveau.
/fastSchakelt Fast mode in of uit voor ondersteunde modellen.
/plan fix the login bugStart planmodus voor een grotere wijziging. Dit is handig wanneer je wilt dat Codex eerst een aanpak voorstelt voordat er bestanden worden aangepast.
/diffToont de Git-diff, inclusief bestanden die nog niet door Git worden bijgehouden. Gebruik dit om de wijzigingen van Codex te bekijken voordat je commit.
/reviewVraagt Codex om je working tree te reviewen. Dit is handig nadat Codex werk heeft afgerond of wanneer je een tweede review van lokale wijzigingen wilt.
/compactVat het zichtbare gesprek samen om context vrij te maken, terwijl de belangrijke details behouden blijven.
/clearMaakt de terminal leeg en start een nieuwe chat.
/newStart een nieuw gesprek binnen dezelfde Codex CLI-sessie.
/resumeOpent de sessiekiezer zodat je een eerder gesprek kunt voortzetten.
/statusToont de sessieconfiguratie, tokengebruik, het goedkeuringsbeleid, beschrijfbare locaties en de resterende contextcapaciteit.
/mcpToont geconfigureerde Model Context Protocol-tools. Gebruik dit wanneer je extra tools of diensten met Codex hebt verbonden.
/pluginsOpent de pluginbrowser, waar je plugins uit geconfigureerde marketplaces kunt bekijken, installeren, verwijderen, inschakelen of uitschakelen.
/skillsToont de skills die beschikbaar zijn voor Codex. Je kunt ook $ typen in de prompt om een specifieke skill te noemen.
$skill-creatorStart de ingebouwde skill creator. Gebruik dit wanneer je wilt dat Codex helpt bij het maken van een herbruikbare skill met instructies, optionele scripts en referenties.
/logoutLogt je uit bij Codex vanuit de interactieve sessie.
/quitSluit Codex af. /exit werkt als alternatieve opdracht.
Plugins en skills installeren
Codex gebruikt plugins om herbruikbare workflows, app-integraties, MCP-servers en skills toe te voegen. Skills zijn herbruikbare instructies en resources die Codex kan laden wanneer ze aansluiten op een taak.
Toon het skilloverzicht (typ simpelweg de nummers van de skills die je wilt installeren):
$skill-installerOpen de pluginbrowser vanuit Codex:
/pluginsVoeg vanuit de shell een pluginmarketplace toe:
codex plugin marketplace add owner/repositoryWerk geconfigureerde pluginmarketplaces bij:
codex plugin marketplace upgradeVerwijder een marketplace:
codex plugin marketplace remove marketplace-nameStart na het installeren of wijzigen van plugins een nieuwe Codex-thread en vraag Codex om de plugin te gebruiken. Je kunt ook @ typen in het promptvenster om expliciet een specifieke plugin of een van de meegeleverde skills aan te roepen.
- Installeer alleen plugins, skills en marketplaces uit bronnen die je vertrouwt. Ze kunnen krachtige functionaliteit toevoegen, maar kunnen ook instructies, scripts, MCP-servers of app-integraties bevatten die handelen met de rechten die je hebt geconfigureerd.
- Gebruik voor herbruikbare projectinstructies bij voorkeur
AGENTS.md. Gebruik een skill voor herbruikbare workflows die Codex moet activeren wanneer ze relevant zijn. Gebruik een plugin voor workflows die je wilt distribueren of over meerdere projecten wilt installeren.
Bijwerken, authenticeren en problemen oplossen
Controleer of Codex is geïnstalleerd:
command -v codexWerk Codex bij met npm:
npm i -g @openai/codex@latestAls je Codex-installatie de ingebouwde updater ondersteunt, kun je ook uitvoeren:
codex updateControleer de loginstatus:
codex login statusLog opnieuw in:
codex loginLog in met de apparaatflow:
codex login --device-authLog uit:
codex logoutToon configuratiediagnostiek vanuit Codex:
/debug-configToon de huidige sessiestatus vanuit Codex:
/status
Tips om Codex veilig op een server te gebruiken
Codex kan bestanden lezen, code aanpassen en shellopdrachten uitvoeren. Daarom is het verstandig om een paar minuten te nemen om je werkomgeving te scheiden van de rest van de server.
Stap 1
Start een blijvende terminalsessie voordat je Codex opent:
tmux new -s codexAls je SSH-verbinding wegvalt, houdt tmux de sessie actief. Maak later opnieuw verbinding met:
tmux attach -t codex
Stap 2
Werk binnen een dedicated projectdirectory in plaats van je volledige homedirectory of systeempaden:
mkdir -p ~/projects/example-project
cd ~/projects/example-project
codexDit houdt de reikwijdte van bestandstoegang voorspelbaar en maakt het makkelijker om te controleren waar Codex bij kan.
Stap 3
Gebruik een AGENTS.md-bestand om vast te leggen hoe Codex in je project moet werken:
cat > AGENTS.md <<'EOF'
# AGENTS.md
## Project instructions
* Run tests before proposing final changes.
* Prefer small, focused commits.
* Do not edit production secrets or deployment keys.
EOFCodex leest AGENTS.md-bestanden voordat het aan het werk gaat, dus dit is een handige plek om projectspecifieke instructies, testopdrachten, codeerstijl en veiligheidsregels vast te leggen.
Stap 4
Open het Codex-rechtenoverzicht vanuit Codex met:
/permissionsCodex gebruikt sandboxing en goedkeuringen samen. De sandbox bepaalt waar Codex technisch toegang toe heeft, zoals beschrijfbare directories en netwerktoegang. Het goedkeuringsbeleid bepaalt wanneer Codex moet stoppen en jou om toestemming moet vragen voordat het verdergaat.
Houd op een normale ontwikkel-VPS de standaard goedkeuringsflow aan, tenzij je in een bewust geïsoleerde omgeving werkt.
Stap 5
Vermijd het uitvoeren van Codex als root, tenzij je echt systeembrede wijzigingen nodig hebt. Als je normaal gesproken als root inlogt, maak dan eerst een aparte gebruiker aan:
adduser codex
usermod -aG sudo codex
su - codexEen aparte gebruiker verkleint het risico op onbedoelde wijzigingen aan systeembestanden. Gebruik sudo alleen voor opdrachten die daadwerkelijk verhoogde rechten nodig hebben.
Gebruik --dangerously-bypass-approvals-and-sandbox of --yolo niet op een server die ook productiegegevens, deployment keys of klantinformatie bevat. Deze modi omzeilen belangrijke veiligheidscontroles en mogen alleen worden gebruikt in een extern geharde omgeving, zoals een geïsoleerde wegwerpcontainer of runner.
Codex bijwerken
Er worden regelmatig nieuwe versies van de Codex CLI uitgebracht. Als je Codex met npm hebt geïnstalleerd, werk je het bij met:
npm i -g @openai/codex@latestSommige Codex-installaties ondersteunen ook de ingebouwde updater:
codex updateStart Codex opnieuw na het bijwerken:
codexof hervat je eerdere sessie:
codex resume
Codex werkt goed op een server zonder GPU, omdat de server de ontwikkelomgeving biedt terwijl het model extern via OpenAI draait. Met een kleine voorbereiding, vooral een dedicated gebruiker, een dedicated projectdirectory, een AGENTS.md-bestand, bubblewrap-sandboxing en een tmux-sessie, krijg je een praktische en gecontroleerde externe codeersetup.