Team product · Motkan Labs
Brainfast
No-code AI agents for every channel
- Role
- Full-Stack AI Engineer
- When
- 2025 — 2026

Overview
A multi-tenant SaaS where businesses build branded AI agents trained on their own documents, sites and FAQs. The agents answer customers, book appointments and take actions on web chat, WhatsApp, Instagram, Messenger, Slack, Discord and voice — and hand off to a human when needed.
Brainfast is built by the Motkan Labs team. Below is the work I owned end to end.
What I built
- 01
Live human takeover — a staff WebSocket channel and a Live chats inbox. When a customer asks for a person, the bot goes quiet and staff claim the conversation and reply on any channel, including the web widget.
- 02
An escalation learning loop — staff answers become reviewed FAQ entries, and a vector-similarity guard stops the agent from escalating questions the knowledge base can already answer.
- 03
Monetization — a hard/soft paywall switch enforced server-side, a 7-day card-required Stripe trial with card-fingerprint abuse protection, and lifecycle emails driven by webhooks and scheduled jobs.
- 04
Server-side Meta Conversions API tracking with event deduplication, behind a GDPR consent gate (Google Consent Mode v2) in both the app and the landing site.
- 05
The billing migration from DodoPayments to Stripe, with a scripted cutover and a grace period for existing subscribers.
- 06
A standalone Instagram Login channel with encrypted long-lived tokens and a daily refresh job, plus usage-based entitlements, feature flags and model credit tracking.
Highlights
Making purchase events actually fire
Stripe sends subscription.updated before invoice.paid, so trial conversions were never reported. I identified the conversion invoice from Stripe's own data — its period starts exactly at trial_end — and clamped event times to Meta's ±7-day window, where out-of-range events are dropped silently.
One waiting room instead of two systems
Escalation tickets and live chats were separate, disconnected flows. I reused the escalation itself as the waiting room, added a claim step that upgrades it into a live chat, and pushed alerts over WebSockets so no customer waits unseen.
Screens


