Salesforce Agent Assist profiles¶
Status: Current | Last reviewed: 2026-08-28
An Agent Assist profile builds a long-lived Salesforce rail from TrueServe catalog components. Use one when the content belongs to the record rather than an active conversation—for example, email classification, item-level decisions, evidence, and a Review draft action.
Create a profile¶
- Open Tools & Templates → Agent Assist.
- Select New profile and give it a name (its stable identifier is derived automatically; duplicate names receive a numeric suffix). Selecting Create opens the new profile immediately.
- Select one or more published Agent Assist catalogs. All components in those catalogs are inherited by the rail.
- Set the message shown before matching record data is available and check the inherited rail preview. Expand any inherited card to inspect its display title and order, required and optional inputs, defaults, visibility condition, and explicit record bindings. The Context Flow outputs panel provides a comma-separated list of suggested Salesforce output-variable names that can be copied into App Builder.
- Select Save draft, then Publish. Salesforce only loads the published revision.
Profiles are not tied to a Salesforce object. The embedding page supplies its record and context at runtime, so the same profile can be reused on any compatible host page. Catalog components must be published before a profile can be published. The preview shows inherited components; their actual styling renders in Salesforce.
For an email operations rail, select Email Copilot. It contains four inherited components: Email overview, Disposition, Evidence, and Reply recommendation. Disposition uses stacked, wrapping tiles so item details remain readable in a narrow sidebar. The full-width Communications component owns original and translated email display. The recommendation emits draft-response.open and shows the suggested response type, what the reply should cover, and its tone. It only appears while Salesforce's latest completed email is inbound; a sent response hides it, while a draft does not. Components without matching durable data stay hidden. Copilot Cards is a different single catalog containing the five components used by live Copilot experiences.
Supply Salesforce data¶
Create an autolaunched Flow whose API name starts with TrueServe_Context_. It must accept recordId and expose output variables matching the selected components' props. For an email rail, outputs can include intent, automation_tier, disposition_json, response_language, and draft_response.
The Salesforce component accepts up to 64 Flow outputs across all inherited catalog components in a profile. The canvas shows the current count and warns when the selected catalogs exceed that limit. List only the outputs those components use. In Host Record mode Salesforce sends the resulting snapshot directly to the embedded rail rather than placing customer content in its URL.
Binding is automatic and ignores case, spaces, dashes, and underscores: latest_translation matches a latestTranslation prop. Components stay hidden until their required props are available. Catalog components can also name a boolean visibility prop, such as hasUnansweredIncomingEmail, to hide the whole rail item when it is no longer relevant. Exceptional mappings and visibility rules belong in the catalog component schema, so they are configured once and inherited by every profile.
For AI-authored reply guidance, run a Salesforce Pub/Sub workflow when the incoming email is created and use its EmailMessage id as the workflow idempotency key. Store the workflow's response type, summary, and tone beside the durable translation. Agent Assist reads that stored result on every page view rather than calling the model again.
The component loads those Flow outputs when the record opens. This makes the rail durable and record-driven; no agent has to publish a card, and no conversation is created in Host Record mode. The profile editor derives its data-contract inspector directly from the published catalog schemas, so the displayed requirements and rules stay aligned with the runtime rather than being maintained separately.
Snapshot delivery is automatically retried after the embedded rail finishes installing its listener and until Salesforce responds. If a profile loads before its Salesforce data, the matching cards populate without requiring a page reload.
Agent Assist also participates in Salesforce RefreshView. After a host action changes the record—for example, after Translate & Send completes—the component reloads its Context Flow outputs in place. A reply recommendation whose visibility value becomes false disappears automatically; the rail stays mounted and does not return to its initial loading stencil.
When the page first opens, Agent Assist displays a card-shaped loading stencil while it loads the profile, catalogs, and Salesforce data. The finished rail replaces that stencil in one transition. If everything has loaded but no component has the data it requires, the rail shows No suggestions right now and the profile's empty-state message. It does not briefly show the empty state while data is still loading.
Configure App Builder¶
On TrueServe Agent Assist, set:
| Property | Value |
|---|---|
| Assist Source | Host Record for profile components only, or Hybrid to add live copilot cards |
| Agent Assist Profile | The published profile slug |
| Context Flow API Name | Your TrueServe_Context_* Flow |
| Context Flow Output Variables | Every Flow output needed by the selected catalog components |
Auto uses whichever profile and live-conversation properties are configured. Live Conversation ignores the profile. The component always renders only the Agent Assist rail; it no longer duplicates a transcript inside the component.
Launch a Salesforce draft modal¶
Catalog components emit standard A2UI actions. For profile-backed rail components, the action name is forwarded automatically through the TrueServe External Event Lightning Message Channel; nested custom hosts also receive the bubbling externalevent DOM event. Configure a host adapter to subscribe, handle an event name such as draft-response.open, inspect payloadJson, and open its email-composer modal. The adapter is independent of the reusable profile and catalog.
To add a new external action, add a standard A2UI action to the catalog component and implement the matching event name in the host package. No profile toggle or central capability registration is required. The event is only a message; it cannot perform a Salesforce operation unless an installed subscriber handles it.
In the Embecta app, add TrueServe Email Actions to the same Case page as TrueServe Agent Assist. It has no visible UI; it listens for draft-response.open, reloads the authoritative recipient, subject, target language, English draft, and recommendation from the selected Salesforce analysis, and then launches Review response. Only one instance is needed on the page. The Embecta adapter listens to both the managed-package and legacy unnamespaced TrueServe External Event channels, so installed and unpackaged Agent Assist components use the same modal action.
The inbound workflow creates and stores the suggested response once, so the modal opens immediately without another drafting call. Review or revise the single English Response field, then select Translate & send. Salesforce stores the approval, queues translation and delivery, and closes the modal immediately. The Reply recommendation becomes a background-progress card, so the agent can continue working. Salesforce records the outbound email only after translation and delivery succeed, shows a completion notification, refreshes the rail, and removes the card. It blocks duplicate submissions while delivery is active or after the analysis is marked sent; a failure returns the recommendation to a retryable state and surfaces the retained error.
On the resulting EmailMessage, Text Body retains the English working draft and Email Language is English. Translated Subject and Translated Text Body contain the localized content delivered to the customer. A successful send refreshes Agent Assist in place and removes the Reply recommendation.
The standard send workflow id and sender address are configured through the TrueServe_Email_Send_Workflow_Id and TrueServe_Email_From_Address Custom Labels. The workflow must return outputs.translate_reply.translated_body, outputs.send_email.status=ok, and a delivery message_id.
See Multilingual email operations for the full intake and review experience, and Salesforce components for credentials, CSP, and general component setup.