Three Systems, One Intelligence — Confidential

Three systems. One intelligence.

Designing the agentic layer that connected everything Pura knew about a user to how it spoke, when it acted, and what it learned.

Healthcare AI Systems Design Agentic UX Behavioural Design Notification Architecture Progressive Profiling

This project was not a single brief. It was three separate bodies of back-end work – each with its own logic, its own rules, and its own engineering requirements – alongside the front-end UI design that brought them to life.

The AI Tone System governs how Pura communicates. The Notification Governance Framework governs when. The Progressive Profiling system governs what the platform learns, and in what order.

Built independently, they function as one – a connected intelligence layer that makes Pura behave less like an app and more like a healthcare advisor and personal companion that genuinely understands you.

01

AI Tone System

Why personas fail in a health context

The instinct in most healthcare products is to define user types and write for them. The problem is that a persona is a snapshot – it tells you who someone is on average, not who they are right now.

A user waiting on cancer results is not the same person who opened the app three weeks ago to track their steps. A label like “Health Beginner” tells you nothing about what that person needs to hear in this moment, on this day, in this session.

“Personas are useful for team empathy. They are not system inputs.”

David Quill

The shift from static types to dynamic attributes

The Tone System moved Pura from personas to attributes. Instead of asking who is this user, the system asks what signals are we detecting right now.

A live combination of dimensions – call these adaptive dimensions – medical circumstance, behavioural state, comprehension level, intent, lifecycle stage. They combine in real time to determine not just what the AI says, but how it frames it, how much it explains, how hard it pushes, and when it steps back entirely.

The same user can receive a completely different output on different days. That is not inconsistency. That is the system working.

Non-negotiables

Sitting above all adaptive logic are four dimensions that override everything. They are never adjusted. They are always on.

Dimension

What it does

Emergency detection

A binary clinical safety gate that locks the tone to urgent and empathetic the moment it is triggered.

Accessibility

Visual, cognitive, and motor needs that affect all delivery.

Content guardrails

The system guides users and never diagnoses, always citing sources and maintaining clinical accuracy.

Language & cultural context

Full EN/AR support with cultural sensitivity around directness, formality, and family involvement in health decisions.

Contextual – Intent, Medical Circumstance, Lifecycle

Intent reads what the user needs from this specific interaction – a quick answer, reassurance, decision support, or simply to vent – and shapes the response accordingly.

Medical circumstance layers in diagnosis type, severity, and journey position, adjusting tone weight and vocabulary to match where the user is clinically.

Lifecycle tracks where the user is in their Pura journey, from first-time awareness through to long-term retention or re-entry after a lapse, ensuring the system never treats a returning user like a stranger.

Behavioural Signals – positive and negative states

Psychological states inferred from behaviour, not self-report. Positive signals – curiosity, motivation, confidence – tell the system to encourage, celebrate, or step back and let the user lead.

Negative signals – anxiety, denial, hopelessness, overwhelm, shame, distrust – each trigger a specific and calibrated response. A user who has opened a critical document – a diagnosis, a treatment plan, a set of results that shape what comes next – three times without viewing it receives a different message to one who questions the AI’s accuracy twice in a row.

The system detects the pattern. It responds to the root cause, not the surface behaviour.

Comprehension – Technical and Health

The existing system tracked a single comprehension dimension – technical only. How much guidance the user needed through tasks. It worked for the app, but it collapsed the moment medicine entered the conversation. Someone who knows the app isn’t the same person who knows the medicine, and the AI was treating them as one.

I added a second comprehension dimension – health – and split the system into two independent axes that can each be high or low regardless of the other. Technical comprehension determines how much guidance the user receives through tasks – step by step, grouped, or outcome only. Health comprehension determines how much medical explanation the AI provides – plain language, common terms, or full clinical vocabulary.

An elderly retired doctor has high health comprehension and may have low technical comprehension. A single dimension would have told you neither. Two independent ones tell you both, and the AI talks to them differently in the same sentence.

02

Notification Governance

The P1–P5 priority architecture

The original design merged medical and marketing notifications into a single queue. I split them into two parallel systems that work together but are governed separately.

Medical notifications run through the P1–P5 priority framework. Marketing notifications – insurance, telehealth bookings, module promotion, retention – run alongside, with their own logic and their own goals. The two systems are aware of each other through the user’s medical state, and the marketing side knows when to hold and when to speak.

The same priority architecture reaches into the UI itself. What the user sees on screen – banners, prompts, surfaced content – adapts to the active priority. Higher priority notifications suppress lower priority ones. The system always knows what is most important – and so does the interface.

Level

Type

Behaviour

P1

CRUCIAL

Time-critical, safety-adjacent

Uncapped, delivered immediately via the highest available channel.

P2

BEHAVIOURAL

Signal-based AI outreach

Time-sensitive but not an emergency.

P3

TRANSACTIONAL

Confirmations, routine results, administrative

Standard channels, standard frequency caps.

P4

ENGAGEMENT

Wellness nudges, streaks, progress updates

Heavily capped, suppressed by anything higher.

P5

LOWEST STAKES

In-conversation only

Never pushed.

The Results Day Protocol

When a user is expecting test results, the day of delivery follows a specific sequence designed to reduce anticipatory anxiety and give users space to process.

We deliberately avoid sending a notification the day before. Telling someone “your results arrive tomorrow” hands them 24 hours of anxiety and a broken night’s sleep. Instead, the protocol stays quiet until the morning of – one gentle heads-up so the user can prepare themselves mentally for that day, on that day.

From the morning reminder, the next thing the user hears is the result itself. Once results are delivered, all non-clinical communications are suppressed for the remainder of the day. When the user taps the notification, the app opens directly to results – no splash screen, no interstitials, no modals. The AI is available but does not push. The user leads.

“The kindest thing the system can do on results day is stay quiet until the user is ready to hear it.”

David Quill

03

Progressive Profiling

Rule Zero – the governing principle

Most progressive profiling frameworks start with the question “what data do we need to unlock X, Y, Z?” – X being revenue, Y being retention, Z being a feature unlock. I reversed it.

The only question this system asks is when should we capture this piece of data, and how will it benefit the user when we do? Progression is paced by what helps the person on the other end – their health, their experience, their trust – not by what the business wants to learn next.

Before any ask fires, the system must be able to answer yes to one question: if the user knew exactly why we were asking this – would they agree it was for their benefit? If the answer is uncertain, the ask does not fire.

This is not a guideline. It is a hard constraint that overrides every other rule in the system. Business outcomes follow from health outcomes. Never the other way around.

The nervous system mental model

The analogy that sits at the centre of the entire framework. The human nervous system does not diagnose from a single signal – it receives input from thousands of nerve endings simultaneously, builds a picture, and decides how to respond.

Pura works the same way. Individual modules – nutrition, sleep, fitness, biology – are the nerve endings. Each sends signals. The intelligence layer is the brain. It receives everything, finds patterns across modules, and decides what to do.

Progressive profiling is how the brain learns. Not a data collection exercise. A relationship built over time.

The 7 Dimensions of Health

The framework that every module maps back to. These are not product categories. They are human ones.

Dimension

Module

We Input

Nutrition and medication

We Move

Fitness

We Feel

Mental wellbeing

We Exist Biologically

Biology and PureScore

We Live Somewhere

Environment

We Sleep

Passive data layer

We Age

Expressed through PureScore healthy years

When every feature has a clear home inside one of these dimensions, the connections between modules become obvious. The complexity does not disappear – it becomes manageable.

Concentric rings – how understanding builds over time

Each user is understood through a set of concentric rings that build outward from the centre. The system earns each ring. It never jumps ahead.

Ring

Stage

What it does

1

Core data

Universal, collected from day one, the foundation everything else builds on.

2

Recommendation moment

Pura reads the core and decides whether to recommend a journey or let the user choose.

3

Journey layer

A health dimension activates and a new ring of data requirements opens around the core.

4

Progressive profiling

The intelligence layer fills the gaps, passively observing and asking only when it needs to.

5

Intelligence moment

Pura has built enough of a picture to surface a finding that feels genuinely different.

Three user types, same journey, different realities

Every health journey in Pura has the same entry point. Underneath, the reason a user is there – and what Pura needs to do for them – can be completely different.

The Informed User knows their condition and tells Pura upfront. Pura’s job is to manage it well.

The Unaware User knows something feels wrong but has no diagnosis. Pura’s job is to build the picture quietly and surface a finding at the right moment.

The Prevention User has nothing wrong yet – but patterns suggest future risk. Pura’s job is to catch it before it becomes a problem.

The Nutrition module was built as the proof of concept: three users, same entry point, diabetic, cardiovascular risk, dietary intolerance – the same screen, the system knowing exactly what sits beneath each of them.

How signals cross modules

No module operates in isolation. A signal detected in Nutrition may only become meaningful when cross-referenced with something observed in Sleep. A pattern in Fitness may confirm a metabolic risk that nutritional data alone could not prove.

Data collected in one module feeds the intelligence layer shared by all modules. A late meal timing signal in Nutrition flags to Sleep. Stress data captured in Nutrition passes immediately to Mental Wellbeing. Vitamin D deficiency from a blood panel flags to Environment – confirming sun avoidance in a country where deficiency should not exist.

The user does not need to understand any of this. They experience Pura getting smarter over time.

The full picture

The complete specification – every rule, table, edge case, and engineering schema across all three systems.

04

Visual Design

Three back-end systems. One front-end experience. Six flows that show how the rules become an interface.

Each flow below is a different facet of the agentic experience – how Pura listens, how it adapts, how it reaches out, and how it stays in context across conversations.

Flow 01

Spotted something. Nothing major. Want to know more?

Pura reaches out softly, then asks permission before going any deeper.

Flow 02

The same home screen, reading the user’s state.

One screen, two states. The user-state machine decides what gets shown.

Flow 03

An image goes in. The full Tone System fires before Pura speaks.

System note: image triggers emergency detection first. No threshold crossed – agent enters reassurance mode. Comprehension defaults to plain language. Intent: reassurance-seeking. The conversation then runs all the way to a real-world prescription order.

Flow 04

Voice changes the modality. The Tone System still runs underneath.

Strip the chat UI away. The same backend logic decides what the agent says.

Flow 05

Hand the user the wheel. Everything is interactive.

The agent waits. The user picks the thread.

Flow 06

Why healthcare can’t rely on a flat chat history.

Claude and ChatGPT give you a long scroll. Pin it yourself. Over a multi-year health journey, that breaks – so the agent does the organising.