Skip to content

COROS AI · Case Study

Designing an AI that remembers you

“My World” is an experience that remembers your coaching conversations with COROS AI, showing your breakthroughs, reminders, and ongoing concerns at a glance. I designed it end to end: architecture, interface, and the AI prompts that write every card.

Prompt EngineeringUX/UIDesign EngineeringProduct Design
Role
Product Designer · Prompt engineering · Co-implementation
Team
Founder/CEO · 2 engineers · 2 designers
Timeline
April 2026 – August 2026 (in progress, shipping incrementally)
Tools
Figma · Claude Code · Streamlit · TypeScript, React on Next.js

The product

COROS AI: an AI life coach that helps you navigate relationships and communication.

It is a B2C AI-native coaching platform with a chat-based interface, where people have long, ongoing conversations by text and voice. I joined as the founding product designer, and my work has spanned product design, UX, prompt engineering, user research, and brand.

Try what I built
The Coaching Provocation card: 'Identity is built, not discovered,' ending in a question back to the user.
A session detail page ('Exploring Visa Paths and Defining Your AI Offer') with summary, entry and exit moods, reminders, and a breakthrough quote.
The My World page: a featured band with the My Breakthroughs donut, a breakthrough quote, and Coaching Provocation cards above the Reminders widget.

The problem

How we got here

25 customer interviews. One thread ran through nearly all of them: the coaching lands, but the product never shows it.

“I had a difficult relationship with one of my nephews. From COROS, I had breakthroughs there. I can’t find them anymore.”

“If I could separate work and relationship conversations into different threads, that would be really useful.”

The ask wasn’t better coaching. It was somewhere to see the coaching they’d already done.

So I gave the conversation structure:

  • Session: one bounded conversation about one situation.
  • Topic: the recurring situation that many sessions belong to.
  • My World: where your topics, breakthroughs, provocations, and open commitments live.

Architecture

How the AI organizes memory

A Session is an event. A Topic is a territory the user keeps returning to.

My World → a topic's territory → one session's detail.

The rule I fought for: a topic is a situation, never a feeling. “Conversation with dad,” not “Self-worth.” It now governs the detection pipeline.

The interface

The interface

The page

Featured band, reminders, topics. Filters live inside widgets, never on the page.

Two widgets became one

The breakthrough donut was about to be cut. Instead of defending it, I merged it with the Latest Breakthrough card and specced the full state machine.

Mode A: browse all breakthroughs. Mode B: click a segment to filter by dimension. Auto-advance moves the donut's selection live.
  • Every edge case resolved before handoff: wrap, backward symmetry, empty dimensions.
  • Settled a team debate and delivered cross-filtering without breaking the no-page-filters rule.

Reminders

Pooled across all sessions. Done gets confetti. Delete exists because AI can be wrong.
  • Unchecking re-inserts at original chronological position.
  • I flagged the engineering implication (timestamp in shared state) in the spec myself.

Decluttering

From a data table to a bento box. Every topic became a widget you could scan, not a row you had to read.

The redesign rationale

Initial designs featured topics like a CRM

I pitched against it to stakeholders, and landed on a widget-style bento box design for the entire page, including topics, introducing more ways of visualizing data rather than just a topics list.

An early version of the topics page: a dense, spreadsheet-like list with heavy metadata, closer to a CRM than a coaching tool.
Before: a dense table of topics.
Topic surfaces after repeated simplification passes: inline metadata, sticky CTAs, dimension filtering.

The AI

The prompts are the product

Every card’s content is LLM-generated from prompts I wrote: session summary (v6), topic summary (v7), topic detection, coaching invitation.

The Coaching Provocation widget: 'Identity is built, not discovered,' a synthesis across recent sessions that ends in a question and a Revisit action.
A provocation synthesized across sessions, ending in a question back to the user.

The stakes: a wrong “breakthrough” manufactures a false memory. So the prompt has an ownership gate: it can only reflect what the user actually said or agreed to.

And I test them myself

  • Method: 20-session batches, every field checked against the prompt’s own rules.
  • One run surfaced 5 must-fix issues. Each fixed with a surgical clause, not a rewrite.

Transcript review

Finding where the conversation broke

I run the same 20 real session transcripts through every prompt and score each generated field against the rule it’s supposed to follow. I read a stratified sample by hand to confirm the scores, fix the rule that let a failure through, and re-run the same batch to check the fix held. A wrong breakthrough manufactures a false memory, so an inaccurate card is a trust failure, not a cosmetic one.

  1. 20-session batch in

  2. Score every field (semantic + LLM judge)

  3. Read a stratified sample

  4. Fix the prompt

Re-run the same 20 sessions

  • One run surfaced five must-fix issues, each traced to a specific rule the output had violated.
  • Every fix was a single added clause rather than a prompt rewrite, so each change stayed attributable to one behavior.
  • Fixes were verified by re-running the same 20-session batch, not by checking one output.

User conversations are confidential, so the examples on this page are redacted or synthetic. The prompts themselves are company IP.

Co-implementation

From mockups to shipped code

I implemented production grade front-end in TypeScript and React on Next.js.

Reflection

The takeaway

I wrote the doc engineers build from, the prompts that generate the content, the QA tooling that validates them, and increasingly the code itself.

At a pre-seed startup, the most valuable designer is the one who removes handoffs.