Inspiration

Finding something to buy is easy. Getting comparable quotes, asking the right follow-up questions, and understanding the actual total takes hard work.

NaiNai started with a search for coffee-table under a college student's budget and a simple thought: everyone deserves someone who asks careful questions and bargains on their behalf, taking inspiration from the haggling skills of my grandmother

What it does

Tell NaiNai what you need in plain language. It researches public listings, finds supplier contacts, and coordinates nonbinding quote collection and negotiation through supported email and phone channels.

Its workspace brings together conversations, quote versions, public price baselines, and original evidence. Comparisons account for equivalent terms and known costs, like missing shipping, taxes, or fees

You can pause a task, take over a supplier conversation, review the findings, and export a quote packet. Then, you can choose your winning quote from a quote list NaiNai compiles for you.

How we built it

I built NaiNai with React and TypeScript, an Express backend, and SQLite persistence.

Claude interprets buying requests and helps structure findings. Apify powers public-source discovery and page collection. Microsoft Graph supports connected Outlook inboxes, while Cartesia powers the voice experience.

The application enforces operating limits, tracks communication state, preserves source evidence, and binds reviews to the current versions of the findings. Vitest and Playwright cover critical backend and browser behavior.

Challenges we ran into

The hardest challenge was building the agent harness that turns a buying request into a coordinated sourcing workflow. NaiNai needs to research suppliers, choose appropriate tools, manage conversations, and compare fluid quotes while staying within the user's requirements.

if a supplier replies after the request changes, or if a call finishes after the task is paused, or if an email request times out without a clear sending outcome. I had to make task state, tool permissions, conversation history, and recovery explicit so the agent could handle those situations without duplicating outreach or acting on outdated instructions.

Keeping public observations, model interpretations, supplier statements, and simulated examples distinguishable shaped the entire system.

Accomplishments that we're proud of

I built a connected workflow from a buying request to evidence-backed comparison and reviewed export.

Live checks exercised Apify research, Claude analysis, Cartesia speech, and an answered phone role-play using application tools. Alongside integrating these tools in what I believed to be a smooth way, I was also able to successfully purchase the coffee table I needed that sparked this whole idea for a 25% discount.

What we learned

A useful buying assistant needs more than persuasive conversation. It needs attributable evidence, comparable terms, reliable controls, and the ability to say “we don’t know yet.”

Furniture and evaluation-only GPU compute also revealed why comparison rules must adapt to the request: delivery and condition matter for one, while topology, billing increments, and minimum commitments matter for the other.

What's next for NaiNai

Improve multilingual discovery and expand NaiNai's scope beyond just American suppliers and expand supported communication channels while preserving human control.

Built With

Share this project:

Updates

Submission history