
An In-House AI Assistant
Scout is the AI assistant living on tecovas.com, on hand to help customers with sizing questions, order status, returns, and finding the right pair of boots without waiting on anyone. When a question genuinely needs a person, Scout hands the conversation off live to a Tecovas support agent with a summary already in hand, so nobody has to explain themselves twice.
Thirty Percent Wasn't Cutting It
Tecovas had been running on Gladly's off-the-shelf assistant, and while it was serviceable, it was only resolving somewhere around thirty percent of the conversations it picked up, which meant the other seventy percent landed on our CX team anyway and we were paying tens of thousands of dollars a year for the privilege. I made the case that we could do better ourselves and architected an in-house replacement on Cloudflare Workers, with the conversation engine, the browser widget, a staff admin console, and an evaluation harness all living in one monorepo. We're currently sitting at eighty-three percent containment.
Grounded in Real Data, Behind a Locked Door
What makes Scout genuinely useful rather than merely conversational is that it never answers from memory alone. Every reply is grounded in real Tecovas data through a set of read-only tools that reach into our product catalog in Sanity, order and fulfillment status in Shopify, return and refund state in Loop, customer history in Gladly, and a full-text knowledge base. Since a fair number of those tools touch personal data, I built identity gating directly into tool access, so order and return lookups only fire when the storefront vouches for an authenticated Shopify session or the customer can prove the email on the order, and a mismatch returns the exact same refusal every time so the bot can never be used to fish for whether an order exists.
Handing Off Without Dropping the Thread
Escalation was the piece I was most worried about getting wrong, since the worst possible outcome is a frustrated customer explaining their problem a second time. When Scout decides it's out of its depth, the widget connects straight through to Gladly over their chat-rocket transport and the conversation continues live with a real agent, while the engine quietly generates a scrubbed summary of everything discussed so far and drops it into the conversation as a note before the agent ever says hello. Gladly stays the system of record throughout, which kept our CX team working in the tool they already knew.
Putting the Dials in the Right Hands
A chatbot is only as good as the people tuning it, and those people are rarely engineers, so I built a staff console where our marketing and CX teams can shape Scout's persona, voice, and handoff rules, stage those changes as a draft, and test-run them against the real engine before publishing. To keep changes from quietly regressing, I also put together an evaluation harness that replays archived conversations through the engine and judges the results, so we can tell whether a prompt tweak actually improved anything before it reaches a customer.
© 2026 Alton Chaney
Built with React Router and Tailwind