Genie Marie
Genie Marie is an AI assistant for owner-run trades and service shops. She's built to answer the shop's customers by text, on the shop's own number, and she tells them up front that she's an AI assistant. When a conversation needs a person, she brings in the owner.

I built Genie Marie, and I run it through my firm, Yungsten Tech. It's for owner-run shops, like plumbers, heating and cooling shops, builders and property managers. A customer texts while the owner's on a job, and nobody's free to answer.
Marie answers those texts, then passes what the shop needs to know to the owner. The idea is that she takes the busywork, and the shop's people keep the parts customers hire them for, like the walk-through and the price.
What works today
It's early. geniemarie.com has a page for each of those trades, plus one for any shop. Each page lists six jobs an owner can pick from, like following up on estimates or asking for reviews, and its job cards mark which ones work today. An owner picks up to three they'd hand off first, and one tap opens a text to me that already says what kind of shop it is and which jobs they picked.
Marie went live in November 2026. So far the one job that works is answering texts, and for now only on my own number. The other jobs get set up or built with each shop. Estimate follow-ups run from a shop's own estimate list, and keeping a whole job in one thread is in beta. Mailing cards and getting a change order signed from a text aren't built yet, and geniemarie.com says so next to each one.
Tap through from geniemarie.com and Marie is the one who writes back. She asks two questions at most, then hands the thread to me, and I take it from there. On a shop's own number, she'd do the same with its customers and hand them to the owner.
Her rules
Marie has to say she's an AI assistant in her first text, and again any time someone asks. She can't say she's me or promise when I'll reply, and she doesn't send links. Anything about terms or start dates, or anything the page doesn't cover, she leaves for me.
Before a reply goes out, plain code checks it for the AI-assistant line, anything that says she's me, any reply time and any link, so those rules don't depend on the model remembering them. I also test her against eight made-up people texting in from shops. One keeps asking whether he's texting a bot, and she has to give him a plain yes each time. Another tries to get her to print her instructions or say she's me, and she has to turn that down.
How it runs
Marie runs on the same service as my own text line, (617) 599-0775. How a thread starts decides who answers it. Text from this site and an AI answers in my voice. Tap through from geniemarie.com and Marie answers instead. Once a thread starts one way, it stays that way.
Each reply is one call to Claude. When someone new starts a thread, or Marie hands one over, I get a text about it and pick it up myself. The service is TypeScript on Fly.io, and it keeps its threads and job queue in SQLite. The pages are served from Cloudflare Workers, and they count visits and taps by trade and by where the owner came from.
Stack
- Languages
- TypeScriptZod
- Product
- HonoiMessage and text line
- Models and agents
- Claude
- Data
- SQLite
- Infrastructure
- Fly.ioDockerCloudflare WorkersDoppler

Text mePaul Mikulskis
(617) 599-0775If you run a shop, tell me which jobs you'd hand off first.
This number usually answers in a minute or two, in my voice, and every conversation comes straight to me.
Text (617) 599-0775