diff --git a/packages/views/chat/chat-page.tsx b/packages/views/chat/chat-page.tsx
index ec89b744ed..ab496e0987 100644
--- a/packages/views/chat/chat-page.tsx
+++ b/packages/views/chat/chat-page.tsx
@@ -136,7 +136,7 @@ export function ChatPage() {
// The conversation pane: message list / skeleton / empty above a persistent
// banner + input. Identical composition to the floating window's body, so a
- // brand-new chat (no active session) still shows the starter prompts + input.
+ // brand-new chat (no active session) shows the agent-aware empty state + input.
// No compose-box agent selector โ the agent is fixed when the chat starts.
const conversation = (
@@ -157,10 +157,7 @@ export function ChatPage() {
onLoadOlderMessages={() => void c.fetchOlderMessages()}
/>
) : (
- c.handleSend(text)}
- />
+
)}
{c.noAgent ? (
diff --git a/packages/views/chat/components/chat-empty-state.tsx b/packages/views/chat/components/chat-empty-state.tsx
index 0ed88ed636..0a266d3d53 100644
--- a/packages/views/chat/components/chat-empty-state.tsx
+++ b/packages/views/chat/components/chat-empty-state.tsx
@@ -4,32 +4,13 @@ import type { Agent } from "@multica/core/types";
import { ActorAvatar } from "../../common/actor-avatar";
import { useT } from "../../i18n";
-// Three starter prompts shown on the empty compose. Each is keyed into the
-// chat namespace so labels translate per locale; the icon stays raw since
-// emojis are locale-neutral.
-const STARTER_KEYS: ("list_open" | "summarize_today" | "plan_next")[] = [
- "list_open",
- "summarize_today",
- "plan_next",
-];
-const STARTER_ICONS: Record<(typeof STARTER_KEYS)[number], string> = {
- list_open: "๐",
- summarize_today: "๐",
- plan_next: "๐ก",
-};
-
/**
* Empty compose placeholder shown when a chat has no messages yet. Agent-aware:
* it leads with the chosen agent's avatar + name + description so the user knows
- * exactly who they're about to talk to, then offers starter prompts.
+ * exactly who they're about to talk to. The composer below is the entry point โ
+ * no starter prompts, they read as filler more than help.
*/
-export function EmptyState({
- agent,
- onPickPrompt,
-}: {
- agent: Agent | null;
- onPickPrompt: (text: string) => void;
-}) {
+export function EmptyState({ agent }: { agent: Agent | null }) {
const { t } = useT("chat");
const description = agent?.description?.trim();
return (
@@ -48,25 +29,9 @@ export function EmptyState({
? t(($) => $.empty_state.chat_with_named, { name: agent.name })
: t(($) => $.empty_state.first_time_title)}
-