The router
An agent never holds a model key. Its engines send every model request to a router, and the router passes it on to the model.
- Every request proves who sent it. It is encrypted end to end between the agent and the router, and it proves which agent sent it and, when the agent names them, the person it is for.
- The router decides. Its rules say who may use it, and which models they may use.
- The router records every call: who it was for, the route and model, the tokens used and the time it took.
Who runs one
Section titled “Who runs one”| A company | A model provider | |
|---|---|---|
| who calls it | its own agents, for its own people | its customers’ agents |
| what it reaches | the company’s provider accounts, with their keys | the provider’s own models |
| who it sees | each person by name, and it can refuse callers who are not named | the person, or only the customer’s agent when that agent keeps its callers private |
| who may use it | whoever the company’s rules allow | the customers the provider admits |
| read | Run your own router | Serve models to agents |
The installer can set up a router on the same machine as the agent, with your provider key, or connect the agent to a router that runs elsewhere.
Using someone else’s router
Section titled “Using someone else’s router”An agent can use a router that someone else runs: a model provider’s, or a central one at your company. Point an engine at it by its name and address. There is no API key to store, and neither side sets up OAuth for the other: the router admits your identity, and every request proves it. See Use someone else’s router.
Between organisations
Section titled “Between organisations”The router serves models. When the agents of two companies work with each other directly, see Two agents talking to each other. A company can also vouch for its agent through its own OAuth app, so that other companies’ agents check on every message that the company still stands behind it: see HexaEight and OAuth.