|
DaKanAI is een AI-gestuurde intake-assistent die MKB-ondernemers interviewt om hun impliciete bedrijfskennis vast te leggen. De beslissingen die je op gevoel neemt. De uitzonderingen die nergens staan. De principes die je bedrijf draaiende houden — maar die je nooit hebt opgeschreven. DaKanAI haalt ze eruit, valideert ze, en levert ze op als gestructureerde kennisbestanden. |
DaKanAI combineert drie bewezen methoden uit kennismanagement en cognitieve psychologie:
|
Graaft laag voor laag dieper. Van oppervlakkig kenmerk → concreet gevolg → onderliggende waarde. "Waarom is dat belangrijk voor je?" "Wat zou er gebeuren als dat wegvalt?" Tot de terminale waarde — het fundament. |
Ontleedt concrete beslismomenten. Sweep voor sweep, van overzicht naar detail. "Neem me mee naar dat moment." "Wat zag je? Wat wist je toen?" De kennis die alleen zichtbaar wordt in de hitte van het moment. |
Vindt waar de regels breken. De randgevallen, de uitzonderingen, het ongeschrevene. "Wanneer geldt dit juist niet?" "Wat doe je als het normaal niet werkt?" Daar zit de echte expertise. |
graph LR
A["Ondernemer opent website"] --> B["Toegangscode invoeren"]
B --> C["Live interview via chat"]
C --> D{"Elke modelrespons\ndeterministisch\ngevalideerd"}
D -->|"Geldig"| E["Volgende vraag"]
D -->|"Ongeldig"| F["Auto-retry\nmax 3x"]
F --> D
E --> G{"Interview\nafgerond?"}
G -->|"Nee"| C
G -->|"Ja"| H["Compilatie\n8 bestanden"]
H --> I["Output verstuurd\nvia Telegram"]
style A fill:#1c1528,stroke:#c9a832,color:#ece8df
style B fill:#1c1528,stroke:#483f58,color:#ece8df
style C fill:#1c1528,stroke:#c9a832,color:#ece8df
style D fill:#2d2839,stroke:#c9a832,color:#c9a832
style E fill:#1c1528,stroke:#483f58,color:#ece8df
style F fill:#1c1528,stroke:#b85a2a,color:#b85a2a
style G fill:#2d2839,stroke:#c9a832,color:#c9a832
style H fill:#1c1528,stroke:#c9a832,color:#ece8df
style I fill:#1c1528,stroke:#4ade80,color:#4ade80
Na elk afgerond interview produceert DaKanAI een compleet kennispakket:
|
|
Elk kennisfeit krijgt een bewijslabel — niets wordt verzonnen:
GEDEKT— Direct door de ondernemer bevestigd, met bronverwijzing naar exacte beurtnummers
AFGELEID— Logisch afgeleid uit wat gezegd is, met onderbouwing
GEEN-DEKKING— Nog niet besproken. Een leeg veld is beter dan een verzonnen antwoord.
Geen LLM-beoordeling. Harde regels. Elke beurt, elke keer.
Elke modelrespons passeert een validator die controleert:
- Zijn alle verplichte velden aanwezig?
- Is het beurttype geldig? (dialoog, naamstap, taak, edge, ziel_principe, skill, tool, afronding)
- Heeft elke extractie een geldig dekkingslabel?
- Verwijzen
source_turnsnaar bestaande beurten? - Zijn er geen onbekende velden toegevoegd?
Bij een ongeldige respons:
Poging 1 → Fout teruggestuurd naar model met correctie-instructie
Poging 2 → Nogmaals, met aangescherpte feedback
Poging 3 → Gracieus herstel — ondernemer merkt er niets van
|
Realtime zichtbaarheid in een apart terminalvenster. Elke LLM-aanroep, elke validatie, elke retry, elke compilatie — je ziet het gebeuren terwijl de ondernemer in de browser typt. Donkerpaars met gouden accenten, dezelfde huisstijl als de website. bash start-monitor.sh |
DaKanAI/
│
├── interview/ # Het brein
│ ├── engine.py # Gesprekssturing, LLM-calls, retry & herstel
│ ├── validator.py # Deterministische validatie per beurt
│ ├── compiler.py # Transcript → 8 output-bestanden
│ ├── interview_status.py # Ronde-telling, noodrem, destillatie
│ ├── system_prompt.py # Interview-protocol & welkomstbericht
│ └── events.py # Event-logging voor live monitor
│
├── server/ # HTTP-laag
│ ├── app.py # Flask server, CORS, rate limiting
│ ├── codes.py # Timing-safe code-validatie
│ └── telegram_bot.py # Output-levering via Telegram
│
├── web/
│ └── index.html # Frontend in huisstijl
│
├── monitor.py # Live TUI-dashboard (Rich)
├── run.sh # Server starten
└── start-monitor.sh # Monitor starten
|
Python 3 Engine & Server |
Claude Opus 4.5 via OpenRouter |
Telegram Output-levering |
Flask HTTP + CORS |
Cloudflare Tunnel |
Geïnspireerd door de scrollytelling-sfeer van SBS's "The Boat" — gedempt, sfeervol, onderdompeling in plaats van "website-gevoel".
#1c1528 Heel donkerpaars · #2d2839 Oppervlak · #c9a832 Goud · #b85a2a Donkeroranje · #ece8df Warm wit
Eigendom van Dakan.ai · Niet voor herdistributie