You keep the model, the framework, the prompts and the business logic. We hand the agent a wallet and a set of limits, and you never write the plumbing around it again.
You can find a vendor for any one of these. The gap is that they do not know about each other, so you end up writing the glue that decides whether a message is allowed to go out at all. That glue is the product.
One send path for every channel, under an identity of its own. Many employees can sit behind one number without crossing wires.
Talking is not the job. This is the desk the employee works at, and the only things on it are the ones you put there.
The part that makes the other two safe to point at a paying customer. Checked on every call, never left to the prompt.
Hire the employee once. After that, everything it wants to do in the world goes through a single path, whatever the channel and whatever the action.
nivaro.employees.create({ name: "Priya", role: "Support", wallet: ["whatsapp", "email", "calendar"], can: ["refund up to ₹5,000 per customer per day"], budget: { daily: "₹2,000" } })
priya.do({ action: "refund", amount: "₹18,000", target: "order_48213" }) // one of four answers, always with an id
Most agent infrastructure gives you success or an exception. That is not enough to run money through. These four are the whole surface.
A call in one system, SMS in another, WhatsApp in a third, and your own database trying to stitch them into a story afterwards. That is the normal outcome, and it is why nobody can answer "what happened" without a morning of work.
You did not ask for a logging product. You get one anyway, because the control plane has to write it all down regardless.
None of it is the interesting part of your product, and all of it has to exist before you can put an agent in front of a paying customer.
We would rather hear it now than after we have shipped it. Early access includes a direct line while the interface is still soft.
Get early access