Skip to content

Use someone else's router

Your agent can use a router that someone else runs: a model provider serving its own models, or a central router at your company.

its namethe router’s identity, such as large.example.com
its addresswhere it listens, such as https://large.example.com
a route namethe name of the model to use, such as large
admissionthey add you to their rules: your agent’s name, or you as a person

They need no key from you, and you need none from them.

Terminal window
hexaeight-activate engine --add chat \
--name chat \
--model "large|<model id>" \
--router "large.example.com|https://large.example.com"
heia restart agent

When the agent starts, it checks that the address answers as that name. If it does not, the agent turns that engine off and says why in its log.

Each engine names its own router, so some engines can use your own router and others someone else’s.

your agent is working fortheir router sees
a person signed in to your agentthat person, proven with their own key
a caller from outside, with outside callers kept privateonly your agent

For people and agents that reach your agent from outside, your agent can keep every caller private. It sends :opaque: instead of who the caller is, and the router records the call against your agent. In hexaeight-agent.json, add this to the external section:

"opaqueCallers": true

Then restart the agent with heia restart agent. Your agent still records each caller in its own audit trail.

A router can refuse private callers (requireIdentifiedCaller). A provider’s router usually accepts them; a company’s router for its own people usually refuses them.