Gemini CLI: De kracht van Google AI vanuit je terminal
Iedere developer heeft wel eens gehoord van Gemini: Google's krachtige AI-model dat kan helpen bij het schrijven van code, beantwoorden van vragen en het oplossen van complexe problemen.
Gemini is een multimodaal AI-model van Google dat tekst, code, afbeeldingen en andere content kan begrijpen en genereren. Het is ontworpen om developers en gebruikers te helpen bij verschillende taken, van het schrijven van code tot het beantwoorden van complexe vragen.
Van browser naar CLI
Gemini is natuurlijk beschikbaar via de webinterface op gemini.google.com, maar voor developers die veel tijd in de terminal doorbrengen, is er nu een nog handiger oplossing: gemini-cli.
Gemini CLI is Google's officiële command-line interface voor het interacteren met Gemini AI-modellen direct vanuit je terminal. Voor developers die gewend zijn aan een CLI-workflow kan dit een enorme productiviteitsboost betekenen.
Net zoals je met git
je versiecontrole regelt, kun je nu met gemini
AI-functionaliteit integreren in je dagelijkse development workflow.
Het mooie is dat je hierdoor AI-functies kunt combineren met andere command-line tools via pipes en scripting.
Waarom gemini-cli gebruiken?
De belangrijkste voordelen van gemini-cli ten opzichte van de webinterface zijn:
- Snelheid: Geen browser nodig, direct vanuit je terminal
- Integratie: Combineer met andere CLI-tools via pipes
- Scripting: Automatiseer AI-taken in shell scripts
- Focus: Blijf in je development omgeving zonder context switching
- Batch processing: Verwerk meerdere files of inputs in één keer
Installatie en configuratie
Installeren via npm
Gemini CLI is beschikbaar als npm package en kan eenvoudig globaal geïnstalleerd worden:
$ npm install -g @google/gemini-cli
Na installatie kun je controleren of alles goed is gegaan:
$ gemini --version
Output:
0.1.5
Authenticatie configureren
Om gemini-cli te kunnen gebruiken moet je authenticeren met Google's AI services. Er zijn verschillende authenticatiemethoden beschikbaar:
Optie 1: Inloggen met je Google account (aanbevolen)
De eenvoudigste manier is inloggen met je persoonlijke Google account. Bij de eerste keer opstarten van gemini-cli wordt je automatisch doorgestuurd naar een webpagina voor authenticatie. Na authenticatie worden je credentials lokaal opgeslagen, zodat je niet elke keer opnieuw hoeft in te loggen.
Dit geeft je automatisch toegang tot:
- Tot 60 model requests per minuut
- 1.000 model requests per dag
Let op: Voor Google Workspace accounts of bepaalde andere gevallen moet je mogelijk een GOOGLE_CLOUD_PROJECT
environment variable instellen.
Optie 2: Google AI API key
Voor geavanceerd gebruik of hogere limieten kun je een API key gebruiken. Deze kun je verkrijgen via Google AI Studio.
Er zijn twee manieren om je API key te configureren:
API key via environment variable:
$ export GEMINI_API_KEY="jouw-api-key-hier"
API key via settings bestand:
Gemini CLI maakt automatisch een configuratiemap aan in ~/.gemini/
. Je kunt hier een settings.json
bestand aanmaken:
$ mkdir -p ~/.gemini
$ echo '{"auth": {"type": "api_key", "api_key": "jouw-api-key-hier"}}' > ~/.gemini/settings.json
Optie 3: Vertex AI
Voor enterprise gebruik kun je ook authenticeren via Vertex AI met Google Cloud credentials.
Aan de slag met gemini-cli
Basis gebruik
De eenvoudigste manier om gemini-cli te gebruiken is door een vraag direct als argument mee te geven:
$ gemini -p "Wat is de hoofdstad van Nederland?"
Output:
De hoofdstad van Nederland is Amsterdam.
Input via stdin
Een krachtige feature is het gebruik van pipes om input door te geven:
$ echo "Leg uit wat deze JavaScript functie doet: function fibonacci(n) { return n <= 1 ? n : fibonacci(n-1) + fibonacci(n-2); }" | gemini
Dit is vooral handig voor het analyseren van code files:
$ cat script.js | gemini -p "Analyseer deze code en geef verbeterpunten"
Verschillende AI-modellen gebruiken
Gemini CLI ondersteunt verschillende modellen. Het standaard model is gemini-2.5-pro
, maar je kunt ook andere modellen specificeren:
$ gemini -m "gemini-1.5-flash" -p "Maak een simpele HTML pagina"
De beschikbare modellen zijn:
gemini-2.5-pro
(standaard) - Meest krachtig voor complexe takengemini-1.5-flash
- Sneller voor eenvoudige takengemini-1.5-pro
- Balans tussen snelheid en kwaliteit
Geavanceerde functies
File context meegeven
Een van de krachtigste features is het meegeven van file context. Hiermee kan Gemini de inhoud van je project begrijpen:
$ gemini -a -p "Analyseer mijn project en geef feedback op de code architectuur"
De -a
of --all_files
flag zorgt ervoor dat alle files in de huidige directory worden meegenomen als context.
Let op: Wees voorzichtig met deze optie in grote projecten, aangezien dit veel tokens kan kosten.
Sandbox modus
Voor veilige code-uitvoering biedt gemini-cli een sandbox modus:
$ gemini -s -p "Schrijf een Python script dat de Fibonacci reeks berekent en voer het uit"
De -s
of --sandbox
flag zorgt ervoor dat gegenereerde code veilig wordt uitgevoerd in een geïsoleerde omgeving.
YOLO modus
Voor wie wat avontuurlijker is, is er de YOLO (You Only Live Once) modus. Deze accepteert automatisch alle acties die Gemini voorstelt:
$ gemini -y -p "Refactor mijn JavaScript code en pas de wijzigingen toe"
Waarschuwing: Gebruik YOLO modus alleen in projecten waar je een backup van hebt, aangezien wijzigingen automatisch worden toegepast.
Debug modus
Voor ontwikkelaars die willen begrijpen wat er onder de motorkap gebeurt:
$ gemini -d -p "Analyseer deze error message"
Debug modus geeft meer informatie over de API-calls en verwerkingsprocessen.
Praktische voorbeelden
Code review automatiseren
$ git diff HEAD~1 | gemini -p "Review deze code changes en geef feedback"
Dit combineert Git's diff output met Gemini's code review capabilities.
Documentation genereren
$ cat src/utils.js | gemini -p "Genereer JSDoc commentaren voor deze functies"
Error debugging
$ npm test 2>&1 | gemini -p "Analyseer deze test errors en geef oplossingsrichtingen"
Commit messages verbeteren
$ git diff --cached | gemini -p "Schrijf een duidelijke commit message voor deze changes"
Shell integratie
Bash alias maken
Voor veelgebruikte commando's kun je handige aliases maken:
# In je ~/.bashrc of ~/.zshrc
alias gai="gemini -p"
alias gcode="gemini -p 'Review deze code:'"
alias gexplain="gemini -p 'Leg uit:'"
Nu kun je eenvoudig gebruik maken van:
$ cat complex-algorithm.js | gcode
$ gexplain "wat doet async/await in JavaScript?"
Script integratie
Gemini CLI werkt uitstekend in shell scripts:
#!/bin/bash
# AI-powered commit message generator
generate_commit_message() {
local diff_output=$(git diff --cached)
if [ -z "$diff_output" ]; then
echo "Geen staged changes gevonden"
return 1
fi
echo "$diff_output" | gemini -p "Schrijf een heldere commit message voor deze changes. Gebruik conventional commits format."
}
# Gebruik
generate_commit_message
Tips en best practices
1. Context is koning
Hoe meer relevante context je meegeeft, hoe betere resultaten je krijgt. Gebruik file context slim:
# Specifieke files meegeven
$ gemini -p "Analyseer deze component" < src/components/UserProfile.jsx
2. Pipe chains gebruiken
Combineer meerdere tools voor krachtige workflows:
$ git log --oneline -10 | gemini -p "Analyseer deze commit history en geef feedback op de commit messages"
3. Output formatting
Voor gestructureerde output kun je specifiek om formaten vragen:
$ gemini -p "Maak een checklist voor code review in markdown format"
4. Model selectie
- Gebruik
gemini-1.5-flash
voor snelle, eenvoudige taken - Gebruik
gemini-2.5-pro
voor complexe analysis en code generatie - Test verschillende modellen om te zien wat het beste werkt voor jouw use case
Troubleshooting
Veelvoorkomende problemen
API Key issues
Error: Please set an Auth method in your .gemini/settings.json
Oplossing: Controleer of je API key correct is geconfigureerd:
$ cat ~/.gemini/settings.json
$ echo $GEMINI_API_KEY
Rate limiting
Error: Rate limit exceeded
Oplossing: Wacht even voordat je het opnieuw probeert, of gebruik een lichter model zoals gemini-1.5-flash
.
Geen internet connectie
Error: getaddrinfo EAI_AGAIN
Oplossing: Controleer je internetverbinding en firewall instellingen.
Toekomst van AI in development
Gemini CLI is meer dan alleen een handige tool - het vertegenwoordigt een verschuiving naar AI-geïntegreerde development workflows.
Door AI-functionaliteit direct in je terminal te brengen, verdwijnt de drempel om AI te gebruiken voor dagelijkse development taken. Het wordt net zo natuurlijk als het gebruiken van grep
, awk
of andere Unix-tools.
De integratie met bestaande command-line tools via pipes en scripts opent de deur naar volledig geautomatiseerde, AI-aangedreven workflows. Denk aan:
- Automatische code reviews bij elke commit
- Intelligente error analysis in CI/CD pipelines
- AI-gegenereerde documentatie updates
- Smart refactoring suggestions
Done!
Gemini CLI brengt de kracht van Google's AI direct naar je terminal. Door de combinatie van eenvoud, kracht en integratiemogelijkheden is het een waardevolle toevoeging aan elke developer's toolkit.
Of je nu snel een code snippet wilt laten uitleggen, een complexe algorithm wilt analyseren, of je hele development workflow wilt automatiseren - gemini-cli maakt het mogelijk.
Deze blog post is trouwens ook een klein experiment - geschreven met behulp van Copilot om te kijken hoe AI kan bijdragen aan technische content. Een mooie synergie tussen mens en machine!
Tijd om je terminal wat slimmer te maken!
Nuttige links
- Gemini CLI op NPM
- Google AI Studio - Voor het verkrijgen van API keys
- Gemini API Documentatie
- Google AI SDK voor JavaScript