Ga naar hoofdinhoud
AcademytutorialWorkstation Setup leerlijn — Deel 1: Wat installeer je, en waarom?

Workstation Setup leerlijn — Deel 1: Wat installeer je, en waarom?

Een nieuwe Conduction-developer heeft een specifieke combinatie aan tools nodig — Claude Code, Docker, Nextcloud lokaal, Playwright, een handvol globale instellingen. Voor we door installers gaan klikken, legt dit deel uit wat er op het menu staat en welke keuzes je als eerste maakt. Eerste van zes korte modules.

TutorialWorkstationSetupOnboardingWSL2DockerTutorial series
11 min read

Een werkend Conduction-workstation heeft een specifieke combinatie aan tools nodig: Claude Code, Docker, een lokaal draaiende Nextcloud, Playwright, een handvol globale Claude-instellingen en hooks, en een werkende gh CLI. Nieuwe developers verliezen vaak hun eerste dag (of twee) aan setup-puzzels die wij intern al opgelost hebben. Deze leerlijn van zes delen brengt je in één avond van een schone laptop naar een werkend workstation. Deel 1 — dit deel — beantwoordt de vraag wat installeer je, en waarom voor je door installers gaat klikken.

De aanbevolen combinatie

De stack van Conduction is met reden opinionated: elke tool hieronder is gekozen omdat de volgende tool in de keten erop leunt. De standaardcombinatie is:

Waarom deze stack en geen andere?

Een paar veelgehoorde vragen van mensen die eerder iets anders hebben gebruikt:

"Mag ik macOS gebruiken?" De canonical workstation-setup-doc beschrijft alleen Windows + WSL2. De concepten (Docker Desktop, VS Code + Claude Code, Node, PHP, Composer, gh, OpenSpec, Playwright) vertalen zich naar macOS via Homebrew, maar de installatiecommando's zul je zelf moeten aanpassen.

"Mag ik plain Linux gebruiken?" Zelfde verhaal — de canonical doc is Windows-first, dus op native Linux sla je het WSL-stuk over en pas je de installatiecommando's aan je distro aan. De concepten blijven gelijk.

"Waarom niet native Windows zonder WSL?" Omdat de helft van de stack Linux-first is: Nextclouds officiële Docker-images, PHP CLI-tooling, bash-hooks en de gh CLI gedragen zich allemaal beter op Linux. WSL2 geeft je een snelle Linux-VM die zó goed met Windows integreert dat je meestal vergeet dat het een apart OS is.

"Kan ik de web-versie van VS Code gebruiken?" Nee. We leunen op lokale bestandstoegang, de Claude Code-extensie en MCP-servers die filesystem-toegang nodig hebben — die werken geen van allen in de web-build.

"Mag ik een andere editor — Cursor, JetBrains, Vim?" In theorie ja. In de praktijk noemt de canonical workstation-setup-doc VS Code + de Claude Code-extensie als de standaard, en de meeste interne docs gaan daarvan uit. Begin met VS Code; switch later als het echt moet.

Wat je onderweg gaat installeren

Een bird's-eye view van elke tool, gegroepeerd per deel waarin hij geïnstalleerd wordt. Gebruik dit als je boodschappenlijst:

ToolWat het doetDeel
WSL2 + Ubuntu 24.04 (alleen Windows)Het Linux-subsysteem waar je daadwerkelijk commando's in draaitDeel 2
Docker DesktopContainer-runtime — draait Nextcloud, db, n8nDeel 2
VS CodeEditor, plus de Claude Code-extensieDeel 2
VS Code-extensies (Claude Code, WSL, Docker, Vue, PHP Intelephense, ESLint)Editor-ondersteuning voor de talen en de AI-assistentDeel 2
Node 20+ (via nvm)Vereist voor OpenSpec CLI en Vue-toolingDeel 2
PHP 8.1+ en ComposerBackend-taal van elke Nextcloud-appDeel 2
Codeberg SSH-sleutel + tea CLIPrimaire git-auth bij Conduction (Codeberg is de nieuwe canonical host)Deel 2
GitHub CLI (gh)Secundaire host — nog steeds nodig voor Hydra-cron-scripts en een handvol niet-gemigreerde repo'sDeel 2
OpenSpec CLISpec-first development-toolingDeel 2
Playwright Chromium-binaryBrowser-automatisering voor de test-skillsDeel 2
Claude Code (in VS Code)Dagelijkse AI-pair-programmerDeel 3
Globale Claude-instellingen + hooksVerplicht veiligheidsbeleid op user-niveauDeel 3
Conduction MCP-serverLive verbindingen met Conduction-systemen tijdens het werkDeel 4
Nextcloud (in Docker)Lokale kopie van het platform waar we apps voor bouwenDeel 5
Optioneel: Ollama + lokale LLMLokale AI voor overnight batch-jobsHier overgeslagen, zie local-llm.md

Dat is het complete menu. Je raakt niet elk item dagelijks aan, maar elk item komt minstens één keer terug in normaal Conduction-werk.

Wat zit er in elk deel

De leerlijn is bewust opgesplitst in korte modules. Vanavond geen tijd? Stop na deel 2 — je machine is dan al een bruikbaar dev-workstation, alleen zonder Claude Code aangesloten. De rest kan wachten tot morgen.

DeelWat je doetWanneer je het kunt overslaan
1 — Wat installeer je, en waarom?Het overzicht dat je nu leest. Keuzes voor de installs.Nooit. Lees het één keer.
2 — De basis inrichtenWSL2, Docker Desktop, VS Code + extensies, Node, PHP, Codeberg-auth (SSH + tea), gh, OpenSpec, Playwright.Als je al een werkende WSL + Docker + Node + PHP + git-auth-setup hebt.
3 — Claude Code installeren en configurerenClaude Code installeren, inloggen, de verplichte globale instellingen en safety-hooks installeren.Nooit — de globale instellingen zijn verplicht bij Conduction.
4 — De MCP-server aansluitenJe Claude Code aan de Conduction-MCP-server koppelen via .mcp.json.Als je alleen buiten Conduction-projecten gaat werken.
5 — Nextcloud lokaal draaienNextcloud draaien op localhost:8080 om tegen te testen.Als je alleen tooling-werk doet dat geen draaiende Nextcloud nodig heeft.
6 — Klaar — wat nu?Een korte kaart van de volgende leerlijnen: OpenSpec, Skills, Build an App.Nooit — lees het om te weten waar je verder kunt.

Hoe lang duurt het écht?

Reken op één avond op een schone Windows-machine met een redelijke verbinding. Een flink stuk daarvan zijn downloads en installer-dialogen die op de achtergrond draaien terwijl je iets anders doet; het hands-on-werk is korter.

Waar je rekening mee moet houden:

  1. WSL2-install vraagt om een reboot. Begin er niet vijf minuten voor een meeting aan. Plan het aan het eind van de dag.
  2. composer install kan falen omdat vendor/ van root is na de eerste Docker-run. Deel 2 loopt door de fix heen (staat ook in de canonical workstation-setup-doc).
  3. De Playwright Chromium-download is fors. Doe die vanuit een plek met een stabiele verbinding, niet vanuit de trein.

Loop je tegen iets anders aan? De canonical workstation-setup-doc is de bron van waarheid.

Wat deze leerlijn volgt

Deze leerlijn is een begeleide wandeling door de canonical workstation-setup.md in de Conduction .github-repo. Die doc beschrijft Windows + WSL2 + Docker Desktop + VS Code. macOS en native Linux komen daar niet aan bod — kies je voor die route, dan pas je dezelfde concepten zelf aan.

Een opmerking over volgorde

Wees niet in de verleiding om Claude Code als eerste te installeren en "die globale instellingen later wel" te doen. De globale instellingen bevatten een hook die voorkomt dat Claude destructieve shell-commando's draait zonder akkoord — Claude Code draaien zónder die hooks vooraf betekent dat elk commando dat Claude voorstelt zonder vangnet wordt uitgevoerd. Deel 3 installeert daarom bewust Claude Code samen met de globale instellingen.

Test jezelf

Vijf korte vragen om te checken of je dit deel begrepen hebt. Vastgelopen? Klik Hint. Curieus naar het antwoord? Klik Antwoord.

1. Welke combinatie van OS + tooling raadt Conduction aan, en wat is de belangrijkste reden?

Hint

Drie woorden voor de OS-laag, één voor de editor, één voor de AI-assistent. De reden gaat over de taal achter Nextcloud en het grootste deel van de tooling.

Antwoord

Windows 11 + WSL2 + Ubuntu 24.04 + Docker Desktop + VS Code + Claude Code-extensie is de standaard. macOS en native Linux zijn beide ondersteunde alternatieven; Windows zonder WSL is niet aanbevolen.

De voornaamste reden: de helft van de stack — Nextcloud-images, PHP-tooling, bash-hooks, de gh CLI — draait betrouwbaarder op Linux dan op native Windows. WSL2 geeft je een snelle Linux-omgeving die zó strak met Windows integreert dat je meestal vergeet dat het een apart OS is.

2. Waarom installeren we niet gewoon Docker Desktop op Windows en slaan we WSL over?

Hint

Docker is niet het enige onderdeel dat Linux nodig heeft.

Antwoord

Omdat de helft van het workstation geen Docker is:

  • De gh CLI is op Linux het meest in zijn element.
  • PHP CLI-tooling (Composer, phpcs, phpstan) gedraagt zich consistenter op Linux.
  • Bash-hooks (de hooks van de globale Claude-instellingen) draaien alleen op Linux/macOS.
  • Veel interne scripts en skills gaan uit van een POSIX-shell.

Je zou alleen Docker op Windows kunnen draaien en WSL overslaan, maar dan loop je tegen een muur aan zodra je een bash-hook of composer install direct moet uitvoeren.

3. Welke stap in de leerlijn moet je niet vlak voor een meeting starten, en waarom?

Hint

Kijk naar de lijst met tijdvreters. Eén specifieke stap is halverwege onvermijdelijk en kun je niet pauzeren.

Antwoord

De WSL2-install in deel 2. Die vraagt halverwege om een Windows-reboot, en Ubuntu maakt zijn first-time setup pas na die reboot af. Begin je er vijf minuten voor een meeting aan, dan kom je óf te laat binnen, óf je komt terug bij een half-geconfigureerde Ubuntu-prompt waarvan je de context inmiddels kwijt bent.

De andere trage stap om rekening mee te houden is de Playwright Chromium-download (~300 MB) — geen harde onderbreking, maar wel merkbaar traag op een trein- of koffietent-wifi.

Vuistregel: plan de WSL2-stap aan het begin van een ononderbroken blok, het liefst aan het eind van de werkdag, zodat de reboot valt op een moment dat er niets anders om aandacht vraagt.

4. Welke twee delen van de leerlijn zijn technisch optioneel, en waarom?

Hint

De ene is alleen optioneel als je nooit aan een Conduction-project komt; de andere alleen als je nooit een draaiende Nextcloud nodig hebt.

Antwoord
  • Deel 4 — De MCP-server aansluiten — alleen optioneel als je volledig buiten Conduction-projecten gaat werken. Voor iedereen die daadwerkelijk Conduction-werk doet, is de MCP-server datgene wat Claude Code directe toegang geeft tot onze systemen tijdens het werk.
  • Deel 5 — Nextcloud lokaal draaien — alleen optioneel voor puur tooling-werk (docs schrijven, aan de website werken, Hydra-config). Zodra je een Nextcloud-app aanraakt, heb je een lokale Nextcloud nodig om tegen te testen.

Deel 1, 2, 3 en 6 zijn nooit optioneel. Met name deel 3 — de globale Claude safety-hooks — is verplicht voor al het Conduction-werk.

5. Waarom installeert deel 3 Claude Code samen met de globale safety-hooks, in plaats van eerst Claude Code?

Hint

Denk aan wat Claude Code kan zodra het geïnstalleerd is, en wat de globale hooks voorkomen.

Antwoord

Omdat Claude Code shell-commando's kan uitvoeren vanaf het moment dat het geïnstalleerd is. De globale instellingen bevatten een hook die destructieve shell-commando's zonder expliciete goedkeuring blokkeert — rm -rf, git push --force, git reset --hard, en zo verder.

Claude Code installeren zonder die hooks betekent dat de allereerste commando's die Claude voorstelt zonder vangnet worden uitgevoerd. Door ze samen te installeren ligt het vangnet er al voor Claude ook maar één keer je shell raakt.

Volgende stap

Nu het overzicht klaar is, is het tijd om de échte tooling te installeren.