@@ -54,26 +70,43 @@ export const Thread: FC = () => (
const ThreadScrollToBottom: FC = () => (
-
);
// ---------------------------------------------------------------------------
-// Welcome screen (shown when thread is empty)
+// Composer — Grok pill style with inverted send button
// ---------------------------------------------------------------------------
-const ThreadWelcome: FC = () => (
-
-
- A
+const Composer: FC = () => (
+
+
+
+ {/* Send button (hidden while running) */}
+
+
+
+
+
+
+
+ {/* Cancel button (shown while running) */}
+
+
+
+
+
+
+
- Atlas
-
- Your product requirements guide. Let's define what you're building.
-
-
+
);
// ---------------------------------------------------------------------------
@@ -82,58 +115,27 @@ const ThreadWelcome: FC = () => (
const FollowupSuggestion: FC<{ suggestion: { prompt: string } }> = ({ suggestion }) => (
-
+
{suggestion.prompt}
);
// ---------------------------------------------------------------------------
-// Composer (input area)
-// ---------------------------------------------------------------------------
-
-const Composer: FC = () => (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-);
-
-// ---------------------------------------------------------------------------
-// User message
+// User message — subtle right-aligned bubble
// ---------------------------------------------------------------------------
const UserMessage: FC = () => (
-
-
-
+
+
+
);
const UserText: FC<{ text: string }> = ({ text }) => (
-
+
{text}
);
@@ -145,7 +147,7 @@ const UserActionBar: FC = () => (
className="flex items-center gap-1 mt-1 justify-end opacity-0 group-hover:opacity-100 transition-opacity"
>
-
+
Edit
@@ -153,16 +155,16 @@ const UserActionBar: FC = () => (
);
// ---------------------------------------------------------------------------
-// Assistant message
+// Assistant message — plain text, no bubble, small avatar
// ---------------------------------------------------------------------------
const AssistantMessage: FC = () => (
-
-
+
+
A
-
-
+
+
@@ -171,16 +173,18 @@ const AssistantMessage: FC = () => (
);
-const AssistantText: FC = () =>
;
+const AssistantText: FC = () => (
+
+);
const AssistantActionBar: FC = () => (
-
+
Copied
@@ -192,7 +196,7 @@ const AssistantActionBar: FC = () => (
-
+
Retry
@@ -201,7 +205,7 @@ const AssistantActionBar: FC = () => (
);
// ---------------------------------------------------------------------------
-// Branch picker (for regenerated responses)
+// Branch picker
// ---------------------------------------------------------------------------
const BranchPicker: FC = () => (
@@ -210,15 +214,15 @@ const BranchPicker: FC = () => (
className="flex items-center gap-1 mt-1 opacity-0 group-hover:opacity-100 transition-opacity"
>
-
+
-
+
/
-
+