Inspiration
Your next customer might never browse your store. They might send an AI agent to shop for them.
That is changing fast. People now tell ChatGPT, Gemini or Claude "find me a meal kit under $60 a week and order it." The agent reads your site, compares you with the others, and builds the shortlist. If it can't find your price or tell whether something is a subscription, it skips you, and you never learn you lost a customer.
We talked to a highly successful ecommerce merchant to gain insights into this problem space. Our contact reported spending $150 to $200 a day, per product, just on testing. Google drive of call + transcription: https://drive.google.com/drive/u/1/folders/1PpCsESPGijMukaEi62omGYgMioRMoIwI
The numbers moved faster than we expected. Traffic from AI sources to US retail sites rose 393% year over year in Q1 2026, and those visits converted 42% better than other traffic (Adobe, via CMOtech). Morgan Stanley expects AI agents to make 10% to 20% of US online shopping spending by 2030, and found that nearly 23% of Americans made an AI-assisted purchase in the past month (Digital Commerce 360).
Big retailers run user research before they change anything. A café, a studio or a two-person app company can't afford to. So they change a price or redesign a page and find out weeks later, from the sales they didn't make. We wanted a fast, cheap first pass that tests both kinds of shopper before launch.
What it does
Agent-ready answers two questions about your real website: can an AI agent buy from it, and would your customers?
1. Paste your website. Or describe your product and we build a page for it, or text a link to our iMessage line. An agent opens the site in a real browser and works out what you sell, what it costs and who buys it.
2. Meet your customers. Two kinds of shoppers are cast for your business:
- Customers with real preferences. LangChain deepagent creates subagents, each acting as a personal shopper guided by a customer’s tastes and preferences. Each has a goal, a budget and a share of the customer base, and each is played by a different model family. On our Amazon demo listing they included Maya (19, a first-semester cosmetology student with a $30 budget), Tasha (price-sensitive, a $25 ceiling) and Marcus (a skeptic who wants proof the hair is real).
- AI shopping agents, one each from Gemini and Claude, sent on the errand a real user would give them, such as "find a 14-inch training mannequin head with real hair and order it if the total stays around $28."
Nothing runs until you approve the panel. You can edit anyone, add your own customer, or type a correction ("my customers are older than that") and they are cast again.
3. Watch them shop. Every shopper is its own agent with its own browser. At each step it looks at a screenshot, thinks in character and picks one action: click, scroll, go back, search, add to cart, or decide. You watch it as a map of your real pages, with avatars walking between them and leaving through Bought, Maybe later or Left. Click anyone to see who they are, the prompt that created them, every step with its screenshot and exact prompt, and why they decided.
4. See what they'd tell a friend. After shopping, customers post about their visit, then read each other's posts and reply, repost or scroll past. Network analysis finds the complaint most likely to spread.
5. Fix it. One short list of fixes, each tagged for people, for AI agents or both, with the evidence, who it wins back and how much work it is. Gemini boxes the exact part of each screenshot where customers got stuck. Download it all as a PDF.
6. Test again, and teach them. Change your site and re-run the same customers, carrying their memory, so before and after is a fair comparison. Tell the panel what your real customers do ("most of our buyers are cosmetology students buying for class") and every persona the lesson fits rewrites its memory. Lessons also go to long-term memory per customer type, so the tenth business gets smarter customers than the first.
How honest is it?
We checked our customers against real ones. We picked a real Amazon product, a training mannequin head with 881 reviews in the public Amazon Reviews 2023 dataset. We split the reviews by date, rebuilt the listing page without any reviews, and let our customers shop it.
- Cold, they named 3 of the 6 themes real reviewers wrote about.
- After learning from the older half, they named 5 of 6, scored only on the newer reviews they never saw.
- Their star ratings stayed 1.4 to 2 stars too harsh. We report that instead of hiding it.
So our pitch is "they find what your real buyers will complain about", which we can show, not "they predict your star rating", which we can't yet.
How we built it
Peri: Building for Our Customer Talking to a e-commerce merchant (BAIR LLC), we wanted to know, understand, and solve their biggest problems. Where they leaks the most cash is in product-testing. For every online store they launches, they has multiple products. To make sure these products are worth keeping on their store, they runs product campaigns where they spends $150-200 per product, per day for a week, to see customer reactions to their products. If the reaction to the product is bad at the end of the week, all that money that went into product-testing disappears. What's worse, is now agents are increasingly handling more of the buying/product recommendation process for consumers. When their product description and website doesn't provide what the agents look for, the competitor that does, automatically wins. We built Will Agents Buy to them catch these potential problems before spending another week on product-tests. We were able to test with one of BAIR's websites and products with simulated customers to explore how different tastes, budgets, and priorities shaped a buying decision. This immediately helped BAIR spot potential objections and reiterate to prepare for customers whether they shopped themselves or send an agent.
LangChain Deep Agents: the agents. Every shopper is a LangChain agent with its own model family, its own Chromium browser and its own tools (open_site, click, scroll, back, search, decide). In director mode, one
create_deep_agentruns the whole test: the same shopper spec becomes a Deep Agents subagent, several shop at once through thetasktool, a live plan is kept withwrite_todos, and the run pauses for the owner's approval with an interrupt, saved by a SQLite checkpointer. Sub-agents brief, segment, analyze where people got stuck, critique, and rewrite each persona's memory file. Personas are real files, and aCompositeBackendroutes/memories/to a long-term store shared across businesses.Gemini API. Screenshot lens. When a customer gets confused or leaves, we send Gemini that exact screenshot along with what the customer was thinking. Gemini's spatial understanding returns box_2d boxes around the part of the page that caused it, each with an issue, a fix and a severity, as structured JSON. We group boxes from different customers into hotspots ("3 of 5 got stuck on the shipping line"). These are the boxes in the fix list and the PDF. Shoppers. Gemini 3.5 Flash plays one AI shopping agent and one customer. At each step it reads a screenshot of the page and picks one action. Memory search. Each customer type's memory is embedded with gemini-embedding-001 and searched with Atlas Vector Search. New customers start with lessons learned by the most similar past customers.
Gemini and Claude: the models. Claude runs casting, the analyst and the director, and plays customers. Gemini plays a customer and one AI agent, runs the screenshot lens, and embeds memory for search. GPT plays customers and one AI agent. When a model fails, the run records which model actually stood in.
MongoDB Atlas: memory. Long-term customer memory lives in Atlas through the LangGraph MongoDB store, with Atlas Vector Search so a new customer recalls lessons from the most similar past customers. Every test is mirrored to Atlas, and aggregation pipelines answer cross-test questions such as which model family's customers buy most. As of Saturday night it held 47 tests and 253 customer sessions.
Arlequin: word of mouth. NetworkX builds the who-reacted-to-whom graph, then PageRank, modularity communities, cascades, and which themes crossed between groups. On the mannequin head, the doubt that spread furthest was whether the hair is really human: a skeptic's post carried it and five other customers echoed it, so the top fix became "state one hair material and add proof."
Photon: iMessage. A small TypeScript service on Photon 2.0. Text it a website, reply "ok" to the panel, and a few minutes later get who would buy, the top fixes and what is spreading. Reply with what real customers do and the panel learns. Say "again" to re-test.
LangSmith: tracing. Every model call, director step and subagent run is traced, so we can open the reasoning behind any customer's decision.
Vultr: deploy. The API, the web app and Chromium for every customer run in one Docker container behind Caddy on a Vultr instance, deployed with one script.
React and TypeScript: the app. React, TypeScript, Vite and Tailwind. The site map, the avatars (drawn in code from a seed, faces follow the customer's mood), the per-customer page and the PDF report are all ours. The server prints the report from its own browser.
Challenges we ran into
- Every site said 0 of 7 would buy. The clicks were landing on hidden mobile-menu copies of links, so every customer was stuck on the homepage. We now only offer visible links, buttons, filters and product cards, and a link goes where it actually points.
- Bot protection blamed the business. Sites show "verify you are human" to automated browsers and quietly empty their carts. We detect bot walls, exclude them, and tell the customer an empty cart is our test setup, not the store.
- What counts as a sale. First we counted any "Add to cart" click as a sale, because customers hedged after clicking. That inflated results, so now a cart without a final "buy" is an abandoned cart, and on our generated store a sale means the order was actually placed.
- Configurators. On apple.com every customer got stuck: storage stays greyed out until you pick a color, and they kept clicking it. Customers now hear that a greyed-out option unlocks after an earlier choice.
- Wrong customers. The first casts included people who wanted things the business doesn't sell, with budgets far below its prices. Casting now reads what the site sells and what it costs in a real browser first.
- Comparing the right thing. Amazon reviewers rate a product after using it. Our customers rated a page before buying. We added a separate "stars after a few weeks of use" answer so the accuracy check compares like with like.
- Honest labels. When a model ran out of quota and another stood in, the UI still said the first model. Now every customer shows what actually played it.
Accomplishments that we're proud of
- Customers that really use a real website, with every step traceable down to the exact prompt.
- Two layers in one run, with fixes split between what AI agents need and what people need.
- An accuracy check we didn't tune to look good: 5 of 6 real review themes caught after learning, and a star rating we openly report as too harsh.
- A product a small business owner can use from their phone.
What we learned
- Simulated customers are pessimistic by default. Most of the work was removing reasons they had to say no that a real person would never hit.
- What an AI agent needs from a website is different from what a person needs. A page can win people over and still lose the agent.
- Measuring accuracy changed our pitch. "They find what real buyers will complain about" is something we can show. "They predict your star rating" is not, yet.
What's next for Agent-ready
- Calibrate star ratings against more real products so the score becomes trustworthy, not just the themes.
- "Try the fix before you ship it": inject a proposed change into the page during the test and show the lift before the owner edits their site.
- Test with real small businesses and compare the panel's predictions with their next month of sales.
Built With
- caddy
- claude
- deepagents
- docker
- fastapi
- gemini
- imessage
- langchain
- langgraph
- langsmith
- mongodb-atlas
- openai
- photon
- playwright
- python
- react
- tailwindcss
- typescript
- vector-search
- vite
- vultr