Werk, Dormiq

Portfolio.

Zes AI-systemen en automatiseringen, gebouwd voor eigen producten, klanten en mijn eigen werkpraktijk. Per case: het probleem, wat ik bouwde, de stack en wat het opleverde.

Stack Anthropic Claude, OpenAI, LangGraph, Supabase, Meta API, Astro, React, Python
Periode 2023, heden

Eigen product, live in productie

Case 01

FitFi.ai

AI-stijlplatform met multi-agent recommender

Probleem

Mensen weten vaak niet welke stijl bij hen past, raken verdwaald in het kledingaanbod, en doen miskopen. Generieke aanbevelingssystemen helpen niet, persoonlijke styling op schaal werkt niet.

Wat ik bouwde

Een quiz vertaalt smaak en context naar een persoonlijk profiel. Een ranking-engine scoort producten. Verschillende agents zijn verantwoordelijk voor smaak-inferentie, outfit-compositie en uitleg. Een eval-suite controleert agent-outputs voor en na elke modelwissel.

Resultaat

Live op fitfi.ai met dagelijks gebruik. Migratie van GPT-4 naar Claude duurde twee uur dankzij de eval-suite. Discipline-leerpunt: in productie is eval-infrastructuur belangrijker dan modelkeuze.

  • TypeScript, React, Vite
  • Supabase Postgres + pgvector
  • LangGraph, Anthropic Claude API
  • OpenAI, Netlify edge functions
fitfi.ai / mijn rapport

Smart casual, herfst

94% match

Werkdag, neutraal

87% match

Weekend, warm

82% match

archetype Warm Classic, herfst-palet, voorkeur voor wol en linnen.

Geïllustreerde mockup, geen echte gebruikersdata.

Klantopdracht, in productie

Case 02

Financieel beheersysteem voor een MKB-onderneming

Atomic transacties, multi-bedrijf, audit-trail

Probleem

Verkoopsters werken op events, met provisies, bonussen en directe contante uitbetalingen uit kassa-safes. De handmatige administratie liep vast op inconsistente totalen, vergeten correcties en ontbrekende audit-trail. Operationeel verantwoordelijke moest cijfers achteraf altijd narekenen.

Wat ik bouwde

Een payoff-systeem met atomic transacties op database-niveau. Bonus-uitbetaling, kostregistratie, kassamutatie en debt-administratie gebeuren in één Postgres-functie, vergelijkbaar met dubbele boekhouding. Real-time overzicht per medewerker, activity-feed met filtering, multi-bedrijf scheiding.

Resultaat

Eerder gevonden data-inconsistenties hersteld (orphaned mutaties, verkeerd tekengebruik in totalen). Uitbetalingen worden nu zelfstandig verwerkt zonder narekenen achteraf. Geen support-belletjes meer over kloppende balansen.

  • React, TypeScript
  • Supabase Postgres met RPC's in PL/pgSQL
  • Row-level security policies
  • Atomic transacties, security definer
app / dashboard

Goedemorgen, demo-admin

Per-bedrijf overzicht met saldi en dagmutaties.

3 items vragen aandacht

Onderneming A

Digitaal € 2.640
Kassa € 3.730

Onderneming B

Digitaal € 0
Kassa −€ 1.800

Onderneming C

Digitaal € 0
Kassa € 0
Geïllustreerde mockup, geen echte data of bedrijfsnamen.

Eigen product, gebruikt door klant

Case 03

ATS met AI-matching

Semantic search, kandidaat-ranking, recruitment workflow

Probleem

Recruiters lezen honderden CV's, missen relevante kandidaten door zoekwoord-mismatches en kunnen geen objectieve ranking maken op werkelijke skill-overlap. Bestaande ATS-systemen scoren op tekst, niet op betekenis.

Wat ik bouwde

Vacatures en CV's worden geëmbed in een vector-database. Een LLM beoordeelt kandidaten op skill-overlap en levert een redenering per match. Volledige pipeline van sourcing tot aanbod, met intake-fase, klantgesprek en hold-status. Voor de klant geïntegreerd in hun bestaande workflow, team meegenomen in de overgang.

Resultaat

Het team werkt nu dagelijks met semantische matching in plaats van trefwoord-zoeken. Adoptie ging soepel: het systeem leverde direct kandidaten op zonder dat het extra tijd kostte om mee te werken.

  • Python, FastAPI
  • Supabase pgvector, OpenAI embeddings
  • Anthropic Claude voor reasoning
  • React frontend
app / pipeline

Pipeline, 4 vacatures actief

Gesourced3

K. de Vries

DevOps, senior

96%

M. Janssen

Backend, medior

71%
Voorgedragen2

S. Achmed

Cloud, senior

88%

R. Bakker

Front-end

64%
2e gesprek1

L. Hoogendoorn

Security eng.

92%

Vandaag · 14:00

Geïllustreerde mockup met fictieve kandidaten. Geen echte personen of opdrachtgevers.

Eigen product, autonomous agent

Case 04

Advertising-monitor met WhatsApp-alerts

Anomaly detection op Meta Ads, met human-in-the-loop

Probleem

Meta Ads-campagnes vragen dagelijkse monitoring op CPM, CPC en ROAS. Het ruisniveau is hoog, dus kleine afwijkingen worden te laat opgemerkt of er wordt overdreven gereageerd op normale variatie.

Wat ik bouwde

Een agent haalt via de Meta Graph API campagne-data op, detecteert statistische afwijkingen ten opzichte van het 7-daagse gemiddelde, en stuurt alleen bij actiewaardige signalen een WhatsApp-bericht. Een LLM levert een korte uitleg en concreet voorstel, geen ruwe data-dump. De mens beslist of er actie volgt.

Resultaat

Geen losse dagelijkse rapportages meer. Eén bericht per alert, met context. Het werkt omdat de drempel hoog genoeg is dat elk bericht aandacht waard is.

  • Python, Meta Graph API
  • WhatsApp Business API
  • Anthropic Claude voor classificatie en uitleg
  • Cron-gebaseerd scheduling
N

Nova

online · advertising-monitor

⚠️ Q2 awareness CPM +43% vs 7-daagse gemiddelde

Twee adsets dragen 90% van de stijging. Audience overlap met "Q2 conversie" gedetecteerd.

Voorstel: pauzeer "Q2-aw-broad" of verlaag budget −30%.

10:14

Pauzeer hem, kijk vanavond verder.

10:16

✓ "Q2-aw-broad" gepauzeerd, log staat in dashboard.

10:16

Geïllustreerde mockup van een werkelijke berichtflow. Geen echte campagnedata.

Werkwijze, productiviteit

Case 05

Custom Claude Skills

Herbruikbare AI-vaardigheden voor terugkerend werk

Probleem

Generieke LLM-prompts werken slecht voor terugkerende, domein-specifieke taken. Niet iedereen wil of kan prompts schrijven, dus AI-oplossingen worden niet hergebruikt en blijven persoonsgebonden.

Wat ik bouwde

Een set herbruikbare Claude-skills, elk met vastgelegde instructies, tools en outputs. Een collega of klant tikt één commando in en krijgt het resultaat. Geen prompt-engineering nodig. Voorbeelden: Meta Ads-analyse, time-tracking via vrije tekst, content-workflows voor publicatie.

Resultaat

AI wordt overdraagbaar. Een nieuwe medewerker kan binnen een dag de skills gebruiken zonder uitleg over hoe je een prompt schrijft. De methode telt, niet de individuele wizardry.

  • Anthropic Claude API
  • MCP-servers voor tool-integratie
  • TypeScript, configurabele tool-definities
  • Geleverd als CLI of als chat-skill
claude · ~/werk

$ claude /meta-ads-analyse --last 30d

Loading Meta Ads data, laatste 30 dagen,

142 campagnes, 18 actief.

Patroon-analyse...

Gevonden: 3 actiewaardige patronen.


ROAS-daling op brand-search, week 47, −38%

CTR-piek op video-broad, niche match, +112%

Audience-overlap tussen Q4-EU en Q4-NL, 41%


Adviezen geschreven naar werk-rapport.md.

$

Geïllustreerde mockup van een skill-output. Geen echte advertentiedata.

Werkpraktijk, dagelijks in gebruik

Case 06

Eigen AI Operating System

Wat ik bij klanten implementeer, eerst op mezelf getest

Probleem

Als individu met meerdere projecten parallel verlies je context, herhaal je beslissingen, en lekt tijd weg aan "waar zat dat ook alweer". Dezelfde dynamiek zie ik bij teams die AI willen adopteren, maar het inzetten als losse chats in plaats van als systeem. Dan blijft AI persoonsgebonden en raken patronen niet vastgelegd.

Wat ik bouwde

Een vault van markdown-bestanden met persistente memory, een set Claude-skills voor terugkerend werk (dagplanning, wekelijkse retrospectie, audit, content), scheduled jobs via launchd, en MCP-integraties met Calendar, Drive en Moneybird. Eén systeem dat over sessies en projecten heen werkt, met git als audit-trail.

Resultaat

Vier projecten parallel runnen als individu zonder overzicht te verliezen. Belangrijker: ik weet uit dagelijks gebruik wat AI-adoptie betekent binnen een gestructureerde werkomgeving. Documentatie, governance, overdracht. Niet uit een PDF, uit eigen praktijk. Wat ik klanten leer, doe ik eerst zelf.

  • Claude Code, Claude API
  • Markdown + YAML frontmatter
  • launchd voor scheduling
  • MCP-servers (Calendar, Drive, Moneybird)
  • Git voor audit-trail
aios-luc · werk-modus LIVE

Skills 14

/ochtend 07:00 · daily
/pulse vr 17:00
/yt-transcribe queued
/audit monthly
/level-up on-demand
/ship on-demand

Activity 07:14 CET

/ochtend triggered (launchd)

calendar fetched (3 events)

vault.log scanned (24u)

git status (4 repos) → 2 PRs open

moneybird open (1 invoice)

Goedemorgen, Luc.

1 Klant-update: payoff-overview review

2 FitFi: LangGraph port testen

3 Schrijfsel: agent-evals draft

247 sessies · 14 skills · 4 projecten parallel v2026.05
Geïllustreerde mockup van de live mission-control. Persoonlijke werkpraktijk.

Werkwijze

Drie principes die in elke case terugkomen.

01

Overdraagbaar

Een collega of opvolger moet binnen een week begrijpen hoe het systeem werkt en het kunnen aanpassen. Geen ondoorzichtige notebooks, wel duidelijke modules, expliciete prompts en gedocumenteerde keuzes.

02

Gemeten

Elk LLM-systeem heeft een eval-suite voordat het in productie gaat. Niet om wetenschappelijk te zijn, wel om bij een modelwissel binnen uren in plaats van weken te kunnen schakelen.

03

Compliance-bewust

Data-grenzen, audit-trails en wie waarop een actie heeft uitgevoerd, zit in het ontwerp. Niet als laag eroverheen. Komt uit acht jaar werken in gereguleerde sectoren.

Achtergrond

Achter de cases.

Hoe dit begon

Ik begon in 2023 met AI, naast mijn werk als accountmanager bij JCC Software. Wat me daar bezighield was niet de salesmeting maar de vraag hoe dingen sneller en slimmer konden. Dat was niet mijn rol, dus deed ik het in eigen tijd. Python leren, ChatGPT inzetten op processen die anders een dag kostten en met de juiste prompt in een uur klaar waren.

Toen Genrise me freelance vroeg in 2025, had ik de springplank om volledig over te stappen. Dormiq ging open. Sindsdien fulltime bouwen.

Hoe ik werk

Ik begin projecten met veel enthousiasme en wil ze ook echt afmaken. Perfectionist, dat is een eerlijke zelfkennis: het kan voorkomen dat ik te lang doorga op een project omdat het me niet zint dat het nog niet werkt zoals het zou moeten. Collega's noemen me een fijne sparringspartner. Door out of the box te denken kom ik vaak met creatieve invalshoeken.

Wat ik aanneem, en wat niet

Heldere scope is een voorwaarde. Als het probleem niet scherp is, of als beslissingen langs vijf lagen moeten, dan word ik niet productief en de klant ook niet. Liever één beslisser en een goed afgebakend stuk dan een breed mandaat dat eindeloos uitwaaiert.

Dormiq

Dormiq is mijn bedrijf, de kapstok waar al mijn agents, producten en klantwerk onder hangen. Geen bureau, geen reseller. Eén persoon die bouwt, en het werk dat daaruit komt.

Volgende stap

Graag een gesprek.

Vragen, vergelijkbaar werk, of een idee om door te denken? Ik plan graag een eerste gesprek in. Aan tafel of via call.