AI features inside an institutional investment platform — Nayara Marques
AI surfacesAI platform · private capital markets2024—26

AI features inside an institutional investment platform

Institutional investors were offered a chat box and asked to change how they work. I put the AI touchpoints inside the surfaces they already use, and specified the patterns state by state so the team could ship.

Role

Senior Product Designer. Interaction design, working prototypes, and the delivery spec.

Users

Institutional allocators and fund managers. Sophisticated, time-poor, sceptical of automation.

Timeframe

Ongoing. AS-IS audit through specified states and prototypes.

Built

Designed in Claude Design on the current design system, and shared with engineering through Claude Code.

01 — Context & my role

The platform serves private capital markets: allocators and fund managers running diligence, tracking managers, and preparing for investment committee. Their work is documents — memos, reports, meeting notes — and the decisions that come out of them carry real money.

AI had arrived in the product as a chat panel bolted beside that work. I was the designer on the AI surfaces: the audit of what existed, the interaction patterns, the prototypes in code, and the spec engineering built from.

It was built with the product team rather than handed to them. Regular conversations about how clients actually work located where AI was worth putting: report editing. With the data already in the platform, a report can be generated more precisely, and the value is in what happens next — editing and refining the generated paper in place. That is where the team told us it mattered, and that is where the surfaces went. The feedback so far is qualitative; nothing is measured yet.

The work is still shipping, so this case is illustrated with the wireframes from the delivery spec rather than product screenshots. Labels are invented; structure, states and behaviour are as specified.

02 — The problem

Two problems, not one. The composer asked the user to choose before they could ask, and a single chat panel was answering two situations that need different behaviour.

Nine controls were exposed before a word was typed, and whatever the user selected was then rendered inside the input they were still writing in. Chat was a single destination, while users arrived at it either asking about the page in front of them or changing something inside an output they were already editing.
Where the problem came from
AS-IS audit

Every existing AI state catalogued against the surfaces it appears in — the overloaded first layer and the missing correction path are findings, not opinions.

User feedback, through product

Product sits closest to these clients and the field is narrow. What the experience had to do was decided on their feedback rather than on a generic AI-chat pattern.

How the work is actually done

Where questions arise — in a report, a document, a meeting note — mapped against where the AI lived. The gap between the two is the placement argument.

A — Everything on the first layer

I audited the as-is composer and thread. The first layer of the composer carried too much: a shortcuts row and an all-shortcuts grid, a context picker, a source selector, research, web, history, workflows and send — all exposed before the user had typed anything. Choosing was harder than asking. And once something was selected — a document, a team, a generated output — it was rendered inside the composer itself, mixed into the text the user was still writing, so the question and its context were indistinguishable.

/ Write weekly recap/ List recent findings/ Lorem ipsumAll shortcuts
ContextSource

Ask anything…

ResearchHistoryWorkflows

The as-is composer. Nine controls on the first layer, and selected context rendered inside the input. Drawn in grey throughout; every redesigned bar further down is drawn in ink.

B — One door for two situations

The second problem was entry. Chat was treated as one destination, while users arrived at it in two different situations: asking about something they were looking at on a page, and changing something inside an output they were already editing. Those need different behaviour, and the as-is design gave them the same one.

As-isOne panel for everything
Where the work happens
Report
Document
Meeting notes

The question is always about one of these.

Where the AI lives
AI chat Context: none

It knows the product. It does not know where you were.

What that costs the user, every time
01

Leave the surface. The answer is not where the work is.

02

Describe it again. Re-type context the platform already had.

03

Take back an answer with nothing attached. No provenance, and no way to correct a wrong step short of starting over.

Where the work happens on the left — reports, documents, meeting notes — against where the AI lived on the right: one chat panel with no context attached. Below, the three costs that fell on the user every time.

03 — Constraints

The brief was not to cut features. Shortcuts, context, source, research, web, history and workflows all had to remain reachable — the composer had to get simpler without losing anything. The user needs to see what the model can see. It could not be shown by writing into the field they are typing in, which is what the as-is did. Product sits closest to the clients, and the clients are a narrow field. Their feedback decided what the experience had to do, ahead of any generic AI-chat pattern. The design system lived in Claude Design. The version in the codebase had drifted and its components were inconsistent, so the work had to be built on the Claude Design system and avoid the outdated ones.

04 — Process & key decisions

The work is ongoing and the method was not set out in advance. So far it has moved through four stages: the audit, the placement decision, the state specification, and prototypes built against the system.

01
AS-IS audit

Every AI state that existed, catalogued against the surface it appears in.

02
Placement

Where questions actually arise, mapped against where the AI lived.

03
State specification

Every control written out state by state. The inventory is section 06.

04
Prototypes

Each surface built as a working frame on the current design system, not the drifted one.

05 — Key decisions
Instead of one omniscient panel, AI appears in four places: the dashboard composer for open questions, and inside reports, documents and meeting notes, each already knowing what it is attached to.
Centralised against distributed
Centralised
Dashboard
Reports
Documents
Meeting notes
One AI panel
Knows nothing about where you were
Distributed
DashboardComposer
ReportsIn context
DocumentsIn context
Meeting notesIn context

Centralised on the left: four destinations feeding one panel that holds no memory of where the user was. Distributed on the right: the same four surfaces, each with its own entry point already attached to what it sits in, and what the move gained and cost underneath.

The first layer becomes a field, a plus for attaching, a model selector and send. Features move behind two things the user already knows: / for commands and shortcuts, + for context. Everything selected or generated as context then attaches as a tag row under the input. Twenty-six frames follow from that one move, covering the field and send, the attachment bar, the pickers, voice, modes and the model read-out. Streaming responses show progress honestly. Inline editing lets the user fix a passage in place rather than re-prompting. Agent handoffs are announced. Human-in-the-loop review is a first-class state, not an error path.

05 — The solution

One field for the question, and two doors into the chat instead of one.

A prompt, a plus, the model and send. Commands move behind / and context behind +, and everything attached sits in a tag row under the input. A floating composer for questions that span the page, and an edit mode inside an output for changing what it already says.
A — The first layer holds a question

Two moves. The composer's first layer comes down to a prompt, a plus, a model selector and send — commands live behind / and context behind +. And everything the user has attached moves out of the input into a row of context tags below it, where it stays visible without competing with the question being typed.

Ask anything or type /

WebDeep researchGPT-5.5
Workspace · fundQ2 fact sheet.pdf+4
Dashboard composer — first layer, then the second

One prompt, a plus for context, the model, send. Commands sit behind the slash the placeholder names and context behind the plus — the figure opens that second level and closes it again.

Why — the dashboard is where open questions start, and it was the one surface with no room for a new column, so the composer had to sit in the existing composition.

B — Two doors, and they behave differently
A floating composer hovering the dashboard or a team view, for questions that span more than one object. Once the conversation starts it expands into the full chat. Lives in the output's toolbar. It opens edit mode rather than a thread: the user chats with the output, changes it in place, and saves the result as a version.
Report · Q3 manager review4 of 18
Ask AI

Attached: this report · Q3 manager review · 18 pages

Summarise this page Compare to prior quarter Flag inconsistencies
Ask about this report
Ask AI
Contextual AI in a report

The entry point sits in the report and already knows what it is reading.

Why — the question a user has about a report is about that report. Asking them to restate it in a side panel is asking them to describe context the platform already holds.

Meeting notes · manager callDraft
AI suggested · editing inline Not saved

Action: follow up with the manager on the allocation question.

Action: send the revised allocation question before the committee date

Accept Keep mine Regenerate Review required
Meeting notes

Inline editing, with human-in-the-loop review before anything is saved.

Why — notes become the record other people act on. Review is the state that makes generated text safe to keep.

And the response itself

Neither answer is worth much if the output cannot be trusted or fixed. The response streams with its sources attached, and a passage the user disagrees with is edited in place rather than re-prompted.

Which managers moved most on exposure this quarter?
Generating · 3 sources read
Sources
Quarterly report · p.14 Manager memo · p.2 IC minutes · 12 Aug
Stop Edit inline
Streaming response

Progress shown honestly, with provenance attached as the answer arrives.

Why — an unattributed answer is worse than no answer for this audience, so the source arrives with the text rather than after it.

06 — The states

The composer was specified as twenty-six frames across six families, each carrying the one line an engineer can pass or fail.

The first layer is a field, a plus, a model read-out and send. Everything behind it has states of its own, and most of them had never been drawn: an attachment that fails to upload, a picker on first run with nothing to pick, a microphone that is not there, a model control that disappears when a flag is off.

Where the machine already had numbers, the spec uses them rather than approximations: a 120-second recording cap, a countdown that appears with fifteen seconds left, a 44-bar waveform. Seven keyboard bindings are written out as a contract, and Escape is still an open question — two panels can be open at once, and only the innermost should close.

FamilyFramesStates
Field and send5Typing, multi-line at the cap, sending, send failed, inert
Attachments5One attached, overflow, overflow opened, uploading, upload failed
Pickers5Plus menu in place, where it opens, searching, no results, first run with nothing to pick
Voice5Starting, recording, last fifteen seconds, transcribing, unavailable
Source1Plus menu with Meetings — the one source with no row in the new menu
Modes and model5Both modes off, one mode on, model menu with the flag on and off, model control hidden
Web Deep research GPT-5.5
Meridian Growth IV Q2 fact sheet.pdf +4
A9Multi-line at the cap

Passes when — the field grows to its cap and then scrolls; the toolbar row never leaves the bottom of the bar, and the attachment bar stays attached beneath it.

Compare the fee terms across the three funds attached
Web Deep research GPT-5.5
Meridian Growth IV board-pack-final.pdf

board-pack-final.pdf could not be read. Remove it or try a different file.

A16Upload failed

Passes when — the failed badge is destructive and keeps its ×, and the reason is spelled out below the bar rather than in a toast.

A target-state board is only half a spec. Eight parts of the composer exist today, and each one carries a disposition. Two of them are marked decide because they are genuinely open: whether the plus keeps sources mutually exclusive the way the old dropdown did, and what happens to the two sources that are written into the spec but have no endpoint behind them.

Part todayActionReplaced by
Workspace context chips rowRemoveThe attachment bar beneath the composer
Source dropdownMoveWorkspaces, Meetings and Files & URLs, inside the plus menu
Source exclusivityDecideSource picks one endpoint today; attachments are additive. Either the plus keeps sources mutually exclusive, or the backend takes several at once
Marketplace and Web sourcesDecideBoth are written into the source spec and commented out for want of an endpoint. Either they stay out of the menu until it lands, or they appear inert with the reason
Text-labelled Research / Web rowRemoveMode switches in the plus menu, badges in the bar
Model selector dropdownMoveA read-out beside the mic, with the menu opening above it
Shortcuts dropdownKeepUnchanged — @ and / still open the same two pickers
Voice input controlKeepUnchanged behaviour, new position, and a hover-only chevron

07 — Impact

The surfaces are rolling out, so what can be claimed today is structural: three things are true of the design that shipped. Adoption and time-to-answer are being measured and I would rather publish them once than estimate them here.

Where the gain shows up
The first layer holds a question and little else, and what the model can see sits beneath it as tags. A user can check what is attached without reading it out of their own sentence — which is what the old composer required. Inline editing and human-in-the-loop review are specified states with their own frames, so a wrong answer has somewhere to go. Whether that changes second-use behaviour is exactly what the rollout will tell us. The spec covers what comes out of the composer as well as what goes in: eight existing parts, each marked remove, move, keep or decide. The two nobody had settled — whether sources stay mutually exclusive, and what happens to the two that have no endpoint — are written down as open questions rather than discovered in code.
What was specified
4surfaces with AI in context
26composer frames, across six state families
2chat entry points, specified separately

Adoption and time-to-answer are being measured as the surfaces roll out. I'd rather publish those numbers once than estimate them here.

08 — What I learned

Where the model belongs has to be settled before anything else can be drawn, and getting it wrong makes every state after it wrong too. But it is one decision, taken once. The work that followed was longer and less discussed. Every setting has to be covered, and so does every result of choosing it: the upload that fails, the picker with nothing in it, the microphone that is not there, the control that disappears behind a flag. Each one needs a line that can pass or fail, written against the stress cases rather than the happy path. Specifying in working prototypes removed the ambiguity a static screen leaves behind. It does not follow that I should have built this one — the feature carries real complexity in streaming, agent handoff and versioning, and that build belonged to engineering. Knowing which side of that line a piece of work sits on is the judgement, not the tooling.

09 — What this case doesn't cover

The work is live and unfinished. Five things are outside what is shown here.

Adoption and time-to-answer are still being measured. The counts above are scope — what was specified — not evidence that it worked. Retrieval, accuracy and prompt behaviour are not covered. This case is about the interaction around the model, not the model. The argument came from the AS-IS audit together with user feedback and what product knew about how these teams work. What is not here is that research itself — who was spoken to, how many, and what they said. Floating chat and edit mode are the right split for what the product does today, decided on feedback and workflow evidence rather than tested over time. More surfaces may change the answer. Only the AI touchpoints are shown. Diligence, manager tracking and reporting are the product this sits inside, and they are not part of this case.
AI product design

Let’s build AI into a product with the structure to grow it.

AI changes how a product behaves, not just how it looks. I design the surfaces, specify the states behind them, and leave a structure the team can extend rather than rebuild.

Let’s talk