Skip to content
MaatX
AI / Customer Operationslight interfacedemo

NOVA

AI Customer Operations Platform

AI-powered customer operations.

Resolve more customer issues without hiring more people — and keep a human in control of every answer that goes out.

  • RAG
  • Tool calling
  • Agents
  • CRM integration
  • Human-in-the-loop
  • Automation

A support workspace where an AI assistant reads the customer's history, retrieves the right policy, calls the systems it needs, and drafts a response an agent approves.

NOVA
NOVA, ai customer operations platform — product interface
Product overview

What the product is built around.

The goal is not to remove agents. It is to make the routine 70% near-instant so the team's attention goes to the 30% that needs judgement — while every automated step remains inspectable.

Assist before automate

The assistant drafts and a human approves. Full automation is enabled per intent only once the evidence supports it.

Facts from systems, not guesses

Billing, order and account claims come from typed tool calls against real systems, with the result shown to the agent.

Grounded in your policy

Responses cite the specific policy passage. When the corpus does not support an answer, the assistant says so.

The problem

What makes this hard.

Support teams grow linearly with customers, and the cost lands in the wrong place. Most tickets are not hard — they are repetitive lookups across three systems. Agents spend their day copying data between a helpdesk, a CRM and a payments dashboard, and the genuinely difficult cases get the least attention.

  • 01

    The same twenty questions arrive every day and each one is answered from scratch

  • 02

    Answering a billing question means opening three tools and reconciling them by hand

  • 03

    Generic AI chatbots answer confidently from the wrong policy and erode trust fast

  • 04

    Escalation loses context, so the next agent starts the investigation again

  • 05

    Nobody can tell which answers the AI got right, so nobody trusts it with more

The solution

What the system does.

NOVA puts the assistant inside the agent's workspace rather than in front of the customer. It reads the conversation, retrieves the relevant policy with citations, calls the systems needed to establish the facts, and drafts a reply with a confidence score. The agent sends, edits or escalates. Every action is logged, so the automation earns trust incrementally instead of being switched on and hoped for.

  • Assistant drafts, human approves — the customer never receives an unreviewed answer

  • Answers are grounded in your policies and cite the passage they came from

  • The assistant calls CRM, billing and order systems to establish facts, not guess them

  • Confidence below threshold routes to a human instead of producing a plausible answer

  • Resolution outcomes feed back so automation expands where it has been proven

Product interface

NOVA, as working interface.

Rendered UI, not a mockup. Switch between screens, and try ⌘K for the command palette.

DEMO
NOVAInbox
NOVA
Inbox128ConversationsCustomers8.4KKnowledgeAssistantAutomations12

The assistant works beside the agent: it establishes facts with tool calls, then drafts a reply for approval.

Open conversations

128

−18 since 09:00

AI assisted

74%

+11pp m/m

Escalations

31

24% of assisted

Avg response

42s

−3m 18s vs manual

c-48120 · billing enquiry

Ellis Warrenemail · tier 2Frustrated
  1. Customer09:41:02

    I was charged twice.

  2. System09:41:04

    Assistant engaged. Customer identity verified from the sending address.

    • crm.customer.get
    • auth.verify_email
  3. AI assistant09:41:09

    I found two payment attempts on 18 September for £48.00. The first attempt was authorised and then reversed by the processor 40 seconds later; the second settled successfully. Only one charge will appear on the statement, but the reversal can take 3–5 business days to clear on a card. The relevant policy is the duplicate-authorisation section of the billing guide, which says we confirm the reversal reference to the customer rather than issuing a second refund.

    • payments.attempts.list
    • payments.reversal.get
    • knowledge.search
Suggested reply · awaiting approvalconfidence 0.94

Thanks for flagging this, and sorry for the concern. I've checked your account: there were two payment attempts on 18 September, but only one charge stands. The first authorisation was reversed by your bank 40 seconds later (reference RV-8841-0192). Reversals can take 3–5 business days to disappear from a card statement, so you may still see it as pending. No second refund is needed — if it hasn't cleared by 25 September, reply here and I'll escalate to our payments team with that reference.

SendEditEscalate

Customer context

Customer
Ellis Warren
Plan
Pro · monthly
Lifetime value
£1,824
Tenure
2y 4m
Prior tickets
3 · all resolved
Sentiment trend
Positive → frustrated
Churn risk
Low (0.18)
SLA remaining
3h 12m

Retrieved knowledge

  • Billing guide — duplicate authorisations§3.4 · current · matched on 'charged twice'0.96
  • Processor reversal timelinesCard 3–5 days · bank transfer 1–2 days0.91
  • Refund authority matrixTier 2 may refund up to £2500.84
  • Macro — duplicate charge responseUsed 412 times · 96% resolution0.88
  • Superseded: refund policy v2Excluded — replaced by v3 in Marchexcluded

Assistant trace

  1. Awaiting approval09:41:16

    Confidence 0.94 above 0.85 threshold · reply drafted, not sent

  2. Generated recommendation09:41:15

    Grounded in 2 policy passages · reversal reference included

  3. Called payments API09:41:14

    2 attempts found · 1 reversal RV-8841-0192 · read-only scope

  4. Retrieved customer data09:41:13

    CRM record + 3 prior tickets · permission-scoped to tier 2

  5. Received request09:41:12

    Email channel · intent classified as billing.duplicate_charge (0.97)

System architecture

How it is put together.

The assistant never talks to the customer directly. It produces a draft plus its evidence, and a human decides — which is what makes the automation safe to expand.

  1. 01

    Agent Workspace

    Unified inbox, conversation view, draft approval and customer context.

    • Next.js
    • React
    • Streaming
  2. 02

    Orchestration

    Intent classification, retrieval, tool selection and confidence gating.

    • LLM
    • Structured output
    • Classifier
  3. 03

    Knowledge Layer

    Hybrid retrieval over policies, macros and prior resolutions with citations.

    • Embeddings
    • pgvector
    • Reranking
  4. 04

    Tool Layer

    Typed, permissioned read and write calls into CRM, billing and order systems.

    • Zod
    • Capability scopes
    • Idempotency keys
  5. 05

    Approval Gate

    Confidence thresholds per intent with edit tracking and escalation routing.

    • Policy engine
    • RBAC
    • Audit log
  6. 06

    Systems of Record

    CRM, helpdesk, billing and subscription platforms synced bi-directionally.

    • Connectors
    • OAuth
    • Webhooks

What the product does.

The capability set the demonstration is built around.

Unified inbox

Email, chat and social conversations in one queue with routing and SLA tracking.

AI drafting

Grounded reply suggestions with citations, tone matching and a confidence score.

Knowledge retrieval

Hybrid search over policies, macros and past resolutions with recency weighting.

Tool calling

Typed, permissioned calls into CRM, billing, orders and subscription systems.

Human-in-the-loop

Approve, edit or escalate. Nothing leaves without a decision above the threshold.

CRM sync

Conversation outcomes, tags and fields written back with field-level confidence.

Automation rules

Per-intent automation enabled gradually as measured accuracy supports it.

Quality analytics

Deflection, edit rate, escalation reasons and accuracy per intent.

Engineering focus

Challenges, and the MaatX approach.

The problems that actually decide whether a system like this survives production — and how we address each one.

A wrong AI answer to a customer costs more than a slow one

The assistant drafts; a human sends. Automation is enabled per intent only after sustained measured accuracy, so the blast radius of a mistake stays inside the team until the evidence justifies widening it.

The assistant needs real account data without becoming a data-leak path

Tool calls are typed and scoped to the agent's own permissions. The assistant cannot read a record the handling agent could not open, and every call is logged with its arguments.

Policies change and superseded versions read almost identically

Retrieval applies recency weighting and supersession edges, so the current policy outranks the old one. Excluded passages are shown to the agent as excluded rather than silently dropped.

Confidence scores are meaningless unless calibrated

Thresholds are set per intent from a labelled evaluation set and recalibrated against agent edit and approval rates, so 0.85 means the same thing in billing as it does in orders.

Writing to the CRM automatically destroys trust the first time it is wrong

Sync is field-level with a per-field confidence threshold. Below it the update queues for review, and a human override is never overwritten on a later run.

Nobody can tell whether the automation is actually helping

Deflection, edit rate, escalation reason and satisfaction are tracked per intent, so expansion decisions are made on measured outcomes rather than on the demo that went well.

The stack behind it.

Inbox & routing

  • Node.js
  • PostgreSQL
  • Redis
  • Multi-channel intake
  • Intent classification
  • Queue routing
  • SLA timers

Assistant orchestration

  • LLMs
  • Structured output
  • Tool calling
  • Classifier models
  • Confidence calibration
  • Tone matching

Policy retrieval

  • Embeddings
  • pgvector
  • Hybrid search
  • Reranking
  • Recency weighting
  • Supersession edges
  • Span-level citations

Systems-of-record tools

  • Zod schemas
  • Capability scopes
  • Idempotency keys
  • CRM APIs
  • Billing APIs
  • Order and subscription APIs
  • Helpdesk APIs

Human-in-the-loop

  • Confidence thresholds
  • Approve, edit or escalate gates
  • Policy engine
  • RBAC
  • Edit-rate tracking
  • Escalation routing

Automation & write-back

  • Per-intent automation rules
  • Field-level CRM sync
  • Per-field confidence gates
  • Human-override protection
  • OAuth connectors
  • Webhooks

Workspace & analytics

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • Streaming responses
  • Audit log
  • Per-intent accuracy reporting
Product evolution

How it grows with the business.

The same system at three stages. Most products should not start at the third — but the architecture should not have to be thrown away to get there.

MVP

Assist a single team on their highest-volume intent, proving accuracy before widening scope.

  • One channel, one intent, drafts only
  • Knowledge base connected read-only
  • Two tool integrations for fact lookup
  • Accuracy and edit rate measured from day one
Scale

Expand across intents and channels, and let proven intents run without a human in the path.

  • Multi-channel unified inbox with routing
  • Per-intent automation thresholds
  • Bi-directional CRM sync with confidence gating
  • Calibrated confidence and regression eval suite
Enterprise

Multi-team, multi-region deployment with the governance a support organisation needs.

  • Role-based access and regional data residency
  • Full audit trail of every automated action
  • Multi-language handling with per-language calibration
  • SLA forecasting and capacity planning
Future expansion

Where it could go next.

Directions this system would extend into.

  • 01

    Voice channel with real-time agent assist during live calls

  • 02

    Proactive outreach when a known issue affects a customer's account

  • 03

    Self-service resolution for intents proven above the automation bar

  • 04

    Knowledge gap detection from questions the corpus could not answer

  • 05

    Quality scoring on every conversation rather than a sampled review

Scaling customer operations without adding headcount, and keeping a human on the answers that matter?

We built NOVA to work through exactly this. Tell us where you are and we will tell you what we would do differently for your constraints.