Chat and intake assistants
Your visitors or your staff ask in their own words and get an answer, or get walked through a form one question at a time. (Claude or Gemini, streamed responses, tool use, structured data extraction.)
Want an AI feature, like an intake chat or a tool that sorts incoming requests? I'll build it so costs stay predictable and there's a fallback when the model gets it wrong. I've had to handle both in EverAd, my AI ad-creative product.
EverAd builds a brief from your brand, then writes and renders ad variations. Each one is scored before it goes out, and live traffic picks the winners. (Under the hood: Gemini writes the copy, Imagen and Veo render images and video, a quality gate does the scoring, and a Thompson-sampling bandit decides what each visitor sees.)
Your feature gets the same care, down to the unsexy plumbing: caching, logging, redaction and rate limiting.
Your visitors or your staff ask in their own words and get an answer, or get walked through a form one question at a time. (Claude or Gemini, streamed responses, tool use, structured data extraction.)
Your team makes ad images, short videos or product copy that stays on brand, and a person approves each piece before it goes out. (Google Imagen and Veo, Claude or OpenAI for text, brand guardrails, human review.)
Incoming requests, documents or leads get sorted, scored, summarized or turned into clean data inside the app you already use. (Classification and extraction with JSON outputs, Zod validation, retries and cost tracking.)
Your team or your customers ask a question and get an answer drawn from your own documents, with a link to the source. (Retrieval over pgvector, Pinecone or Turbopuffer, with a rerank step and freshness controls.)
As of late 2026: for text reasoning and tool use, Claude is hard to beat. For images and other media, Google's Gemini and Imagen are the strongest I've used in production, and Veo for video. For cheap, simple sorting jobs, a smaller open-weights model is often enough. I usually pair Claude with a smaller, faster model for the simple steps.
Easy requests go to a small model, and only the hard ones move up to a bigger one. Answers that don't change get cached. Every feature also has a spending ceiling: when it's hit, requests slow down or wait in a queue, so the bill can't run away.
Yes. That's most of the work. I build into React and Next.js, Vue and Nuxt, Node, and serverless backends. New AI features are built from your own design system, so they look like the rest of your app.
Provider choice matters here. Before any of your data goes to a model, I go through the provider's current data terms with you. If you're already on AWS or Google Cloud, that can mean running the model through Bedrock or Vertex. Personal details get stripped out before a request leaves your servers.
Yes, with a strong bias toward making each step checkable. Agents call tools through strict formats, critical flows follow fixed steps, and a person approves anything that can't be undone. (Structured tool schemas, deterministic state machines, human-in-the-loop checkpoints.) "Spawn an autonomous agent and pray" isn't on the menu.
If AI tools already built your app and you need it checked before launch, that's a different job. This page is about adding an AI feature to a product that already works. AI codebase rescue covers the other job.
Bring the rough idea. You'll leave the call with a realistic prototype plan. I reply within one business day, usually sooner.
