Luke Woods
next→

Lucid · Product Design Internship

Bringing Lucid AI Out of the Canvas

So you can find a doc you can’t name.

Role
Product Design Intern
Timeline
May – Aug 2026
Team
Two scrum teams: search + AI
Shipped
GA, all tiers, Aug 5
Impact
012weeks from zero to GA
03AI skills shipped at launch
AllAlltiers, free through enterprise
020user interviews, 5 countries

Beyond the numbers: every future docs list AI skill inherits this panel, its entry point, its response patterns, and its failure states.

Lucid AI

Find or summarize a document...

Not a screenshot: the shipped experience rebuilt in code from our design file, running the Find docs loop. Content is the file’s demo data.

Lucid AI could already help you inside a diagram. It could not help you find one. I designed the AI chat panel for the docs list: the entry point, the layout system, the response patterns, and the failure states that every future docs list skill now inherits. It shipped to general availability on every tier, free through enterprise, 12 weeks after the project started.

Context

The AI lived in the editor. Your docs live everywhere else.

Lucid is a visual workspace: Lucidchart for diagramming, Lucidspark for whiteboarding. The docs list is home base. It is where every document lives and where every session starts.

Lucid AI existed before this project, but only inside the editor canvas, working on one open doc at a time. The docs list, where you decide what to open in the first place, had no intelligence at all.

The challenge

Search only matched titles. Titles are the first thing people forget.

Docs list search ran your keywords against document titles. If you remembered the exact name, you found your doc. If you remembered anything else about it, who worked on it with you, roughly when, what was inside, you were out of luck. Advanced filters existed but were hidden, slow to fill out, and still could not see inside a doc.

The team defined the metric before any design work: search-to-open success rate. A search works if you open something it surfaced.

  • Prior research: analytics plus 39 external interviews, run by my PM before I joined
  • Heavy users with 60+ docs found the right doc in the top 5 results 48% of the time. Lighter users, 35%
  • When search failed, people asked a colleague, kept link lists in other tools, or rebuilt the doc from scratch
The before

Feel the jump.

The old Lucid docs list homepage: a search bar that only matches keywords against document titles, with no AI entry point
The shipped Lucid AI side panel docked beside the docs list, offering Find docs, Summarize, and Build a diagram skills

The old docs list. The search bar matched titles and nothing else.

What shipped

One panel, three skills, every tier.

Two things went to general availability on August 5. The AI chat panel was my design end to end: a docked side panel that expands to a full page, carrying three skills at launch. Find docs, Summarize, and Build a diagram.

The second piece is the AI summary section inside the regular search bar: direct answers above the keyword results, triggered when a query runs four words or longer. My manager led that design. I contributed ideation and some of the UI.

Find docs: search by what you actually remember.
Summarize: the gist of a doc or a group of them.
Timeline

Zero to general release in 12 weeks.

May 7Research and design startMay 20Development and design QAJul 20Internal releaseAug 5General release, all tiers
  • May 7Research and design start
  • May 20Development and design QA
  • Jul 20Internal release
  • Aug 5General release, all tiers
  • May 7: Research and design start
  • May 20: Development and design QA
  • Jul 20: Internal release
  • Aug 5: General release, all tiers
Research

I inherited the problem. I tested the answer.

The problem was already validated when I joined, so my research was evaluative, not generative. I ran 20 interviews with external users across the US, UK, Chile, India, and New Zealand, putting concepts and iterations in front of them to answer two questions. Are we building the right thing. Can people use it.

Every design round went back in front of users. The loops stayed short because the questions stayed small.

The possibility space: twenty candidate skills, mapped before cutting to the three that shipped.

The AI could already create. What people wanted was for it to find, explain, and catch them up.

The reframe that came out of design testing

Generation alone was not enough. Build a diagram stayed, and shipped. But the testing kept surfacing the same additive finding: the assistant people described was one that knew their workspace, not just one that could draw.

Design decisions

The upgrade lives where the old behavior lived.

The entry point is an AI icon directly beside global search. People already look there when they are looking for something, so the new capability sits exactly where the old habit points. No new surface to discover, no education campaign. A one-time callout introduces it, then gets out of the way.

The AI icon docks beside search. The upgrade lives where the old behavior lived.
Layout

Four layouts went in front of users. One kept the page usable.

I prototyped four layouts in code and tested them: side panel, modal, floating panel, inline bar. The side panel won because it kept the docs list usable while you asked. You could see the results it referenced without the answer covering them.

  • shipped
    Side panelKept the page usable while you asked
  • ModalBlocked the docs list behind it
  • Floating panelCovered the docs it pointed to
  • Inline barNo room for a real conversation

Continued testing showed power users felt cramped at 400px, so the full page became the panel’s expand state, one click apart via the expand and collapse icons. Which one should be the default is a real question, so I designed an A/B test to settle it: side panel default versus full page default, measuring discovery, toggle rates, and layout persistence.

Lucid AI docked as a side panel beside the docs list
Lucid AI expanded to a full page over the docs list

Docked: ask without leaving the docs list.

This toggle mirrors the shipped interaction: the expand icon in the panel header flips between these two states.

Teaching

The first click teaches. Every click after does.

Clicking a skill tile in the zero state does not run the skill. It returns a hardcoded explanation of what the skill can do, with concrete examples and quick-start chips. These are brand-new capabilities, and the first click is the best teaching moment you will ever get. I accepted a slower first turn so people learn what each skill can do and get more from every turn after.

Find docs is the clearest case: it searches by content, date, and collaborator. None of that is guessable from an empty text box.

The results component

Seven results in a 400px panel.

3 → 3from 3 fixed results to up to 7

Testing pushed the result count from a fixed 3 to up to 7, chosen by the AI on confidence. The existing 24px button component bloated at that count, especially in the 400px side panel. So I designed a 16px inline component: a doc chip plus a one-line description, keeping a full result set scannable in one glance.

V1: three results in the 24px component, rest behind a click.
Shipped: up to seven results in the 16px component, all visible.
The mention tool

Free text can't tell one Sam from three others.

Collaborator was the detail people remembered most, and the one free text handled worst. I designed an @-mention that resolves the person before the search runs: autocomplete mid-type, a resolved chip in the query. It removes a whole class of failed searches instead of improving their error message.

Boards@Sam T.and I worked on in May

Trust

Every response shows its work.

Research kept surfacing the same anxiety: what is this thing reading? So every response names the skill that ran, as a pill on the message, and shows what it searched in an expandable chip. Searched users, plus two more. Tap to see the full list. Trust came from receipts, not reassurance.

Generated work follows the same principle of staying in your control. Build a diagram creates in a new tab and returns a clickable chip. The canvas never ambushes you; you choose when to enter it.

The shipped flow, captured live: Build a diagram assembling a board in its own tab while the panel reports progress.
Failure states

Every dead end converts to a next step.

When the results miss, the response admits it, asks for one more clue, and offers refinement chips scoped to what it already knows. The user refines instead of retyping from zero.

Asked for something it cannot do, it names the limit and offers two things it can do as buttons.
The spinner names what it is doing. Reused from the editor assistant on purpose: saved engineering effort, kept the two assistants consistent.
Impact

A ship, a harness, and the next iteration's data.

  • Shipped to general availability on every tier, free through enterprise, 12 weeks from zero
  • Every future docs list AI skill inherits the panel, the entry point, the response patterns, and the failure states
  • The A/B test I designed settles the layout default with data and drives the next iteration after my internship ends
Hackathon

Third place in the AI category.

Midway through the summer, Lucid ran its internal hackathon. My team entered the AI category and took third place.

What we built stays inside Lucid. The prism below stands in for it: a glass pyramid raytraced live in your browser by a WebGL2 fragment shader I wrote for this site, with real refraction, dispersion, and total internal reflection.

Rendered in real time, one raytrace per pixel. It holds still if your system asks for reduced motion.
Reflection

The model can do anything. The product is choosing what it should.

Every decision on this project traded off speed, cost, and usability. Being technical enough to hold those conversations with engineers changed what I could design: the working-state reuse, the confidence-based result count, and the teaching turn all came out of those trade-off discussions, not from a spec.

We shipped fast because feedback was constant. Users saw every round, engineering saw designs days after they existed, and nothing waited for a big reveal. The speed came from communication, not from skipping steps.

The honest limitation: the editor assistant and the docs list assistant do not share context yet. Closing that gap is the obvious next chapter.

Reducing Authentication Friction →
⌂·work·emailcopied·linkedin·résumé