Ga naar hoofdinhoud
Case · Overige sectoren30 juli 20267 min lezen

Onze eigen AI-business-assistent: AI diep in de bedrijfsvoering

341k
regels TypeScript in dagelijks eigen gebruik
799
Circa 7 maanden doorlopende ontwikkeling: 799 commits en 438+ pull requests, releases via CI/CD met rollback
77 / 56
77 databasemodellen en 56 API-routers die klanten, taken, financiën, doelen en processen modelleren
298
298 testbestanden met Playwright en Vitest als kwaliteitsgate op elke release
Illustratief: bureauscherm met een ingeplande dagkolom die uitwaaiert naar mail-, agenda- en documentpictogrammen — beeld bij de case over onze eigen AI-business-assistent
Uitdaging

De uitdaging

De meeste AI-assistenten in bedrijven staan aan de zijkant. Ze beantwoorden vragen in een apart chatvenster, maar weten niet wie je klanten zijn, welke factuur openstaat, wat er morgen in je agenda staat of wat je dit kwartaal wilt bereiken.

Wij wilden weten wat er gebeurt als je die scheiding weghaalt — als een AI-assistent niet naast de bedrijfsvoering staat maar erin zit. Die vraag beantwoordden we niet in een presentatie maar in code: we bouwden onze eigen AI-business-assistent en runnen ons bedrijf er sinds januari 2026 dagelijks op.

Het probleem dat we voor onszelf oplosten had vier kanten:

  • Planning en werk leven in gescheiden systemen. Taken staan in een takenlijst, tijd staat in de agenda, en de vertaling tussen die twee — wat past er vandaag echt nog bij, gegeven deadlines en afspraken — doet een mens elke ochtend opnieuw met de hand.
  • Een generieke AI-assistent kent je bedrijf niet. Zonder toegang tot klanten, producten, financiën, doelen en processen blijft elk antwoord algemeen. De relevante context zit niet in het taalmodel, maar in je eigen data.
  • Adviseren is niet uitvoeren. Een assistent die vertelt wat er moet gebeuren, verplaatst het werk niet; iemand moet de taak alsnog aanmaken, de herinnering alsnog sturen, het rapport alsnog opstellen.
  • De administratie is een eiland. Facturen, betalingen en uitgaven leven in het boekhoudpakket, terwijl de beslissingen die eruit volgen — nabellen, herinneren, escaleren — elders en handmatig gebeuren.

Dit is bewust een intern platform: het is geen kant-en-klaar pakket dat we verkopen. De reden dat het hier als case staat, is dat het laat zien welk integratieniveau haalbaar is — en dus ook voor de bedrijfsvoering van een opdrachtgever gebouwd kan worden.

Aanpak & oplossing

De aanpak en oplossing

We bouwden de assistent als één samenhangend platform in plaats van als losse AI-functies bovenop bestaande tools.

Na ongeveer zeven maanden doorlopende ontwikkeling staat er circa 341.000 regels TypeScript, verdeeld over 77 databasemodellen en 56 API-routers, met 298 testbestanden en releases via een CI/CD-pijplijn met rollback-workflow. Het draait in productie en wordt intern dagelijks gebruikt, in twee werkruimtes: een zakelijke en een persoonlijke.

1. AI-taakplanning die van je feedback leert

De kern is een planner die taken zelf inroostert op basis van deadline, prioriteit en werkelijk beschikbare tijd. Hij vult dus geen lijst, maar een kalender.

Daaromheen zit een feedback-loop: het systeem registreert welke voorgestelde planningen worden geaccepteerd, welke worden aangepast en welke worden afgewezen, en stuurt volgende voorstellen daarmee bij. Een blok dat je zelf hebt verplaatst wordt gelockt en daarna niet meer automatisch verzet — de assistent overschrijft geen menselijke beslissing.

Ontwerpdoel van deze feedback-loop: de planning moet beter aansluiten op hoe er in de praktijk gewerkt wordt naarmate hij langer draait. Dat is het gestelde ontwerpdoel; we hebben geen gemeten leercurve of productiviteitscijfer om dat mee te onderbouwen.

Eromheen zit volwaardig projectmanagement: Kanban, een Gantt-/timelineweergave, milestones, terugkerende taken en tijdregistratie met planned-versus-actual-rapportage. Die laatste is belangrijk voor de planner zelf: geregistreerde tijd is het enige eerlijke tegenwicht tegen optimistische inschattingen.

2. Een AI-assistent gekoppeld aan agenda, facturatie en chat

Een planner die de agenda niet kent, plant naast de werkelijkheid. Daarom synchroniseert het platform in twee richtingen met Google Calendar en Microsoft Outlook, elke vijftien minuten via jobqueues.

Afspraken uit beide agenda's zijn zo bezette tijd voor de planner; ingeplande blokken verschijnen omgekeerd in de agenda.

De boekhouding is gekoppeld via Invoice Ninja: klanten, facturen, betalingen en uitgaven stromen naar de kennisbank van de assistent, zodat financiële context onderdeel is van elk antwoord in plaats van een apart tabblad.

Op die koppeling draait ook een automatische herinneringsstroom voor openstaande facturen, met escalatietrappen op 0, 7, 14, 30 en 45 dagen — van een vriendelijke herinnering tot een aankondiging van incasso. Precies het opvolgwerk dat in een klein bedrijf structureel blijft liggen.

De assistent is bereikbaar waar het werk toch al gebeurt: via Slack, Microsoft Teams, Discord en Telegram, aangevuld met realtime notificaties en web-push. Taakbeheer gaat in natuurlijke taal via een orchestrator met tools voor taken, CRM, doelen, rapporten, zoeken en analyse; je beschrijft wat er moet gebeuren en de assistent kiest de bijbehorende actie.

3. Een RAG-kennisbank over je eigen bedrijfsdata

De inhoudelijke laag is een kennisbank op PostgreSQL met pgvector: semantisch zoeken met een full-text fallback, over bedrijfsmodellen voor klanten, producten, financiën, doelen en processen.

Dat is de RAG-component (retrieval-augmented generation): niet het taalmodel bepaalt wat het over dit bedrijf weet, maar de zoekstap die eraan voorafgaat. Wie een klant hernoemt of een doel bijstelt, verandert daarmee direct wat de assistent antwoordt — zonder dat er iets aan het model verandert.

Daarop draaien advisory-rapporten die meerdere AI-perspectieven combineren: een dagelijkse briefing, een weekrapport en meeting-voorbereidingen, met topprioriteiten, risico-alerts en concrete action-items. Die action-items zijn geen tekst maar objecten met een opvolg-workflow, zodat een advies niet doodloopt in een document dat niemand herleest.

4. Van adviseren naar zelf uitvoeren: autonome AI-agents

De laatste stap is waar de meeste AI-implementaties stoppen. Het platform draait AI-agents in een sandbox, met een sessie-lifecycle, capaciteitsrouting en geheugen per werkruimte — de assistent kan daardoor zelf werk uitvoeren in plaats van er alleen over te adviseren.

Wie wil weten hoe zo'n agent technisch in elkaar zit, leest hoe je een AI-agent bouwt; wat wij daarvan voor opdrachtgevers bouwen staat op onze pagina AI agent laten maken.

5. De laag eronder: multi-provider AI, meertaligheid en schaal

De AI-laag is bewust multi-provider met automatische fallback: er lopen onder meer de Claude-modellen van Anthropic in mee, plus lokale modellen voor embeddings, en het tokenverbruik wordt per werkruimte bijgehouden. Valt één provider weg, dan blijft het platform werken — een eis die zwaarder weegt naarmate je bedrijfsvoering er echt van afhangt.

Het platform is tweetalig (Nederlands en Engels), waarbij de taal van de werkruimte ook de gegenereerde rapporten stuurt. De stack: Next.js (App Router), TypeScript en React aan de voorkant; PostgreSQL met pgvector, Prisma en tRPC eronder; BullMQ met Redis voor de jobqueues en Socket.io voor realtime updates; Playwright en Vitest voor de tests; Docker voor uitrol; authenticatie via Microsoft Entra ID.

Wat deze case wel en niet laat zien

Wat hier staat is de gebouwde functionaliteit en de omvang van een codebase die we zelf dagelijks gebruiken — 799 commits en ruim 438 pull requests sinds januari 2026.

Wat er niet staat, zijn gebruikscijfers: hoeveel taken er zijn ingepland, hoeveel tijd het scheelt of hoe hoog de beschikbaarheid is. Die data verzamelen we niet gestructureerd, dus claimen we hem ook niet.

De boodschap van deze case is smaller en eerlijker: dit niveau van integratie tussen AI, planning, agenda, administratie en uitvoering is bouwbaar, en wij hebben het op onszelf uitgeprobeerd voordat we het aan een opdrachtgever voorstellen.

Resultaat

Wat het opleverde

341k

Regels TypeScript in dagelijks eigen gebruik

Een intern AI-platform van circa 341.000 regels TypeScript waarop we ons eigen bedrijf dagelijks draaien

799
Circa 7 maanden doorlopende ontwikkeling: 799 commits en 438+ pull requests, releases via CI/CD met rollback
77 / 56
77 databasemodellen en 56 API-routers die klanten, taken, financiën, doelen en processen modelleren
298
298 testbestanden met Playwright en Vitest als kwaliteitsgate op elke release
15min
Tweerichtings-agendasync met Google Calendar en Microsoft Outlook, elke 15 minuten via jobqueues
4
Bereikbaar via vier chatkanalen: Slack, Microsoft Teams, Discord en Telegram
0-45 dg
Automatische betalingsherinneringen via de Invoice Ninja-koppeling met escalatietrappen op 0, 7, 14, 30 en 45 dagen
pgvector
RAG-kennisbank op PostgreSQL met pgvector: semantisch zoeken met full-text fallback over de eigen bedrijfsdata
nl + en
Tweetalig platform (nl + en) waarbij de werkruimtetaal ook de gegenereerde rapporten stuurt
Meer in Overige sectoren

Vergelijkbare cases

Word de volgende case

Klaar voor zulke resultaten?

Gratis AI-scan: binnen 48 uur een rapport met de AI-kansen met de hoogste ROI voor jouw bedrijf — concreet, geen verkooppraatje.