The nav item / tab the user is currently on
OptionalResourceType?: stringResource type (e.g., "Custom", "Dashboards", "Records")
OptionalAdditionalAdditional context reported by the active view/component. Contains whatever state the current view wants the agent to know about — active tab, filter state, pipeline status, selected items, etc. Updated dynamically as the user interacts with the view.
The application the user is currently viewing
Application description
Application name (e.g., "Data Explorer", "Chat")
OptionalCapabilitiesThe live capability manifest — names + descriptions only (the catalog, not handlers). Tells the co-agent which client tools and delegation targets are valid right now on this surface, without re-declaring provider tool schemas mid-session.
OptionalAgents?: AppContextAgentRef[]Currently-valid invoke_agent delegation targets.
OptionalTools?: ClientToolMetadata[]Currently-valid client tools (resolved by the unified client-tool resolver).
OptionalNavigableThe OTHER applications the user can open from here (name + description). Distinct from
OtherNavItems (which are sections WITHIN the current app). This is the list of valid
AppName values for a NavigateToApp call — without it the co-agent can't know what to
navigate to and ends up passing an undefined/guessed app name.
Other nav items available in the current app (name + description only)
Basic user context
User display name
User's assigned roles
OptionalViewWhat the user currently sees / has selected on the active surface. Additive (async consumers ignore it); populated by surfaces that opt in and streamed to the realtime co-agent over the ClientContextChannel.
OptionalFreeText?: stringFree-text the surface wants the agent to know ("editing form X, field Y").
OptionalSelection?: { EntityName?: string; RecordIDs?: string[] }The user's current selection, if any.
OptionalVisibleEntities?: string[]Entity names currently visible on screen.
Snapshot of the user's current application context. Injected into agent system prompts via the
{{ appContext }}template variable.Designed to be lean — gives the LLM enough to act intelligently without bloating the prompt. Full details are available via client tools if needed.