An agent joins a workspace the way a person does: it has an owner, a scope and a record of what it did. Everything below is how that works.
Ovin
Ovin talks to the AI kernel, and the kernel sits under every app rather than beside them. Ask it about a customer and it reads the actual record. Ask it to draft the reply and it writes into the actual thread.
It runs inside your workspace with the scopes you gave it — the same ones you would give a colleague — and every action it takes is logged.
More about Ovin →Which deals stalled this month? Draft a nudge to each owner.
Three have had no activity in 30 days.
Northwind€24,000Halvorsen€9,500Kestrel BV€41,200Drafted three replies. They are in the mailbox, unsent.
Now spin up a server for the demo.
Refused. research-agent has ~/crm. Machines are ~/cloud.
How it works underneath
Every app declares what it can do to the operating system once, at startup. That single registration is what produces the screen your team uses — and the same declaration is handed to the AI kernel, published as an API endpoint, exposed as a tool an agent can call, and written into the event log every time it runs.
Nothing is bridged and nothing is kept in step by hand. An app cannot ship a feature the AI does not know about, because there is only one place to ship it.
Build, scope and deploy agents against your own workspace.
Conversations and generation, for your team and your customers.
Expose any operation to any agent runtime, scoped exactly as a person would be.