Three ideas carry you from the organization's material to a working experience. Keeping them apart is what lets one Agent appear in several places without its instructions being copied.
Agent
How to answer, and what governed material may be used.
Modality
What the Agent is to the public. At most one.
Delivery
Where that Modality appears. As many as needed.
Agent
An Agent owns its instructions, its model, its Areas — and through them its Knowledge and Standards — and its Connectors. It is independent of any particular door. The same Agent serves colleagues in Chat, approved AI clients over MCP, your own systems through the API, and, when it has a Modality, the public.
Modality
The Modality is what the Agent is to someone outside the organization: a chatbot, or an answer for your site's own search. An Agent carries at most one, because the Modality forks its instructions, its model, its tools and its settings.
An Agent with no Modality is not unfinished. It is internal, and internal is a finished state: it still answers on every door that requires signing in.
Delivery
A Delivery is where that Modality appears. The one you can install today is the website widget: a chat bubble for a chatbot, or the AI overview on your search page for a search Agent.
Why the boundary matters
Change the Agent when the answer should change everywhere. Change the Delivery when only one place needs a different look, a different domain, or different visitor-facing text.
The rule that decides it: a setting belongs on the Agent if two embeds holding different values would always be a bug, and on the Delivery if they can legitimately differ.
A change-routing example
Suppose an answer to a visitor is too formal. If the tone is wrong everywhere the Agent appears, change the Agent's instructions. If only one site should read differently, leave the Agent alone and change that widget's own text.
The same test works while troubleshooting. Decide first whether the bad result follows the Agent or one place it appears. That keeps configuration reusable, and stops you forking an entire answering system to fix something local.