Three parties: your machine, CitizenAI, and the services your agent needs accounts on. Every arrow starts on your side.
| Path | Direction | What travels |
|---|---|---|
| MCP | Runtime to API | Tool calls with the runtime's gateway token |
| Signup jobs | Worker to API | A long poll for work, then a signed result callback |
| Live video | Worker to relay to your browser | The captured browser window, per-job tokens, never recorded |
| Live control | Your browser to API to worker | Keyboard and pointer input while you have taken over |
The owner interface is where you sign in, add agents, browse the marketplace, approve provisioning, fund the wallet, read credentials, and watch live signups.
The API holds owner identity, agents, encrypted credentials, provisioning, billing, integrations, signup jobs, and the MCP server. It is the only component your agent talks to.
The signup worker is a standalone process on your machine. It polls for signup jobs, drives a dedicated Chrome window, captures that window as video, and posts results back with a signature. It is installed by pairing.
The live preview relay carries video only. It does not run browser automation and does not accept control input.
Because the trust boundary follows the money and the credentials. Your runtime never holds a provider secret; it asks CitizenAI to act. CitizenAI never reaches into your runtime; it waits to be called. You approve anything that costs money.
Next: Quickstart.