81%
of customers try to handle it themselves before reaching a live rep.
aside is an AI copilot that lives inside your web app. Your user asks for the change; aside opens the screen and fills in the form. They press save.
One script tag · your actions, your code · no npm install
Someone asks to watch a site. The page’s own action fills the form — and save is still theirs.
A chatbot can tell them where the button is. A tour can point at it. Neither one presses it — so the work still lands on someone, and it lands on you.
What your app already does, now asked for in words. You register the actions you already have —change plan, invite someone, open a monitor— with a name, a description and the function you were going to write anyway.
Nobody has to find anything. The model never touches your DOM or decides where to click: it names one of your actions and passes what the user said. An action you didn't register is refused.
Still your code, still your rules. Your function runs it, on your page. It prepares and shows what it filled — whatever saves, sends or deletes is still a button your user presses.
Try it here. This is the whole integration.
The lines on the left are all you paste. The panel on the right is a simulation — no model, no session, nothing billed — but the form beside it is a real form, and the words fill it in. Saving it is still yours.
aside.register([{
name: 'set_plan',
description: 'Change the plan: free, pro or business',
inputSchema: {
type: 'object',
properties: {
plan: { enum: ['free', 'pro', 'business'] },
},
required: ['plan'],
},
run: async ({ plan }, aside) => {
await aside.fill('#plan', plan);
return { filled: plan };
},
}]);A settings screen, like yours
Ask me for a plan, or tell me what to call you.
It isn't an information problem. Nobody writes to support for fun. They write because they tried it alone and it didn't work.
81%
of customers try to handle it themselves before reaching a live rep.
9%
actually finish. The rest get halfway and end up writing in.
57%
of inbound support calls come from someone who had already been on your site.
$8.01
is what that contact costs on average. Solved alone, it costs $0.10.
Your docs already say where the button is. What's missing is someone to press it.
No package to install, no webhooks, no build step: a script tag, and a function for each action.
One line, and it answers. Paste the script. It reads your documentation, says when it does not know, and hands the conversation to your team — at the top of your aside inbox, and on Slack or a webhook if you connect them. No code.
<script src="https://app.aside.pro/widget.js" data-workspace="your-workspace"></script>
A few lines more, and it acts. Register the actions you want it to be able to run. That is the part your users feel.
aside.register([{
name, description, inputSchema,
run: async (args, aside) => { … },
}]); Or let your coding agent do it. Claude Code, Cursor, Codex: give it this line and it adds the script, writes the actions against your own forms and marks the fields they touch. You check it and press merge.
Read https://aside.pro/skill and add aside to this app No proper docs? Tell it. It writes the page, shows it to you, and saves it when you say so. Or upload what you have — help centre, PDFs, Markdown.
You scale the product, not the support team. And the setup that used to be a tour nobody finished is now something that finishes itself.
And the ones who never get there don't come back: in the median product, 96% of new users are gone by month three (Amplitude, 2,600 companies).
Not for active users. A conversation starts when your user writes and aside answers: people who never open the panel, or open it and write nothing, cost you nothing. It is one conversation while they keep writing — closing the panel or reloading the page does not start another; an hour without a message does — for up to 20 messages, and every 20 after that count as one more. The allowance starts again with each billing month.
solo
49 €/mo
200 onboardings/conversations a month
Get started →starter
99 €/mo
500 onboardings/conversations a month
Get started →pro Recommended
249 €/mo
1,500 onboardings/conversations a month
Get started →scale
Let's talk
Need more?
Contact us →Prices exclude VAT · monthly, cancel whenever
We answer within 24 hours.