diff --git a/x-pack/plugins/observability_solution/apm/public/components/routing/templates/apm_main_template.tsx b/x-pack/plugins/observability_solution/apm/public/components/routing/templates/apm_main_template.tsx index fce1beca92e46..50068dd414cbb 100644 --- a/x-pack/plugins/observability_solution/apm/public/components/routing/templates/apm_main_template.tsx +++ b/x-pack/plugins/observability_solution/apm/public/components/routing/templates/apm_main_template.tsx @@ -141,8 +141,9 @@ export function ApmMainTemplate({ return aiAssistant?.service.setScreenContext({ screenDescription, starterPrompts: [ - ...(!hasApmData - ? [ + ...(hasApmData + ? [] + : [ { title: i18n.translate( 'xpack.apm.aiAssistant.starterPrompts.explainNoData.title', @@ -154,8 +155,7 @@ export function ApmMainTemplate({ ), icon: 'sparkles', }, - ] - : []), + ]), ], }); }, [ diff --git a/x-pack/plugins/observability_solution/observability/public/pages/alerts/alerts.tsx b/x-pack/plugins/observability_solution/observability/public/pages/alerts/alerts.tsx index 4287057c4fe10..b145dd92c300d 100644 --- a/x-pack/plugins/observability_solution/observability/public/pages/alerts/alerts.tsx +++ b/x-pack/plugins/observability_solution/observability/public/pages/alerts/alerts.tsx @@ -80,9 +80,11 @@ function InternalAlertsPage() { useEffect(() => { return setScreenContext?.({ - screenDescription: `The rule types that are available are: ${JSON.stringify( - ruleTypesWithDescriptions - )}`, + data: ruleTypesWithDescriptions.map((rule) => ({ + name: rule.id, + value: `${rule.name} ${rule.description}`, + description: `An available rule is ${rule.name}.`, + })), starterPrompts: [ { title: i18n.translate('xpack.observability.app.starterPrompts.explainRules.title', { diff --git a/x-pack/plugins/observability_solution/observability_ai_assistant/public/index.ts b/x-pack/plugins/observability_solution/observability_ai_assistant/public/index.ts index 747fcc1c90fb9..ff9e9929f3098 100644 --- a/x-pack/plugins/observability_solution/observability_ai_assistant/public/index.ts +++ b/x-pack/plugins/observability_solution/observability_ai_assistant/public/index.ts @@ -28,8 +28,6 @@ export type { RenderFunction, }; -export { defaultStarterPrompts } from './content/starter_prompts'; - export { AssistantAvatar } from './components/assistant_avatar'; export { ConnectorSelectorBase } from './components/connector_selector/connector_selector_base'; export { useAbortableAsync, type AbortableAsyncState } from './hooks/use_abortable_async'; diff --git a/x-pack/plugins/observability_solution/observability_ai_assistant/public/plugin.tsx b/x-pack/plugins/observability_solution/observability_ai_assistant/public/plugin.tsx index 686044a16ffbc..2b9ab400a08f8 100644 --- a/x-pack/plugins/observability_solution/observability_ai_assistant/public/plugin.tsx +++ b/x-pack/plugins/observability_solution/observability_ai_assistant/public/plugin.tsx @@ -21,7 +21,6 @@ import { createUseChat } from './hooks/use_chat'; import { createService } from './service/create_service'; import { createScreenContextAction } from './utils/create_screen_context_action'; import { getContextualInsightMessages } from './utils/get_contextual_insight_messages'; -import { defaultStarterPrompts } from './content/starter_prompts'; import type { ConfigSchema, ObservabilityAIAssistantPluginSetupDependencies, @@ -65,10 +64,6 @@ export class ObservabilityAIAssistantPlugin enabled: coreStart.application.capabilities.observabilityAIAssistant.show === true, })); - service.setScreenContext({ - starterPrompts: defaultStarterPrompts, - }); - const withProviders =

( Component: ComponentType

, services: Omit & { diff --git a/x-pack/plugins/observability_solution/observability_ai_assistant/public/service/create_service.ts b/x-pack/plugins/observability_solution/observability_ai_assistant/public/service/create_service.ts index 9ccfca66e53b3..9e0adc5a94d8f 100644 --- a/x-pack/plugins/observability_solution/observability_ai_assistant/public/service/create_service.ts +++ b/x-pack/plugins/observability_solution/observability_ai_assistant/public/service/create_service.ts @@ -13,6 +13,7 @@ import { createFunctionRequestMessage } from '../../common/utils/create_function import { createFunctionResponseMessage } from '../../common/utils/create_function_response_message'; import { createCallObservabilityAIAssistantAPI } from '../api'; import type { ChatRegistrationRenderFunction, ObservabilityAIAssistantService } from '../types'; +import { defaultStarterPrompts } from './default_starter_prompts'; export function createService({ analytics, @@ -27,7 +28,9 @@ export function createService({ const registrations: ChatRegistrationRenderFunction[] = []; - const screenContexts$ = new BehaviorSubject([]); + const screenContexts$ = new BehaviorSubject([ + { starterPrompts: defaultStarterPrompts }, + ]); const predefinedConversation$ = new Subject<{ messages: Message[]; title?: string }>(); return { diff --git a/x-pack/plugins/observability_solution/observability_ai_assistant/public/content/starter_prompts.ts b/x-pack/plugins/observability_solution/observability_ai_assistant/public/service/default_starter_prompts.ts similarity index 100% rename from x-pack/plugins/observability_solution/observability_ai_assistant/public/content/starter_prompts.ts rename to x-pack/plugins/observability_solution/observability_ai_assistant/public/service/default_starter_prompts.ts diff --git a/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/components/chat/starter_prompts.tsx b/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/components/chat/starter_prompts.tsx index 2893acab2c2cb..50ad3e730d5c0 100644 --- a/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/components/chat/starter_prompts.tsx +++ b/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/components/chat/starter_prompts.tsx @@ -38,7 +38,7 @@ export function StarterPrompts({ onSelectPrompt }: { onSelectPrompt: (prompt: st .reverse() .flatMap((context) => context.starterPrompts) .filter(nonNullable) - .slice(-4) + .slice(0, 4) ); return ( diff --git a/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/plugin.tsx b/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/plugin.tsx index 58b303955e34c..1e226aa99c8a8 100644 --- a/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/plugin.tsx +++ b/x-pack/plugins/observability_solution/observability_ai_assistant_app/public/plugin.tsx @@ -17,7 +17,6 @@ import { import type { Logger } from '@kbn/logging'; import { i18n } from '@kbn/i18n'; import { AI_ASSISTANT_APP_ID } from '@kbn/deeplinks-observability'; -import { defaultStarterPrompts } from '@kbn/observability-ai-assistant-plugin/public'; import type { ObservabilityAIAssistantAppPluginSetupDependencies, ObservabilityAIAssistantAppPluginStartDependencies, @@ -48,7 +47,7 @@ export class ObservabilityAIAssistantAppPlugin } setup( coreSetup: CoreSetup, - pluginsSetup: ObservabilityAIAssistantAppPluginSetupDependencies + _: ObservabilityAIAssistantAppPluginSetupDependencies ): ObservabilityAIAssistantAppPublicSetup { coreSetup.application.register({ id: AI_ASSISTANT_APP_ID, @@ -77,10 +76,6 @@ export class ObservabilityAIAssistantAppPlugin >, ]); - const clearScreenContext = this.appService?.setScreenContext({ - starterPrompts: defaultStarterPrompts, - }); - ReactDOM.render( { - clearScreenContext?.(); ReactDOM.unmountComponentAtNode(appMountParameters.element); }; },