lan hoang

Prism

Product design, design system, agent writing and interaction patterns, role-based workflows2026Credits
Refract
Visit website: refract.group (opens in a new tab)

An AI operations platform for agencies and consultancies.

Overview

Problem
Prism is for agencies of 15 to 90 people. Past about 20, nobody can see the whole firm any more, and the losses start small: a change of scope nobody logged, a designer booked at 112%, a client who went quiet three weeks before leaving. Those signs sit in Slack, email, calendars and time tracking, which project tools don't read.
What I did
Prism is a demo-stage operating system for agencies. I led product design for the early product, turning the concept into a working demo and testing product flows.
Outcome
By the time the product was being prepared for demos, I had built out underdeveloped screens with realistic mock data and created an agency simulation with active projects running through the system. My contribution was helping turn Prism from a product idea into something that could be shown, tested, and understood by agency users.

Context

The job was to make a pretty complex idea feel simple: agencies would use AI agents to help run projects, manage capacity, follow up invoices, prepare for meetings, and support employees day to day.

I designed the main product flows across founders, managers, and employees. That included the Morning Brief, Command Center, project views, onboarding, notifications, approvals, billing, meeting capture, and proposal generation.

I helped establish what each person should see and do in Prism.

  • Founders needed a view of revenue, margin, capacity, projects, and what the agents were doing.
  • Managers needed to understand delivery, team utilisation, resourcing, and project health.
  • Employees needed a simpler workspace for tasks, project context, timesheets, agent updates, and Capture.

This wasn't just about changing permissions. It meant designing different views, levels of detail, and workflows for different jobs.

The problem

Billable time is how these firms make money, and billable utilisation fell to 66.4%, the lowest SPI Research has recorded in 19 years of its benchmark1. The warning signs, like an unlogged change of scope or a designer booked at 112%, are spread across conversations, calendars and timesheets, and nobody has time to read them all.

The product had to hold the moments where an agency has to act.

  1. 01

    A client asks for more work outside the agreed scope.

  2. 02

    A deal closes and needs to become a staffed engagement.

  3. 03

    A project starts to drift.

  4. 04

    An invoice or follow-up is overdue.

  5. 05

    A team member needs context before a client call.

The design problem was to show a firm its own state without adding another dashboard to check.

Constraints

  • Prism only knows what the firm's tools already record. Nobody fills in a form for it.
  • The same product has to work for a 15-person studio and a 90-person consultancy.

Research

I grounded Prism in Refract's own experience as a creative agency, working closely with our creative directors to understand how client work, resourcing, scope, billing and delivery decisions play out week to week.

I also tested the early product with one design partner. Those sessions were about the technical side of the platform: how the underlying data, agent activity and workflows could be made visible and useful to an agency team.

For broader industry context I paired this firsthand work with published research on agency operations, utilisation, scope creep and margin pressure. SPI Research's 2026 benchmark reports project margins rising modestly and profitability stabilising after earlier declines1, and Asana's survey of over 13,000 knowledge workers found 60% of the day going on work about work: chasing status, searching for information and switching between apps2.

  1. 01

    Operators wanted a short list

    None of them studied charts. At this size the founder still does client work, so they wanted a short list of decisions, in order. That list became the Needs You queue.

  2. 02

    Ranking people backfired

    The first staffing screen ranked people by fit, and the partners rejected it. At 20 people everyone knows each other, and anyone who sees their own score starts working to it.

  3. 03

    Status lived in conversations

    The tools only held what had been assigned. A project's state showed up in a thread going quiet or a status left green while the dates moved, so the agents read conversations and calendars as well as tasks.

Aim

Prism comes with the standard playbooks for a service business already loaded, and works inside the tools the team already uses.

Testing

Refract runs an agency, and Prism was built from how we work. We tested it on our own projects before showing it to anyone else.

  1. 01

    It started in Slack

    The first version had no interface of its own. We connected the agents to Slack and people chatted to them in the channels they already used. It was the cheapest way to find out whether anyone would talk to an agent at all, and we knew the answer before I drew a screen.

  2. 02

    We tested it on ourselves first

    Our design lead and operations lead used it on live client projects. They already did the scheduling, scope tracking and invoice chasing Prism was meant to take over, so they knew straight away when it got something wrong. I could put a rough screen in front of them the same week I drew it.

  3. 03

    Then we brought in design partners

    Once it worked for us, we onboarded agencies outside Refract and sat with them while they used it on their own projects. They ran things differently to us. Plenty of what we had treated as normal turned out to be just how Refract works.

  4. 04

    Their feedback changed the product

    We kept reworking it after each round. Staffing moved into a capability map, the queue was regrouped around who needed to act, and we tightened the agents' writing guidelines so their recommendations were clearer and more useful.

Solution

I made the agent side of Prism easier for people to trust and use.

Instead of showing users a dashboard full of numbers, the product needed to tell them what mattered that morning, why it mattered, and what they could do next. I worked on the Morning Brief, source visibility, agent activity, confidence levels, approval steps, notifications, and escalation patterns.

The agent writes your morning list

People at agencies spend most of their day checking on work. Asana surveyed over 13,000 office workers and found that 60% of their day goes on chasing updates, looking for information and switching between apps2.

The agent makes a short list each morning with only the things a person needs to decide, and it handles the rest by itself.

Each item on the list comes with the facts already gathered. For example, if a client asks for work that wasn't in the contract, the agent finds the contract, checks what was agreed and works out a price for the extra work, so all you have to do is decide. Without these facts, someone would still have to find the contract and do the maths, and the list wouldn't save anyone any time.

Agencies usually notice extra work weeks later when they send the invoice, and by then it is too late to charge for it. Because the agent spots it on the same day and puts a price on it, the agency can talk to the client and get paid for the work instead of losing the money.

Every file the agent read

Stanford tested four AI search tools and found that only about half of their statements matched the sources they listed3, so people are right to double check AI answers.

Most AI tools show a few sources under each answer, but wrong answers often happen because the agent never opened the right file, and a short source list can't show you what's missing.

I gave the sources their own screen that lists every file the agent read by name, so you can see straight away if an important file is missing.

This makes problems easy to fix. If the contract isn't on the list, you can upload it and ask again, and if the contract is there but the answer is still wrong, you know the agent made a mistake and you can report it. The missing file is the more common problem, which means most of the time you can fix it yourself.

See the widget before you add it

Different people want different things on their dashboard. A strategist wants to see how each project is going, while a finance lead wants to see which clients haven't paid, and each of them should be able to set this up without asking for a custom build.

The problem is that many people never set up their dashboard at all. Nielsen Norman Group found that people often don't know what they want and won't spend time on settings to figure it out4.

Most setup screens ask you to imagine the result before you choose, and that is where many people give up. I put a live preview next to the settings using example data, so you can see exactly what each widget looks like before you add it.

Outcomes

  • Connecting tools and setting up the business during onboarding
  • Starting projects and choosing a team based on capacity and past work
  • Tracking scope, delivery, and approvals
  • Following up unpaid invoices
  • Preparing for meetings, flagging scope changes, and pulling out action items
  • Creating proposals from previous work, capacity, and contract information

Specific screens and metrics are under NDA. More at prism.so.