diff --git a/apps/web/src/pages/onboarding-page.tsx b/apps/web/src/pages/onboarding-page.tsx index 6ecfb4c61..667b1a89a 100644 --- a/apps/web/src/pages/onboarding-page.tsx +++ b/apps/web/src/pages/onboarding-page.tsx @@ -133,7 +133,7 @@ export function OnboardingPage({ user }: { readonly user: SessionUser }) { return (
-

Connect a brain

+

Choose your AI model

Pick a provider and connect it, or skip for now and connect one later in Settings.

diff --git a/e2e/browser/composer-layout.test.ts b/e2e/browser/composer-layout.test.ts index 9af68d98e..7d64f07f3 100644 --- a/e2e/browser/composer-layout.test.ts +++ b/e2e/browser/composer-layout.test.ts @@ -48,7 +48,7 @@ describeBrowser("composer layout", () => { // A placeholder key is enough: connecting stores a credential without // calling the provider, and creating a bench needs no inference. - await waitForText(page, "Connect a brain"); + await waitForText(page, "Choose your AI model"); await clickText(page, "label", "Anthropic"); await page.waitForSelector("input[type=password]"); await page.type("input[type=password]", "sk-ant-placeholder"); diff --git a/e2e/browser/first-run.test.ts b/e2e/browser/first-run.test.ts index b6e41a9b9..d65e68d1a 100644 --- a/e2e/browser/first-run.test.ts +++ b/e2e/browser/first-run.test.ts @@ -32,7 +32,7 @@ async function signUp(page: Page, origin: string): Promise { await page.type("input[type=email]", `alice+${String(Date.now())}@example.com`); await page.type("input[type=password]", "correct-horse-battery-staple"); await page.click("button[type=submit]"); - await waitForText(page, "Connect a brain"); + await waitForText(page, "Choose your AI model"); await clickText(page, "label", "Anthropic"); await page.waitForSelector("input[type=password]"); await page.type("input[type=password]", "sk-ant-placeholder"); diff --git a/e2e/browser/ollama-chat.test.ts b/e2e/browser/ollama-chat.test.ts index 9c9447d85..322ccb1e2 100644 --- a/e2e/browser/ollama-chat.test.ts +++ b/e2e/browser/ollama-chat.test.ts @@ -51,7 +51,7 @@ describeBrowser("ollama chat", () => { // The Ollama option takes a base URL and offers the models the local // server reports as pulled — no key anywhere. - await waitForText(page, "Connect a brain"); + await waitForText(page, "Choose your AI model"); await clickText(page, "label", "Ollama (local)"); await page.waitForFunction( `Array.from(document.querySelectorAll('select[aria-label="Model"] option')).length > 1`, diff --git a/e2e/browser/reply.test.ts b/e2e/browser/reply.test.ts index 0cdffb4b6..3842f65be 100644 --- a/e2e/browser/reply.test.ts +++ b/e2e/browser/reply.test.ts @@ -29,7 +29,7 @@ describeBrowser("worker reply", () => { await page.click("button[type=submit]"); // The Anthropic option pins api.anthropic.com; only Custom takes a base URL. - await waitForText(page, "Connect a brain"); + await waitForText(page, "Choose your AI model"); await clickText(page, "label", "Custom"); await page.waitForSelector("input[type=password]"); const inputs = await page.$$("form input:not([type=radio])"); diff --git a/e2e/browser/setup.test.ts b/e2e/browser/setup.test.ts index dea91697e..cf9edb970 100644 --- a/e2e/browser/setup.test.ts +++ b/e2e/browser/setup.test.ts @@ -71,7 +71,7 @@ describeBrowser("client setup", () => { await page.type("input[type=password]", "correct-horse-battery-staple"); await page.click("button[type=submit]"); - await waitForText(page, "Connect a brain"); + await waitForText(page, "Choose your AI model"); await clickText(page, "label", "Anthropic"); await page.waitForSelector("input[type=password]"); await page.type("input[type=password]", "sk-ant-placeholder"); diff --git a/e2e/browser/zero-to-one.test.ts b/e2e/browser/zero-to-one.test.ts index 59bbe236b..ed1d5dea5 100644 --- a/e2e/browser/zero-to-one.test.ts +++ b/e2e/browser/zero-to-one.test.ts @@ -89,7 +89,7 @@ describeBrowser("0-to-1 gate", () => { await page.click("button[type=submit]"); // Only the Custom option takes a base URL. - await waitForText(page, "Connect a brain"); + await waitForText(page, "Choose your AI model"); await clickText(page, "label", "Custom"); await page.waitForSelector("input[type=password]"); await page.type("form input:not([type=radio]):not([type=password])", `${aimock().url}/v1`); diff --git a/e2e/lib/first-run.ts b/e2e/lib/first-run.ts index 3366b9bca..dd5749252 100644 --- a/e2e/lib/first-run.ts +++ b/e2e/lib/first-run.ts @@ -30,7 +30,7 @@ export async function runFirstRunFlow(page: Page, origin: string): Promise // Provider connect is the only onboarding step; a placeholder key is // enough because connecting stores a credential without calling the provider. - await waitForText(page, "Connect a brain"); + await waitForText(page, "Choose your AI model"); await clickText(page, "label", "Anthropic"); await page.waitForSelector("input[type=password]"); await page.type("input[type=password]", "sk-ant-placeholder");