From fe758d469414710288bff8130e1541e1a2a0a6c4 Mon Sep 17 00:00:00 2001 From: "Anthony Fu (via agent)" Date: Wed, 14 Oct 2026 00:21:13 +0000 Subject: [PATCH 1/3] fix(hub-ui-onboard): require a terminal code to install or disable --- docs/content/1.guide/23.hub-ui-onboard.md | 16 ++++- docs/content/6.errors/DF9005.md | 20 ++++++ docs/content/6.errors/DF9006.md | 20 ++++++ docs/content/8.references/6.hub-api.md | 8 ++- examples/hub-onboard-vite/README.md | 4 +- packages/hub-ui-onboard/playground/index.html | 2 +- .../hub-ui-onboard/playground/vite.config.ts | 9 ++- packages/hub-ui-onboard/src/client/index.ts | 63 +++++++++++++++--- packages/hub-ui-onboard/src/client/style.css | 5 ++ packages/hub-ui-onboard/src/diagnostics.ts | 8 +++ packages/hub-ui-onboard/src/index.ts | 50 +++++++++++--- packages/hub-ui-onboard/src/protocol.ts | 2 + packages/hub-ui-onboard/src/types.ts | 4 ++ .../hub-ui-onboard/test/onboarding.test.ts | 66 +++++++++++++++++-- .../hub-ui-onboard/index.snapshot.d.ts | 2 + 15 files changed, 247 insertions(+), 32 deletions(-) create mode 100644 docs/content/6.errors/DF9005.md create mode 100644 docs/content/6.errors/DF9006.md create mode 100644 packages/hub-ui-onboard/src/protocol.ts diff --git a/docs/content/1.guide/23.hub-ui-onboard.md b/docs/content/1.guide/23.hub-ui-onboard.md index f3fc9a9a..60a91ce8 100644 --- a/docs/content/1.guide/23.hub-ui-onboard.md +++ b/docs/content/1.guide/23.hub-ui-onboard.md @@ -19,6 +19,8 @@ The button sits at the bottom left, dimmed until hovered. It opens a panel with - **Hide for now** removes the button for the current browser tab. - **Disable entirely** writes a state file so the host stops injecting the button on every later start. +Install and Disable entirely first ask for a 6-digit code that the dev server prints in the terminal (below). + The panel follows the shared design tokens, the host's `primaryColor`, and the user's hub color scheme, so the swap to the real dock looks like one product. ## Create the onboarding @@ -39,7 +41,17 @@ const onboarding = createOnboarding({ - `scriptSrc`: `embedded.js`, the URL to inject as `