Case Study // Vessa.ai

Vessa.ai Case Study

Designing a Character-Led Conversational Concierge for a Text-Only Interface

Vessa.ai character showcase
Channel WhatsApp
Focus Behavioural design, prompting, guardrails
Outcome High-confidence recommendations in 1-2 turns

Vessa.ai set out to build a restaurant booking concierge delivered entirely through WhatsApp. The product needed to provide high-quality, personalised recommendations while maintaining a distinct, brand-aligned personality.

1. Context & Problem Framing

Building Trust Without a Visual Interface

Vessa.ai set out to build a restaurant booking concierge delivered entirely through WhatsApp. The product needed to provide high-quality, personalised recommendations while maintaining a distinct, brand-aligned personality.

This created a set of overlapping challenges:

  • No visual interface: tone, structure, and wording had to carry the entire user experience
  • Open-ended user input: users could ask anything, regardless of available data
  • Limited external data APIs: incomplete coverage of dietary requirements, availability, and edge cases
  • High expectation of trust: recommendations needed to feel confident, not generic or uncertain
  • Performance constraint: value had to be delivered in 1-2 conversational turns, not long exchanges

Without a clear behavioural system, the AI risked becoming inconsistent, overly verbose, or unreliable, effectively improvising the brand in real time.

2. Role & Responsibility

Designing the Behavioural and Interaction Layer

I worked directly with the founder to design the behavioural and interaction layer of the product.

Owned

  • Character design: tone, personality, behavioural rules
  • Interaction model and conversational patterns
  • Prompting structure and example scenarios
  • Definition of system guardrails: scope, limitations, refusals

Influenced

  • UX decisions around recommendation flow and user journey
  • How and when information is requested versus inferred

Collaborated With

  • Founder: product vision and brand intent
  • Engineering: implementation constraints and system behaviour

3. Approach & Reasoning

Tone Becomes the Interface

Key Insight

In a text-only environment, there is no UI to structure the experience. Clarity, pacing, and trust are entirely carried through language.

Research to Decision Shifts

1. ICP Interviews (PAs supporting HNW clients)

Insight: Users prioritise speed and confidence over exploration.

Decision: Shift from conversational discovery to a recommendation-first model.

2. Service Philosophy (e.g. "Unreasonable Hospitality")

Insight: Great service anticipates needs, not just responds.

Decision: Embed proactive suggestions such as drinks, transport, and proximity.

3. Technical Constraints (WhatsApp, APIs, memory)

Insight: The system cannot reliably answer all queries.

Decision: Design for explicit limitation handling, not silent failure.

Core Design Principles

Recommendation-first interaction

Lead with strong, confident suggestions before asking follow-up questions.

Constrained intelligence

Design around what the system does not know, not just what it does.

Tone as structure

Use phrasing, formatting, and pacing to replace missing UI elements.

Minimal conversational drag

Reduce unnecessary back-and-forth to reach value quickly.

Key Trade-off

Prioritising speed and clarity reduced opportunities for open-ended exploration, but significantly improved trust and usability in a messaging context.

4. System Design & Execution

From Monolithic Prompting to a Modular Behaviour System

Rather than writing a single monolithic prompt, I designed a modular character and interaction system.

A

Character System

Character DNA

Defined core, immutable traits: service orientation, confidence level, communication style, and boundaries and limitations.

Character Bible (Living System)

Centralised all behavioural logic: tone and voice rules, interaction patterns, refusal and repair strategies, emoji usage and constraints, and self-awareness and scope boundaries.

This acted as the single source of truth for all outputs.

B

Interaction Model

Designed a consistent response structure:

  • Immediate recommendation with a clear, confident suggestion
  • Contextual justification explaining why this place fits
  • Optional refinement prompt only when necessary

This replaced typical chatbot behaviour: question-heavy, low-confidence responses.

C

Few-Shot Scenario Design

Created structured examples for key interaction types:

  • Recommendation framing
  • Handling missing data
  • Conversational repair
  • Out-of-scope queries
  • Follow-up suggestions

These reduced variability and improved reliability across edge cases.

D

Emoji & Tone System

Developed a constrained emoji framework:

  • Limited set of approved emojis
  • Defined usage frequency and placement
  • Ensured tone remained polished, not gimmicky

E

Dietary Requirement Mapping

Due to incomplete API coverage, I built a heuristic mapping system linking dietary needs to cuisine likelihood.

This enabled the system to make informed recommendations under uncertainty while reducing hallucination and improving user trust.

F

Internal "Voice Engine" (Custom GPT)

Trained a GPT on the full character system to act as a real-time reference tool for the team, provide consistent answers to edge cases, and enable rapid content creation in Vessa's voice.

This functioned as an operational layer for maintaining consistency, not just a writing tool.

5. Outcomes & Evidence

What the System Enabled

  • Consistent interaction behaviour across all user scenarios
  • Ability to deliver high-confidence recommendations in 1-2 turns
  • Reduced ambiguity in responses through structured phrasing and justification
  • Clear handling of limitations instead of silent failure or hallucination
  • Enabled the team to iterate and launch a beta product with embedded brand and CX principles

6. Reflection & Transferable Insight

Behavioural Design Replaces Interface Design

What Worked

  • Treating character as a system, not a layer of copy
  • Designing explicitly for constraints and failure modes
  • Prioritising speed-to-value over conversational depth

What I Would Refine

  • Introduce more structured feedback loops from real user interactions
  • Further personalise recommendations using richer memory over time

Transferable Insight

In constrained conversational environments, behavioural design replaces interface design.

Without a defined system, AI defaults to generic outputs, brand becomes inconsistent, and trust erodes quickly.

With a structured approach, interaction becomes predictable and scalable, character reinforces product value, and the system can extend across channels such as voice and avatars without redesign.