EWP Aanvraag-agent — infra & onderhoud

Wat draait waar, wat kost het, wie houdt het bij
← Architectuur

Het systeem is bewust eenvoudig en goedkoop opgezet: een handvol domme scripts, een paar gerichte AI-aanroepen, en een mens die keurt. Hieronder wat er draait, wat het kost en hoe we het onderhouden.

De LLM denkt, scripts doen, een mens keurt

De stack

Vijf onderdelen. Het zware werk zit in goedkope scripts; de intelligentie in een paar API-aanroepen.

📥 Aanvoer

De vier mailboxen forwarden naar één intake-box. Een cron-script haalt elke 5 minuten nieuwe mail + bijlagen op via Microsoft Graph en zet ze klaar als bestanden. Geen AI, geen migratie van jullie mailomgeving.

Draait op: VPS · koppeling: Microsoft 365 / Graph

🧠 Agent-run

Per aanvraag draait een reeks AI-skills (lezen, structureren, compleetheid checken, eventueel prijsindicatie, toewijzing, Excel-export). Elke skill levert alleen een voorstel. Het juiste model per taak houdt de kosten laag.

Draait op: VPS (claude -p, vault /opt/ewp-aanvraag/) · koppeling: Claude API

🗄️ Opslag & brug

Voorstellen gaan via een sync-script naar Supabase: de triage-laag met de aanvragen, statussen en historie. Dit is geen tweede bron van waarheid; Syntess blijft leidend voor klant, offerte en project.

Draait op: Supabase (database + auth) · sync: VPS-script

🖥️ Dashboard

De projectleiders loggen in op een dashboard: alle aanvragen op een rij, gestructureerd en gelabeld, met de acties om te keuren of corrigeren. Niets gaat zonder hun akkoord de deur uit.

Draait op: Cloudflare Pages (of vergelijkbaar) · data: Supabase

📤 Acties

Na goedkeuring versturen domme scripts de terugvraagmail (via Graph) en zetten de Excel klaar voor import in Syntess. EWP blijft volledig in het eigen ERP werken.

Draait op: VPS · koppelingen: Graph, Syntess-import

Hosting & koppelingen

OnderdeelWaarWat
VPSeigen serverPoller, agent-run, sync- en actiescripts. Secrets in een vault, niet in code.
Supabasemanaged cloudDatabase, authenticatie en row-level security voor het dashboard.
DashboardCloudflare PagesDe web-voordeur voor de projectleiders.
Microsoft 365bestaand bij EWPMail ophalen en versturen via Graph (app-registratie, scope Mail.Read/ReadWrite).
Claude APIAnthropicDe AI-skills. Model per taak: Haiku (licht), Sonnet (standaard), Opus (oordeel).
Syntessbestaand bij EWPBlijft de bron van waarheid. Wij voeden hem via het Excel-importformaat.

Kosten

Indicatief, om een orde van grootte te geven. De grootste variabele is het AI-gebruik per aanvraag.

PostOrde van grootteToelichting
VPS± €5–15 / maandEén kleine server volstaat voor dit volume.
Supabasegratis → ± €25 / maandGratis tier is ruim voldoende om te starten.
Cloudflare PagesgratisVoor het dashboard en deze pagina's.
Claude APIpaar cent → ± €0,30 per aanvraagAfhankelijk van model en bijlagen. Lichte stappen op Haiku, de prijsindicatie op Opus is de duurste.
Microsoft 365bestaandGeen extra kosten, gebruikt EWP's eigen omgeving.

Geen harde offerte, een eerste indicatie. We rekenen het precies door zodra we het echte aanvraagvolume kennen.

Onderhoud

Het systeem is ontworpen om mee te groeien zonder herprogrammeren: de kennis zit in bewerkbare context-files, niet in code.

Beveiliging

Afhankelijkheden om te verifiëren

Eerlijk over wat we nog moeten bevestigen voordat we kunnen beloven hoe snel het werkt.

Drie open punten

1. Het Syntess-importformaat: maakt de import een offerte/project, en geldt hij voor aanvragen of alleen voor facturen? Hier hangt de doorzet-route aan.
2. De kastopbouw-regels: deels ongeschreven kennis. Bruikbaar te maken bepaalt of de prijsindicatie haalbaar is; zo niet, dan de RAG-fallback op eerdere projecten.
3. De leveranciers-prijslijsten: machineleesbaar beschikbaar (2BA/Atrium)? Dit bepaalt de betrouwbaarheid van de prijsindicatie.