AI command center for homeowners. A third of them put off repairs rather than face hiring someone. It scopes the job, compares the bids, and waits for your approval.
Professional
May – Jun 2026
Lead Product Designer (Me)
2 Product Designers
7 Engineers
3 PMs
React + Tailwind
Claude Code
Problem
Most homeowners already expect this to go wrong
Leaf Home / Morning Consult, 2025. HomeServe, 2025.
It is one of the most stressful purchases a homeowner makes, and eight interviews showed why. Trust starts social: people ask a neighbor or a friend first, because they assume online ratings can be gamed. When word of mouth runs out, they fall back on marketplaces they trust even less. Then the grind begins. They repeat the same problem to contractor after contractor, book visit after visit, and wait on quotes that come back impossible to line up against each other. Three frustrations surfaced in almost every interview.
No way to know who to trust
"Finding the right person is the hardest part."
No benchmark for a fair price
"You can't really know if the price is fair."
Comparing quotes is exhausting
"I had to make so many phone calls just to compare prices."
Insight
Every homeowner unsure about price was actually unsure about scope. When contractors propose different fixes for the same issue, their quotes describe different work, so there is nothing to compare. One homeowner was quoted $250 to $7,000 for the same siding repair, and the telling part is that he had already worked out the answer: hire someone to diagnose and define the scope, then send that one scope out for comparable bids. He had described Homewise before we built it. Fix the scope, and the price becomes legible.
Interview 1 of 8 · same siding repair, 5 contractors quoted
Why this is hard
Three constraints shaped every decision that follows.
Homeowners rarely know how to describe a repair, and they have no reason to trust the numbers that come back.
Trust is a data problem as much as an AI one. Credible matching has to run on real license and permit records, not the model's best guess.
One change ripples through scope, matching, quotes, and tracking, so nothing here could be designed as a single screen.
Solution
Homewise acts on the reframe: scope first, price second. Neither the words nor the numbers is an automation problem. A chatbot would leave them guessing at both, so I pushed for a structured, human-in-the-loop workflow instead. Every step stays checkable: you approve the scope before it shops and the hire before it books, and the trust signals are public records rather than ratings.
| Stage | Why the stage exists |
|---|---|
| 1. Scope | You do not know the right words, so the agent writes them with you. |
| 2. Match | You cannot vet a stranger yourself, so the agent checks licenses, insurance, and permits. |
| 3. Compare | Different scopes cannot be compared, so every bid answers the same one. |
| 4. Track | Jobs slip back into scattered calls, so the whole job stays in one place. |
Process
Engineering used to be the slow part, so design got front-loaded and the build came last. Now the team can stand up a working version faster than I can finish a static mock, so I flipped the order and build first. Each loop starts from the PM's PRD, our shared intent: the problem, the users, and the metrics to move. The prototype exposes gaps the document cannot, which feed back into the PRD. Because Homewise is one connected system, I validated it live rather than trusting static mocks. Less time on mockups, more time on the calls only a person can make. I took this from Jenny Wen, Head of Design for Claude, who argues the design process is dead.
Final Design
You describe the problem in your own words. The agent turns it into a structured, editable scope of work, the most important artifact in the whole product.
The tradeoff

The first intake could not say no. It asked for three shots, one click flipped to "Photos uploaded", and the conversation moved on with no photo ever checked. Nothing pushed back, and it felt fake.

I rebuilt the intake to push back: the shipped chat is built to check the photo in front of you, a shot the agent cannot read gets rejected with advice for the retake, and the conversation moves only once it has what it needs. An agent that can say no is one you can believe.
The same scope goes out to every contractor, so you stop repeating yourself on the phone and everyone quotes the exact same job. That only works if you believe the scope you are sending, which is where the first version failed.
The tradeoff

The scope's diagnosis led with "92% confidence". Three of four testers asked what the number was based on, and every attempt to explain it, a one line source, then a step by step trail, just added chrome.

I replaced the score with "Most likely cause", and the diagnosis with a local price benchmark does the trust work the number was not doing. A claim that can explain itself beats one that only sounds precise.
Homewise surfaces a verified, fairly priced match with its reasoning: verification on license, insurance, and real permit history, and how many Homewisers recommend them. Social proof, the way a neighbor refers someone, not an anonymous star rating. Ratings can be gamed. Permit records cannot.
The tradeoff

The actions sat at the top of the page: reject all three, show three different, approve and send. It asked for a commitment before you had read a single row, and the swap icon on every column was decorative, wired to nothing.

I moved Approve below the evidence into a "Ready to proceed" dock, so the decision comes after the read. Any column swaps for its next best match in one click, and an urgent job pulls bids back in 24 hours instead of five days. The page never asks for a yes it has not earned.
Bids line up side by side with a plain language summary and outlier flags, the comparison homeowners reach for ChatGPT to fake today. The agent recommends, but nothing happens until you approve. A deliberate, human moment, never an autopilot default.
The tradeoff

The first version topped the matrix with a "3 deviations flagged" headline and tucked contact under Approve as a small ghost link. The count didn't match the matrix, and four of four testers wanted the call first.

I dropped the count and moved the flags into the cells they describe, and the summary names them: the $75 fee, the missing warranty language. "Ask before booking" became a full button above Approve, so the page reads ask first, then approve.
Once a contractor is booked, the whole job lives on one dashboard. It tracks itself from scheduled to closed out, so it never slips back into scattered calls and texts.
The tradeoff

The job's thread did not know when the job ended. With the work complete it still read "Live thread", the status still said awaiting your approval, and the suggested next step was still to approve Jason. The story stopped mid sentence.

I made the thread the tracker. The agent narrates each step as it happens, booking confirmed, visit complete, work confirmed, and files what it produces as cards. When the work ends the ending is written in, and the thread flips to Completed. The story gets its ending.
Homewise is live and interactive.
Design System
Homewise runs on Hearth, its own design system. It reads like a calm, premium homeowner tool, closer to Notion or Linear than a SaaS dashboard, with a humanist warmth most AI brands skip.
The palette is read by role, not hue: sage for trust, ember for caution, sky for info, over a warm cream canvas and near black ink. Type is one typeface, Geist, on an editorial weight ladder capped at 52px, because larger sans starts to shout. Shadows are banned, so depth comes from a five tier surface ladder and hairlines instead. And it is living code, not a static spec: every new token ships behind a drift linter.
Collaboration
Working closely with the PM and engineers, we made an unusual call: skip Figma and design in the codebase from day one, a real React prototype on Hearth. We handed the dev team the repo itself, and they built the real backend straight onto it. Skipping Figma did not close the door on it. If the team ever needs a traditional handoff, I can push the prototype from Claude Code into Figma through its MCP server, turning the running interface into editable frames. The code stays the source of truth, and Figma is a step we reach for only when it earns its place.
A full walkthrough of the shipped build, four minutes.
Reflection
People only let the agent run when they could see the scope it built, the contractors it verified, and knew the final yes was still theirs. That is why the verification had to run on real records rather than the model's best guess. Building a front end prototype in Claude Code for the first time reframed the deliverable too. It was not a picture of the product. It was the first version of it.
Powered by Claude Haiku 4.5