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);
};
},