Lana: an AI assistant that lives in iMessage
A personal assistant you text: it remembers people and dates, sets reminders and completes bookings for you.
- Client
- Lana
- Through
- Qualkode Technologies
- Role
- Senior Software Engineer
- When
- Mar – May 2026
Built as a Senior Software Engineer at Qualkode Technologies, for the Blush group.
- from scaffold to a skill-based assistant
- 2 months
- less loaded at every function cold start
- 120–160 MB
The situation
Lana remembers the things you forget. It is texted like a friend, so every message has to reach the right skill, reminders have to fire exactly once, and a booking made in a real browser has to finish or say why not.
What I built
- A skill router that sends each message to the right skill: referrals, birthday and friend reminders, contact tasks.
- Browser-automation skills that complete restaurant bookings and flight check-ins on the user's behalf.
- Recurring reminders on queued tasks with dead-letter retries and atomic claiming, so none fire twice.
- Prompts and tool definitions managed centrally, and skills that switch on or off without a redeploy.
- Split one heavy initializer into granular ones so each function loads only what it needs: 120–160 MB less at cold start.
Stack
- TypeScript
- Serverless functions
- Cloud Tasks
- Pub/Sub
- MongoDB Atlas
- OpenAI
- LangChain.js
- Langfuse
- React