NNabeel HassanBook a call

Writing

Field notes from building AI voice agents, automations and products — written from shipped work, not theory.

August 22, 2026 · 8 min read

Write Your Voice Agent Prompt for the Ear, Not the Page

Most bad voice agents are not badly engineered, they are badly written. The prompt was written to be read and it is being heard. Here is how I write scripts for production Retell agents: one idea per sentence, never a list out loud, explicit rules for how times, numbers and the business name are pronounced, exact wording only for the lines that carry risk, turns that survive being interrupted, and a final editing pass done by ear on a real phone line.

Read →

August 22, 2026 · 9 min read

What Breaks When a US-Built Voice Agent Answers a UK Phone Line

Almost every voice AI guide is American, and so are the defaults in the tooling. Building agents at Fortell AI for UK hospitals, vet practices, estate agents and car garages, hardly anything that broke was a model problem. It was locale: reversed dates, postcodes captured as gibberish, confirmation texts sent from a sender nobody can reply to, a calendar an hour out for three weeks a year, and an agent that heard a routine vet booking as a surgical procedure. Here is the list I work through before a UK agent takes a live call.

Read →

August 14, 2026 · 9 min read

The Hardest Part of a Voice Agent Is Writing Down an Email Address

Voice agents rarely fail at conversation. They fail at capture: emails transcribed as 'g mail', surnames heard four different ways, confirmations emailed into the void while the dashboard counts the call as a success. Here is how I design the data capture layer on production agents: look it up before asking, collect only what the next step needs, confirm identifiers in chunks, validate structure in n8n rather than in the prompt, and always give the repair loop an exit.

Read →

August 11, 2026 · 8 min read

What Should an AI Voice Agent Actually Know?

Most voice agents that fail in production do not fail at conversation, they fail at facts, and the failure is usually staleness rather than hallucination. Here is how I design the knowledge layer on production agents: a small audited set of stable facts in the prompt, a knowledge base written as spoken answers for the long tail, live lookups for anything that can change today, a named owner on the client side, and refusal designed as a behaviour instead of a failure state.

Read →

August 10, 2026 · 9 min read

An Outbound Voice Agent Is Not an Inbound Agent Dialing Out

Inbound, the caller chose to talk to you and will forgive a lot. Outbound, you interrupted someone, and every part of the build changes: the first eight seconds have to earn the rest of the call, the list matters more than the prompt, answering machines are the majority outcome, and retry cadence is a compliance decision rather than a tuning knob. Here is how I structure outbound campaigns on Retell wired into n8n and GoHighLevel, and the metrics that replace resolution rate.

Read →

August 9, 2026 · 8 min read

Your Voice Agent Dashboard Is Measuring the Wrong Things

Calls handled and minutes used tell nobody whether an AI voice agent is working. The numbers that do: pickup rate, resolution rate, booking rate measured against callers who actually wanted to book, transfer success as distinct from transfer rate, and cost per booked appointment. Here is how I define the denominator before launch, extract a fixed outcome schema after every call, audit the agent's self-report against human labelling, and watch latency at the worst turn instead of the average.

Read →

August 8, 2026 · 8 min read

Booking Is the Hardest Thing You Will Ask an AI Voice Agent to Do

Most voice agents I get handed to fix can hold a conversation fine. What they cannot do is reliably put an appointment on a calendar. Booking is where the agent stops being a language problem and becomes a systems problem: a live availability lookup the caller pays for in silence, relative time like tomorrow afternoon resolving against the wrong time zone, a race with the receptionist booking the same slot, and a source of truth nobody agreed on. Here is how I build the booking layer on production Retell agents wired into n8n and GoHighLevel.

Read →

August 7, 2026 · 8 min read

Geospatial AR Is a Coordinate Problem, Not a Graphics Problem

Pointing a device at the sky and seeing a real aircraft labelled in place looks like a rendering feature. It is not. It is the job of reconciling a global coordinate system that knows where the Earth is with a local one that only knows where the device started, using sensors that disagree. Heading is the error users actually see, distance quietly breaks the renderer, altitude means three different things, and telemetry always arrives late. Lessons from building AR Planes, AR Properties and MQ-9 tracking on AR maps at ARCortex.

Read →

August 6, 2026 · 8 min read

The Phone Number Is the Hardest Part of Launching an AI Receptionist

Almost nothing that breaks in launch week is the agent. It is the telephony layer nobody budgeted an afternoon for: porting when you should have forwarded, an unregistered outbound number quietly labeled Spam Likely, confirmation texts filtered before delivery, and a transfer destination that rings straight back into the agent. Here is the setup order I use on production voice agents, and the launch checklist I run before any client's calls touch one.

Read →

August 5, 2026 · 9 min read

When Should an AI Voice Agent Hand the Call to a Human?

The hardest part of building an AI receptionist is not the talking, it is knowing when to stop. Every production agent I ship has three exits, not one: transfer the live call, take a structured message and escalate, or refuse and route. Here is how I design the escalation layer, the four trigger types that catch real calls, what the handoff has to carry, and what happens when nobody picks up.

Read →

August 4, 2026 · 9 min read

Why Your AI Voice Agent Feels Slow (It Is Almost Never the Model)

When a client tells me their voice agent feels slow, the model is almost never the cause. The delay lives in endpointing, in work the agent does while the caller sits in silence, and in the length of the agent's own sentences. Here is the latency budget I use on production Retell agents, the rule that fixes most slow-agent complaints, and how I test for the worst turn instead of the average one.

Read →

August 1, 2026 · 8 min read

What ICPC Actually Taught Me About Shipping Software (And What It Did Not)

In 2021 my team won our ICPC regional as national champions and qualified for the World Finals. People assume that means I write faster code than everyone else. It does not. Here is the honest accounting: the four things competitive programming transferred almost perfectly into production engineering, and the two habits I had to actively unlearn before I could be useful on a real team.

Read →

July 31, 2026 · 8 min read

Chat Agent or Voice Agent? How I Decide Which One a Business Needs

At Fortell AI and Tested Media I built both voice and chat agents, and the question I get most is which one a business actually needs. Here is how I decide: a voice agent exists so no phone call hits a voicemail, a chat agent catches the visitor who will never call, and the real mistake is treating them as separate projects instead of two doors onto one pipeline.

Read →

July 30, 2026 · 8 min read

Being Fractional CTO for Three Startups at Once: What It Actually Takes

For a stretch I held the CTO title at three startups at the same time, in three countries and three domains: a US sports-tech platform at RAQTS, a US clinical XR product at Nystag Healthcare, and an Amazon-seller analytics app at Bettershop in Italy. Here is how a fractional CTO actually works: you are hired for a handful of decisions and not for hours, the transferable skill is the discipline and not the stack, and saying no is most of the value.

Read →

July 29, 2026 · 8 min read

Building a GraphQL Admin Dashboard for Amazon Sellers: A Fractional CTO's Playbook

At Bettershop Consulting I give CTO-level guidance on a React, TypeScript and GraphQL app that puts an admin dashboard and analytics in front of Amazon sellers. Here is what building analytics people act on taught me: why GraphQL earns its place, why the hard part is the fee-and-returns data model and not the charts, and why one definition of profit everywhere is the whole game.

Read →

July 28, 2026 · 8 min read

White-Labeling Voice AI: What Building VoiceDash Taught Me About Agencies

Any agency can build a Retell voice agent. Far fewer can hand the client a branded place to watch it work. I built VoiceDash, a white-label client portal that turns voice agents into branded dashboards with an agency's own logo, domain and analytics. Here is what it taught me: the agent wins the demo, the portal keeps the client, and why multi-tenant branding and a swappable voice layer decide whether an agency is a business or a stack of one-off projects.

Read →

July 24, 2026 · 8 min read

AI Voice Agents for Medical Clinics: The HIPAA-Safe Playbook

I built voice and chat agents for hospitals and clinics at Fortell AI. Here's the honest playbook: what the agent should own (booking, reminders, refill routing, FAQs), the clinical and PHI lines it must never cross (no triage, no advice, no loose health data), and the Retell plus n8n stack with the HIPAA plumbing done properly.

Read →

July 20, 2026 · 8 min read

Building a Clinical Eye-Tracking Diagnostic in XR: Lessons from Nystag Healthcare

As CTO of Nystag Healthcare XR I led a clinical eye-tracking diagnostics application on Augmented Reality and the Vive Focus 3. Here is the honest account of building XR a clinician will trust: why a headset is a genuinely good instrument for eye tracking, why clinical-grade means boring and repeatable long before impressive, and how that discipline carries straight into the AI agents I build now.

Read →

July 19, 2026 · 8 min read

Stepping In as CTO Mid-Build: Shipping a Sports-Tech Platform Across Unity, React Native and Next.js

At RAQTS I joined as CTO during a critical phase and led a sports-tech platform that lives in three runtimes at once: a Unity interactive layer, React Native mobile apps, and a Next.js web portal, tied together by live leaderboards and shipped through the App Store and Play Console. Here is what it takes to steady a project mid-flight, hold one product together across Unity, mobile and web, and make real-time scores every screen agrees on.

Read →

July 18, 2026 · 8 min read

A Voice Agent Is Only Half the Build: The Dashboard and CRM Behind It

At Tested Media I build voice and chat agents on Retell for CallSetter AI, and wire the whole system: the agents, a chat-dash client dashboard, and GoHighLevel as the CRM. Here is the back half most demos skip, where leads live and how a client sees them, and why it decides whether a voice agent survives past the first month.

Read →

July 17, 2026 · 8 min read

Shipping One C# SDK to Windows, Android and iOS: Lessons from Building Repocket

At Geonode I built the Repocket C# SDK, a single networking core that had to run on Windows, Android and iOS and handle internet sharing on all three. Here is what shipping one cross-platform SDK taught me: where to draw the line between shared and native code, why background execution is the hard part, and the CI that kept three targets honest.

Read →

July 14, 2026 · 8 min read

Building AR for Firefighters: What the ERIS XR Platform Taught Me

I helped build the ERIS XR platform and AR tools at ARCortex, work that reached the U.S. Fire Administration. Here is what public-safety augmented reality demands that a demo never does: honest uncertainty, latency as a safety property, and designing for a gloved operator in the sun, plus how those lessons shape the AI systems I build now.

Read →