Support chat that ships itself.
One tag. Your customers get a chat widget that answers their questions. You get the transcripts + a way to fix the bugs they surface.
No credit card. Works on any stack — the widget is a plain script tag.
Live in about five minutes
No SDK required, no build step, no npm install. Three steps, and the third one is optional on day one.
Paste the tag
One line before </body>. The widget loads async and renders in a Shadow DOM, so it can't collide with your CSS.
Add your docs
Write Markdown, paste a URL and let the scraper pull it in, or push your whole corpus through the API from CI.
Wire up your tools
Give the bot a URL template with placeholders and it can look up a real order, not just describe where to find one.
<script async
src="https://vroxy.ai/widget.js?tenant=YOUR_PUBLIC_KEY"></script>
YOUR_PUBLIC_KEY is on your Embed page right after signup. It's public by design — it grants nothing but the ability to start a conversation.
More than a chat bubble
Everything below is in the box — not a tier, not an add-on, not "coming soon".
Answers from your own words
The bot speaks from a knowledge base you control — Markdown you wrote or pages it scraped. Not a model guessing about your product.
Tools that reach into your app
A URL template with placeholders becomes a tool the bot can call. Look up the real order, check the real plan, return the real answer.
Handoff that isn't a fight
The bot stands down the instant an operator types, and picks the thread back up with full context when you hand it back.
Verified identity
Sign identify() claims with your workspace secret and tools unlock per visitor — public, user, or admin. Unsigned claims grant nothing.
Files and screenshots
Images and documents, picked, pasted, or dropped, from both sides. Ask a visitor for a screenshot and they approve it before anything is captured.
Errors, in the same place
The widget reports its own JS errors and our SDKs report your server's, grouped by fingerprint. The ticket and the stack trace finally meet.
Search every transcript
Full text across titles, visitors, and every message body, with the matching line highlighted in the result.
Operators on their phone
A native operator app, so a visitor asking for a human doesn't wait for somebody to open a laptop.
Yours, not ours
Brand color, logo, greeting, voice, and model. Detachable, draggable, and it remembers where the visitor put it.
Installs the way your stack already works
The script tag works anywhere. If we have an SDK for your stack, it also signs identity on your server and forwards your errors — the fiddly parts you'd otherwise hand-roll.
The widget in the corner of this page is Vroxy
Installed through our own public Ruby gem, answering from our own documentation. Not a sandboxed demo — the same product you'd install, which is how we find the rough edges before you do.
Go ahead and ask it something.
Questions people actually ask
Will it make things up about my product?
It answers from the knowledge base you publish and the tools you define. When it doesn't have an answer it says so and offers a person, instead of producing something plausible.
Does it break my site's CSS?
No. The widget renders inside a Shadow DOM, so your styles and ours can't reach each other. It loads async and doesn't block your page.
Can a visitor pretend to be an admin?
Not in any way that matters. Identity claims are only trusted when signed with your workspace secret on your server, and only a verified claim can unlock a tool that reads customer data.
What happens when nobody on my team is around?
The bot keeps answering. If a visitor asks for a human, the request is recorded and pushed to your operators — including the mobile app — so it's waiting when someone's back.
Who owns the conversation data?
You do. Transcripts and visitor identity stay in our database, scoped to your workspace. We don't resell it, mirror it to third-party analytics, or train models on it.
Something not covered? Read the security page, or ask the widget.
One tag away
Sign up, paste the snippet, point it at your docs. You'll know within an afternoon whether it's answering the questions you're tired of answering.