diff --git a/components/onboarding/NewUserChecklist.tsx b/components/onboarding/NewUserChecklist.tsx index b52b41d1..92f3f867 100644 --- a/components/onboarding/NewUserChecklist.tsx +++ b/components/onboarding/NewUserChecklist.tsx @@ -18,6 +18,7 @@ import { ENABLED_EXTENSION_IDS } from '@/lib/extensions/_generated/enabled-exten import { useCapability } from '@/contexts/CompanyContext' import { CAPABILITY } from '@/lib/entitlements/keys' import type { InitialSetupPath, InitialSetupState } from '@/types' +import { useBranding } from '@/lib/branding/brand-context' interface NewUserChecklistProps { initialState: InitialSetupState @@ -78,6 +79,7 @@ export default function NewUserChecklist({ sieSweep = null, }: NewUserChecklistProps) { const t = useTranslations('initial_setup') + const { appName } = useBranding() const router = useRouter() const showError = useErrorToast() const { formatDateLong } = useFormat() @@ -217,9 +219,17 @@ export default function NewUserChecklist({ captureSetup('onboarding_setup_step_started', { step: 'receipts' }) router.push(hasAi ? '/e/general/invoice-inbox' : '/settings/billing') } - const goAssistant = () => { - captureSetup('onboarding_setup_step_started', { step: 'assistant' }) - router.push(hasAi ? '/onboarding/agent' : '/settings/billing') + // Founder call 2026-08-27: the closing CTA is "Anslut till Claude", not the + // in-app assistant calibration (still reachable from the assistant page). + // A user who finishes the hosted onboarding lands in Claude with everything + // already connected, where the MCP onboarding skill opens with findings and + // the Att göra-list instead of setup. The connector URL is built from the + // page origin so self-hosted and white-label domains link to themselves. + const goClaude = () => { + captureSetup('onboarding_setup_step_started', { step: 'claude' }) + const serverUrl = `${window.location.origin}/api/extensions/ext/mcp-server/mcp?tool_namespace=accounted` + const link = `https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=${encodeURIComponent(appName)}&connectorUrl=${encodeURIComponent(serverUrl)}` + window.open(link, '_blank', 'noopener') } const dismiss = () => void persist({ dismissed: true }, 'dismiss').then((updated) => { @@ -387,16 +397,15 @@ export default function NewUserChecklist({ number={numbers.assistant} done={step5Done} active={activeStep === 5} - title={t('step_assistant_title')} - badge={t('step_assistant_beta')} + title={t('step_claude_title')} last action={(variant) => ( - )} > - {t('step_assistant_description')} + {t('step_claude_description')} diff --git a/messages/en.json b/messages/en.json index 1f3700f1..5ba258ff 100644 --- a/messages/en.json +++ b/messages/en.json @@ -1518,7 +1518,10 @@ "step_receipts_description": "Photo the receipt or forward the email to your inbox address, and the document is read and waiting for you.", "step_receipts_action": "Open the inbox", "step_receipts_channels": "Email · WhatsApp · upload", - "step_receipts_channels_no_wa": "Email · upload" + "step_receipts_channels_no_wa": "Email · upload", + "step_claude_title": "Connect to Claude", + "step_claude_description": "Do your bookkeeping from the chat: drop receipts and SIE files, reconcile the tax account and ask about your numbers. Everything is already connected.", + "step_claude_action": "Connect to Claude" }, "tax_assessment_notices": { "title": "Final tax notices and remaining tax", diff --git a/messages/sv.json b/messages/sv.json index 599ad803..8fc21474 100644 --- a/messages/sv.json +++ b/messages/sv.json @@ -1518,7 +1518,10 @@ "step_receipts_description": "Fota kvittot eller vidarebefordra mejlet till er inkorgsadress, så tolkas underlaget och väntar på dig.", "step_receipts_action": "Öppna inkorgen", "step_receipts_channels": "Mejl · WhatsApp · uppladdning", - "step_receipts_channels_no_wa": "Mejl · uppladdning" + "step_receipts_channels_no_wa": "Mejl · uppladdning", + "step_claude_title": "Anslut till Claude", + "step_claude_description": "Bokför via chatten: släpp kvitton och SIE-filer, stäm av skattekontot och ställ frågor om siffrorna. Allt är redan kopplat.", + "step_claude_action": "Anslut till Claude" }, "tax_assessment_notices": { "title": "Slutskattebesked och kvarskatt",