Claude Code CLI: De Definitieve Technische Referentie
Bijgewerkt 12 december 2025
December 2025 Update: Claude Code ondersteunt nu enterprise engineering workflows met agentische multi-file bewerking, MCP-protocolintegratie met 300+ externe diensten, gespecialiseerde subagents voor complexe taken en een hooks-systeem voor CI/CD-automatisering. Het permissiesysteem maakt fijnmazige beveiligingscontroles mogelijk. Modelwisseling tussen Haiku (snel/goedkoop) en Opus (krachtig) optimaliseert kosten-prestatie afwegingen.
Ik heb maanden besteed aan het verkennen van de grenzen van Claude Code in productie-codebases, CI/CD-pipelines en enterprise deployments. Deze gids destilleert die ervaring tot de uitgebreide referentie die ik had willen hebben toen ik begon. Het behandelt alles van eerste installatie tot geavanceerde patronen die de meeste gebruikers nooit ontdekken.
Claude Code is geen chatinterface die toevallig iets weet over programmeren. Het is een agentisch systeem dat je codebase leest, commando's uitvoert, bestanden wijzigt, git-workflows beheert, verbindt met externe diensten en complexe taken delegeert aan gespecialiseerde subagents—allemaal via een command-line interface die integreert met hoe ontwikkelaars daadwerkelijk werken.
Het verschil tussen Claude Code terloops gebruiken en effectief gebruiken is het begrijpen van de architectuur: de configuratiehiërarchie die gedrag bepaalt, het permissiesysteem dat operaties bewaakt, het hook-systeem dat deterministische automatisering mogelijk maakt, het MCP-protocol dat mogelijkheden uitbreidt en het subagent-systeem dat complexe meerstaps-taken afhandelt. Beheers deze systemen en Claude Code wordt een krachtvermenigvuldiger. Mis ze en je laat het meeste van de waarde liggen.
Deze gids veronderstelt dat je vertrouwd bent met command-line tools en het complete plaatje wilt. Elke functie is gedocumenteerd met werkelijke syntax, echte configuratievoorbeelden en de randgevallen waar ervaren gebruikers over struikelen. Of je nu je eerste project opzet of uitrolt over een enterprise engineering-organisatie, de informatie staat hier.
Hoe Claude Code Werkt: Het Mentale Model
Voordat je in functies duikt, begrijp hoe de architectuur van Claude Code alles beïnvloedt wat je ermee doet. Het systeem werkt in drie lagen:
┌─────────────────────────────────────────────────────────┐
│ CLAUDE CODE LAGEN │
├─────────────────────────────────────────────────────────┤
│ EXTENSIE LAAG │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ MCP │ │ Hooks │ │ Skills │ │ Plugins │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ Externe tools, deterministische automatisering, │
│ domeinexpertise, verpakte extensies │
├─────────────────────────────────────────────────────────┤
│ DELEGATIE LAAG │
│ ┌─────────────────────────────────────────────────┐ │
│ │ Subagents (tot 10 parallel) │ │
│ │ Explore | Plan | General-purpose | Custom │ │
│ └─────────────────────────────────────────────────┘ │
│ Geïsoleerde contexten voor gefocust werk, retourneert │
│ samenvattingen │
├─────────────────────────────────────────────────────────┤
│ KERN LAAG │
│ ┌─────────────────────────────────────────────────┐ │
│ │ Hoofd Conversatie Context │ │
│ │ Tools: Read, Edit, Bash, Glob, Grep, etc. │ │
│ └─────────────────────────────────────────────────┘ │
│ Je primaire interactie; beperkte context; kost geld │
└─────────────────────────────────────────────────────────┘
Kern Laag: Je hoofdconversatie. Elk bericht, bestandslezing en tool-output verbruikt context uit een gedeeld 200K token-venster (1M met premium). Wanneer de context vol raakt, verliest Claude het overzicht van eerdere beslissingen en de kwaliteit neemt af. Deze laag kost geld per token.
Delegatie Laag: Subagents starten met schone contexten, doen gefocust werk en retourneren samenvattingen. De verkenningsresultaten belasten je hoofdconversatie niet—alleen de conclusies komen terug. Gebruik Haiku-subagents voor verkenning (goedkoop, snel) en Sonnet voor implementatie.
Extensie Laag: MCP verbindt externe diensten (databases, GitHub, Sentry). Hooks garanderen uitvoering van shell-commando's ongeacht modelgedrag. Skills coderen domeinexpertise die Claude automatisch toepast. Plugins verpakken dit alles voor distributie.
Het kernpunt: De meeste gebruikers werken volledig in de Kern Laag en zien context opzwellen en kosten stijgen. Ervaren gebruikers duwen verkenning en gespecialiseerd werk naar de Delegatie Laag, houden de Extensie Laag geconfigureerd voor hun workflow en gebruiken de Kern Laag alleen voor orchestratie en eindbeslissingen.
Inhoudsopgave
- Installatie en Authenticatie
- Kern Interactiemodi
- Configuratiesysteem Diepgaand
- Modelselectie en Wisseling
- Permissiesysteem en Beveiliging
- Hooks Systeem
- MCP (Model Context Protocol)
- Subagents en Taakdelegatie
- Extended Thinking Mode
- Output Stijlen
- Slash Commands
- Skills
- Plugin Systeem
- Geheugen en Context Management
- Afbeeldingen en Multimodale Input
- Git Integratie en Workflows
- IDE Integratie
- Geavanceerde Gebruikspatronen
- Claude Code Remote
- Background Agents
- Kostenbeheer en Facturering
- Prestatieoptimalisatie
- Troubleshooting en Debugging
- Enterprise Deployment
- Sneltoetsen Referentie
- Best Practices
Installatie en Authenticatie
Systeemvereisten
Claude Code draait op macOS 10.15+, Ubuntu 20.04+/Debian 10+ en Windows 10+ via WSL of Git Bash. Het systeem vereist minimaal 4 GB RAM en een actieve internetverbinding. Shell-compatibiliteit werkt het beste met Bash, Zsh of Fish.
Voor Windows werken zowel WSL 1 als WSL 2. Git Bash werkt ook als je de voorkeur geeft aan native Windows. Alpine Linux en andere musl-gebaseerde systemen vereisen extra pakketten:
apk add libgcc libstdc++ ripgrep
export USE_BUILTIN_RIPGREP=0
Installatiemethoden
Native installatie (aanbevolen)
De native binary biedt de schoonste ervaring zonder Node.js-afhankelijkheid:
# macOS en Linux
curl -fsSL https://claude.ai/install.sh | bash
# Homebrew alternatief
brew install --cask claude-code
# Windows PowerShell
irm https://claude.ai/install.ps1 | iex
# Windows CMD
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
Voor versie-specifieke installatie:
# Installeer specifieke versie
curl -fsSL https://claude.ai/install.sh | bash -s 1.0.58
# Installeer nieuwste expliciet
curl -fsSL https://claude.ai/install.sh | bash -s latest
# Windows PowerShell - specifieke versie
& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) 1.0.58
NPM installatie
Voor omgevingen waar npm de voorkeur heeft:
npm install -g @anthropic-ai/claude-code
Gebruik nooit sudo bij npm-installatie—het creëert permissieproblemen die alles downstream compliceren.
Migratie van bestaande installatie
Als je een oudere npm-gebaseerde installatie hebt, migreer naar de native binary:
claude install
Authenticatie-opties
Claude Code ondersteunt drie authenticatiepaden, elk met verschillende afwegingen:
Claude Console (API-facturering)
Verbind rechtstreeks met Anthropic's API via console.anthropic.com. Maak een account aan, stel facturering in en authenticeer via de CLI. Dit biedt op gebruik gebaseerde facturering met volledige API-toegang. Er wordt automatisch een speciale "Claude Code" workspace aangemaakt—je kunt geen API-sleutels aanmaken voor deze workspace, maar je kunt wel gebruik monitoren.
Claude Pro of Max abonnement
Gebruik je claude.ai accountgegevens. Het abonnement dekt zowel de webinterface als CLI-gebruik onder één maandelijks plan. Dit vereenvoudigt facturering voor individuele gebruikers die voorspelbare kosten willen.
Enterprise platformen
AWS Bedrock, Google Vertex AI en Microsoft Foundry bieden elk enterprise-grade toegang met bestaande cloud-factureringsrelaties:
# AWS Bedrock
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1
export AWS_PROFILE=your-profile
# Google Vertex AI
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5
export ANTHROPIC_VERTEX_PROJECT_ID=your-project
# Microsoft Foundry
export CLAUDE_CODE_USE_FOUNDRY=1
export ANTHROPIC_FOUNDRY_RESOURCE=your-resource-name
# Optioneel: API key auth (anders gebruikt Entra ID)
export ANTHROPIC_FOUNDRY_API_KEY=your-key
Voor enterprise deployments achter proxy's of via LLM-gateways:
# Corporate proxy
export HTTPS_PROXY='https://proxy.example.com:8080'
# LLM gateway (sla native auth over)
export CLAUDE_CODE_USE_BEDROCK=1
export ANTHROPIC_BEDROCK_BASE_URL='https://your-gateway.com/bedrock'
export CLAUDE_CODE_SKIP_BEDROCK_AUTH=1
Verificatie
claude doctor
Dit rapporteert installatietype, versie, systeemconfiguratie en eventuele gedetecteerde problemen.
Updates
Claude Code updatet standaard automatisch, controleert bij opstarten en periodiek tijdens sessies. Updates worden op de achtergrond gedownload en toegepast bij de volgende lancering.
Auto-updates uitschakelen:
export DISABLE_AUTOUPDATER=1
Of in settings.json:
{
"env": {
"DISABLE_AUTOUPDATER": "1"
}
}
Handmatige update:
claude update
Deïnstallatie
Native installatie (macOS/Linux/WSL):
rm -f ~/.local/bin/claude
rm -rf ~/.claude-code
Native installatie (Windows PowerShell):
Remove-Item -Path "$env:LOCALAPPDATA\Programs\claude-code" -Recurse -Force
Remove-Item -Path "$env:LOCALAPPDATA\Microsoft\WindowsApps\claude.exe" -Force
Configuratie opschonen (verwijdert alle instellingen):
rm -rf ~/.claude
rm ~/.claude.json
rm -rf .claude
rm -f .mcp.json
Kern Interactiemodi
Interactieve REPL
Start Claude Code zonder argumenten om de interactieve read-eval-print loop te betreden:
cd your-project
claude
De REPL behoudt conversatiecontext over beurten heen. Typ queries direct, ontvang antwoorden en ga door tot je afsluit met /exit of Ctrl+D.
Start met een initiële prompt om de sessie te focussen:
claude "leg de authenticatiestroom in dit project uit"
Expert tip: De REPL behoudt staat over compaction-events. Wanneer de context te groot wordt, vat Claude automatisch oudere conversatie samen terwijl belangrijke beslissingen en code-snippets behouden blijven. Je kunt dit handmatig triggeren met /compact of aangepaste instructies toevoegen voor wat bewaard moet blijven.
Niet-Interactieve Modus
Print mode (-p) voert een enkele query uit en sluit af:
# Directe query
claude -p "lijst alle TODO-commentaren in dit project"
# Verwerk gepipete input
cat error.log | claude -p "identificeer de hoofdoorzaak van deze fouten"
# Keten met andere tools
claude -p "genereer een README" > README.md
Voor gestructureerde output geschikt voor parsing in scripts:
claude -p "tel regels per bestandstype" --output-format json
De JSON-output bevat alles wat je nodig hebt voor automatisering:
{
"type": "result",
"subtype": "success",
"total_cost_usd": 0.0034,
"is_error": false,
"duration_ms": 2847,
"duration_api_ms": 1923,
"num_turns": 4,
"result": "Antwoordtekst hier...",
"session_id": "abc-123-d
[Inhoud ingekort voor vertaling]