@deints/ask-plugin-thun
v1.1.4
Published
THUN Gift Concierge — plugin generative-UI per regali editoriali e collezioni
Readme
@deints/ask-plugin-thun
THUN Gift Concierge — plugin generative-UI per regali editoriali e collezioni
An Ask generative-UI plugin: a set of
custom components an LLM can compose into a page at runtime. Built on
@websolutespa/ask-plugin and @websolutespa/ask-ui.
Develop
pnpm install
pnpm build # tsdown (ESM + browser bundle) + Tailwind -> dist/styles.css
pnpm types # tsc --noEmitStructure
src/catalog.ts— component schema + descriptions shown to the LLM.src/blocks/*— the custom React components the LLM can render.src/registry.ts— maps catalog names to blocks.src/components/*— chat shell overrides (Renderer binds the registry).src/exports/*— package subpath entrypoints (browser,catalog,registry,client).src/globals.css— Tailwind v4 theme.
Add a component
- Add an entry (and a
*Skeleton) tosrc/catalog.ts. - Create
src/blocks/<name>.tsxtyped withComponentContext<'Name'>. - Register both in
src/registry.ts. - Rebuild and bump the version.
Publish & register
La pubblicazione è volutamente disabilitata per questa demo. Il
package.json contiene "private": true, quindi npm publish fallisce by
design: questo pacchetto NON deve essere pubblicato sul registry npm pubblico.
Per pubblicare in futuro servono entrambi i passi, in modo consapevole:
- conferma esplicita del cliente sulla destinazione (registry privato o pubblico) — mai pubblicare senza questa conferma;
- rimozione deliberata di
"private": truedalpackage.json.
La registrazione sul tenant Ask (campo pluginPackage =
@deints/ask-plugin-thun, pluginLocal secondo l'ambiente) avviene in un
passo di provisioning successivo, non da questo pacchetto.
Conventions (must hold)
- Package
@deints/ask-plugin-thun→ globalaskPluginThun→ tag<ask-plugin-thun>. ./catalogmust exportgetSystemPromptandcatalog../browserself-registers the Web Component.- The browser bundle inlines all deps (
deps.alwaysBundle: ['**']). - Use container query variants (
@md:) instead of viewport (md:).
