@faysal1000/universal-chatbot

中文文档
0.3.0发布于 2026/11/01MITTypeScriptES Module零依赖

面向通用聊天机器人RAG平台的可嵌入网站聊天:Web组件。

中文使用文档
文档目录6 节
  1. 关键部件
  2. 技术堆栈
  3. 安装
  4. 配置
  5. API
  6. 在本地运行

聊天插件

<universal-chat-bot>:一个可嵌入的Web组件,可以将平台的聊天助手添加到任何网站。

flowchart LR
  site[Host website] --> el["&lt;universal-chat-bot&gt; launcher"]
  el -- first open --> panel[Chat panel, shadow DOM]
  panel -. built from .-> core[chat-core]
  panel -- "/v1/public + X-Widget-Key" --> rag[rag]
  panel -- challenge --> turnstile[Cloudflare Turnstile]

关键部件

  • src/element -自定义元素,液体玻璃发射器(SVG边缘折射在铬),设置,移动页面锁定
  • src/element/orb -动画帆布球
  • src/panel -惰性加载React聊天面板
  • src/embed.ts - script-tag loader
  • build/chatCore.ts -解析共享的聊天核心导入
  • demo/ -纯HTML, React和Vue主机

技术堆栈

  • TypeScript, Web组件,Shadow DOM
  • React 19(仅限面板),chat-core
  • 维特(图书馆建设),维特,剧作家

安装

npm install @faysal1000/universal-chatbot
import '@faysal1000/universal-chatbot';

如果没有捆绑器,请改为从CDN加载它(参见 API)。

配置

设置为元素的属性。在管理控制台中创建可发布密钥 RAG→网站小部件.

属性描述默认的
api-key可发布密钥(pk_…)要求
api-urlrag的公共URL要求
positiontop/middle/bottom + -left/-center/-rightbottom-right
themelight, dark 或者 autoauto
primary-color任何CSS颜色#6d5dfc
offset-x左/右边缘间隙(24, 2rem)20px
offset-y到上/下边缘的间隙(96, 6rem)20px
greeting发射器的标签Chat
languageen 或者 bn页面的语言
open当面板打开时在场缺席

API

  • 方法: open(), close(), toggle(), isOpen
  • 事件: chat-open, chat-close
<script src="https://cdn.jsdelivr.net/npm/@faysal1000/universal-chatbot@0/dist/embed.js" async></script>
<universal-chat-bot api-key="pk_your_key" api-url="https://chat-api.example.com"></universal-chat-bot>

在本地运行

npm ci
npm run dev    # rebuild dist/ on change
npm run demo   # demo hosts on http://localhost:5391

检查: npm run check;端到端: npm run test:e2e 对着运行的堆栈。

版本与发布记录

@faysal1000/universal-chatbot 共发布 5 个版本,首次发布于 2026/11/01;过去 12 个月发布了 5 个版本。

版本发布日期距今
0.3.0latest2026/11/012 天前
0.2.12026/11/012 天前
0.2.02026/11/012 天前
0.1.02026/11/012 天前
0.0.0-stage2026/11/012 天前

关于 @faysal1000/universal-chatbot 的常见问题

@faysal1000/universal-chatbot 是什么?

面向通用聊天机器人RAG平台的可嵌入网站聊天:Web组件。

如何安装 @faysal1000/universal-chatbot?

在项目目录运行 npm install @faysal1000/universal-chatbot,或使用 pnpm add / yarn add / bun add。

@faysal1000/universal-chatbot 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@faysal1000/universal-chatbot 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@faysal1000/universal-chatbot 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@faysal1000/universal-chatbot 可以商用吗?

@faysal1000/universal-chatbot 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@faysal1000/universal-chatbot 还在维护吗?

最新版本 0.3.0 发布于 2026/11/01(2 天前);至今共发布 5 个版本,其中过去 12 个月发布了 5 个;首次发布于 2026/11/01。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。