Confidential · © 2026 Space-O Technologies Inc. · Prepared exclusively for DMA. Please do not copy, save or share.

Section 5 · Reactivate Old Leads Now

5.6AI handles replies

Built in the POC
No.
5.6
DMA's reference
Decision Book p.16
Phase
Phase 1
Autonomy
L2 · Prepare, then wait for approval
DMA's decision
Yes

What DMA asked for · Decision Book p.16

When an old prospect replies, the AI answers, qualifies, handles objections and books a salesperson.

Why it matters to DMA: It scales reactivation past what reps could answer by hand.

In our words, from DMA's Product Decision Book v3, page 16.

How we do it

  • Every reply is threaded to the email it answers, stored encrypted and treated as untrusted text. A fast model reads its intent (interested, a meeting request, a pricing question, not now, not interested, unsubscribe, a complaint, out of office, a bounce and others).
  • Some things are always handled by code first: an unsubscribe is honoured at once (and a colleague who asks to be removed is removed, not the sender); a bounce suppresses the address; an out-of-office reply reschedules the follow-up for when they're back.
  • The rule engine decides what needs a person: a pricing question, a request for a person, a refund, a hostile message, a legal threat or low confidence goes to Josh's roster as a case, with a polite holding reply.
  • Everything else gets a drafted answer (L2) in Approvals, using the thread and DMA's approved wording, so a person approves each reply before it goes.

The flow

It plays on its own while it's on screen; hover or use the controls to pause or step through.

yesyesnonoA reply arrivesuntrustedIntent readfast model + rulesHandled by codeunsubscribe · bounce · awayNeeds a person?pricing · person ·complaintJosh's caseholding reply sentDrafted answerwaits for approval
Step 1 of 4

A reply

"Thanks for reaching out. What would this cost for three offices?"

  • Person
  • AI
  • Rule in code
  • Routing
  • Screen

Where the data goes

The same six stages on every page. Nothing reaches Nutshell except through the write gate.

  1. 1The inbox

    Source

    Replies to outreach.

  2. 2Sync

    Copies Nutshell changes into the bridge database

    Not involved.

  3. 3Bridge database

    A copy of the CRM data, plus what the AI works out

    The reply (encrypted), its intent, the case or the draft.

  4. 4AI

    Claude models, only through DMA's own gateway

    A fast model reads the intent; the draft uses approved wording.

  5. 5Write gate

    The only way back into Nutshell: checked, approved when needed, sent once

    Opt-outs and the reply activity go to Nutshell.

  6. 6Nutshell

    The system of record

    The conversation on the contact's timeline.

The tables behind it

Drawn from the POC's database catalogue: structure only, no data.

conv.messagesPKiduuidFKconversation_iduuidIDparticipant_iduuidsender_kindtextdirectiontextis_untrustedbooleansent_attimestampIDdecision_iduuidIDagent_version_iduuid+ 12 more columnsctrl.suppressionsPKemail_hashbyteareasontextsourcetextcreated_attimestampctrl.escalationsPKiduuidtriggertextIDconversation_iduuidstatetextassigneetextsla_due_attimestampIDrun_iduuidIDdecision_iduuid+ 25 more columns

PK primary keyFK reference the database enforces (solid line)ID reference kept by id (dashed line)

TableWhat it holdsColumns
conv.messagesThe reply, encrypted and marked untrusted.21
ctrl.suppressionsThe opt-out list that blocks sending in code.4
ctrl.escalationsReplies that need a person.33
How the tables connect (7)
ColumnPoints toKept by
conv.messages.conversation_idconv.conversationsThe database (foreign key)
conv.messages.participant_idconv.participantsThe application (by id)
conv.messages.decision_idctrl.decision_logThe application (by id)
conv.messages.agent_version_idagent.agent_versionsThe application (by id)
ctrl.escalations.conversation_idconv.conversationsThe application (by id)
ctrl.escalations.run_idagent.runsThe application (by id)
ctrl.escalations.decision_idctrl.decision_logThe application (by id)

Worked example

Synthetic demo data: every name, business and number is made up.

A reply that needs a person

1 / 2

What you see

1.Josh gets the case

The case arrives with a brief of the thread and the account.

localhost:13301/escalations
A case for a person, with its brief.
Callout 2

What happens in the system

  • Rule engineescalation rules

    A pricing question, a request for a person, a complaint or a legal threat goes to a person, with a response deadline.

  • AI agentescalation router

    Writes the brief; the thread is paused so the AI doesn't reply meanwhile.

What happens to different replies (synthetic).

Replies and what the system does

ReplyWhat happens
"Please take me off your list."Unsubscribed at once, a one-line confirmation sent, the opt-out logged in Nutshell
"I'm out until the 14th."The follow-up moves to after the 14th
"What would this cost?"A case for Josh, and a polite holding reply
"Sure, next Tuesday works."A drafted answer with times, waiting for approval
"Not this year."Read as "not now"; a short, polite reply is drafted and waits for approval

In the running POC

localhost:13301/escalations
A case for a person, with its brief.

1 / 2A case for a person, with its brief.

  1. 1What happened and why.
  2. 2The brief.

Dashboard · Escalations, one case open. Captured from the running POC on September 25, 2026; synthetic data.

See it live

Opens the exact screen in the running POC, in a new tab.

OpenWhereWhat to try
EscalationsDMA AI dashboardReplies that need a person.

Status

Built in the POC

Built in the POC. This capability runs in the POC today, on synthetic data, end to end.

5.6 AI handles replies · DMA AI proof