Domains
A domain groups context into a named set — entities, briefs and skills — that agents ask for by name. → The concept
The Domains page
Studio → Domains lists domains as cards or a table; + creates one. Click a domain to open its page: Roster (its entities), Briefs, Skills, Meaning and Access. Identity — label, API name, colour, icon, description — sits behind the settings cog.
Every row opens the thing it names, so a domain page is a way into what it carries rather than a list you read and leave. Each of the first three tabs also has a New button — New Entity, New Brief, New Skill — which creates the artifact, maintains it here, and adds it to this domain in one step.
Three roster columns matter:
| Column | What it tells you |
|---|---|
| Also in | Entities are shared, not owned. When account_360 is in two domains, editing it changes both |
| Status | Whether the entity has been activated. An entity that has never been activated is not delivered — this domain lists it and agents receive nothing |
| Home Domain | Who maintains the entity (see below) |
One card carries a Default badge: the domain served to everyone who has no other. Install creates it as General. Rename it freely — the badge, not the name, is what makes it the default. → Domain access
Create one
| Field | Note |
|---|---|
| Label | What people read. “Sales Desk” |
| API name | How tools refer to the domain. Follows the label until you edit it; fixed after creation |
| Description | Becomes the generated tool’s purpose statement. Write coverage and intent — “Everything a seller needs about an account and its open business” — not a contents list |
| Color | Twelve fixed swatches. Tints the card icon and the dot on member entity cards |
| Entities | What the domain carries, chosen from the catalog |
| Allow writes | Admin-only. Off by default: agents reading through this domain can never change anything, whatever its entities allow. A rep domain writes, a customer-facing one does not, on the same entities. → Write access |
An agent’s planner reads the description when deciding whether to call the tool, and a contents list goes stale as soon as the domain changes. A duplicate name blocks the save.
One entity per object
Adding a second entity on the same object is refused, and the conflict is named. When two audiences need different views of one object, make two domains:
Both include Account; only Opportunity differs.
Grant access
Two buttons on each card, because they are two different jobs.
| Button | Grants | Who it is for |
|---|---|---|
| Users | Read — this domain’s catalog | Anyone whose agents should see it |
| Managers | Edit — what it carries, and the entities it maintains | People who look after the domain. They also need ContextWorks Domain Manager |
Both accept a user, a public group, a role, or a role and its subordinates. The card shows both counts.
Giving someone a domain limits them to it: the default domain drops away automatically, so there is nothing to revoke. Whether their agents can also change records is a separate question. → Domain access
Set a home domain
An entity’s home is the domain whose managers maintain it — a coloured pill in the builder’s status bar, changed under the title’s cog, listed in the Home Domain column. Home and membership are independent:
- An entity can be in five domains and homed in none. Homeless means admin-maintained.
- Rehoming changes who maintains an entity, never what any agent receives.
- Object defaults have no home. They answer every direct call, so they stay admin-owned.
Admins can rehome anything. A manager can only move an entity between two domains they both manage.
Change what it carries
Add and remove on the tab itself, or click Edit on a card to move entities between Available and Included. The change is live on the next call — no deploy, nothing to regenerate in Agentforce.
Where the domain allows writes, an admin-only Allow unattended writes box appears with it. Off by default, a change comes back as a proposal and is saved only once confirmed. On, it is saved on the first call, for automated processes with no person in the loop. It never widens which fields can be changed. → Turning writes on
Notes
- Preview Catalog on a card shows exactly what agents with this domain can discover right now — live coverage, not the membership list read back.
- Deploy → Custom generates Apex tools scoped to the domain, which call the package’s public API and name the domain. → Custom tools
- Deleting a domain leaves its entities alone; they are referenced, not owned. Tools that name it report an unknown domain rather than quietly falling back to another one.
- You may not need one. Records load through each object’s default entity, and the three generic actions need no domain. Add one for a second view of an object, or a purpose-named tool a planner picks by intent.
What’s next
- Deploying — get this in front of agents