# @wallavi/widget 中文文档

规范地址：https://npmcn.com/package/%40wallavi/widget/

版本：2\.13\.0
npm 元数据更新时间：2026-11-02T19:56:12.967Z
中文译文更新时间：2026-11-02T21:01:05.053Z
软件包许可：未声明

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40wallavi/widget
原文对照：https://npmcn.com/package/%40wallavi/widget/?lang=original

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.1 MB，7 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：16 个
- peer 依赖：react ^18\.0\.0 \|\| ^19\.0\.0，react-dom ^18\.0\.0 \|\| ^19\.0\.0
- 首次发布：2026-04-14T03:57:49.956Z
- 最新版本发布：2026-11-02T19:56:12.791Z
- 已发布版本数：83（近 12 个月 83 个）

## 中文简介

聊天副驾驶 [Wallavi](https://wallavi.com/) 代理。用组件或脚本安装它；你的应用程序只传递会话和用户正在查看的内容。

## 安装

```sh
npm install @wallavi/widget
```

也可以使用：`pnpm add @wallavi/widget`、`yarn add @wallavi/widget`、`bun add @wallavi/widget`

## README

# @wallavi /部件

聊天副驾驶 [Wallavi](https://wallavi.com/) 代理。用一个 组件或脚本；你的应用程序只传递会话和用户是什么 查看。

```bash
pnpm add @wallavi/widget
```

```tsx
"use client";
import { WallaviCopilot } from "@wallavi/widget";
import "@wallavi/widget/styles.css";

<WallaviCopilot
  agentId="your-agent-id"
  session={{
    userId: currentUser.id,
    userName: currentUser.name,
    userEmail: currentUser.email,
    headers: async () => ({ Authorization: `Bearer ${await getToken()}` }),
    identityToken: currentUser.identityToken,
  }}
  viewing="Purchase order PO-2026-0142"
/>;
```

如果没有React，请先粘贴这个 `</body>`：

```html
<script>
  window.wallavi =
    window.wallavi ||
    function () {
      (window.wallavi.q = window.wallavi.q || []).push(arguments);
    };
  wallavi("identify", {
    userId: currentUser.id,
    userName: currentUser.name,
    userEmail: currentUser.email,
    identityToken: currentUser.identityToken,
  });
  wallavi("viewing", "Purchase order PO-2026-0142");
</script>
<script
  src="https://app.wallavi.com/embed.min.js"
  data-agent-id="your-agent-id"
  async
></script>
```

显示（布局、颜色、文本、快捷方式）在Wallavi面板中改变； 你不需要重新部署你的应用。

## 迁移到2.0.0

**私有模式不再读取 `window.Clerk`.** 在2.0.0之前，一个小部件带有 `workspaceId` 在页面上查找一个Clerk会话并发送它的令牌。这个 小部件现在不知道验证提供者：它只发送主机返回的报头 从 `userContext.headers`.

如果您使用私有模式，请自己传递令牌。函数在之前被调用 每条消息，所以短暂的令牌永远不会发送过时的：

```tsx
<WallaviWidget
  agentId="..."
  workspaceId="..."
  userContext={{
    headers: async () => {
      const token = await getToken(); // your auth provider
      return token ? { Authorization: `Bearer ${token}` } : {};
    },
  }}
/>
```

没有 `headers`，私人请求发出不 `Authorization` 头。

## 常见问题

### @wallavi/widget 是什么？

聊天副驾驶 Wallavi 代理。用组件或脚本安装它；你的应用程序只传递会话和用户正在查看的内容。

### 如何安装 @wallavi/widget？

在项目目录运行 npm install @wallavi/widget，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：react（^18\.0\.0 \|\| ^19\.0\.0）、react-dom（^18\.0\.0 \|\| ^19\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @wallavi/widget 支持 TypeScript 吗？

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

### @wallavi/widget 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @wallavi/widget 可以商用吗？

@wallavi/widget 使用 未声明 许可。package\.json 没有声明许可证。没有许可证的代码默认保留全部权利，商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括，不构成法律意见，请以许可原文为准。

### @wallavi/widget 还在维护吗？

最新版本 2\.13\.0 发布于 2026/11/03（今天）；至今共发布 83 个版本，其中过去 12 个月发布了 83 个；首次发布于 2026/04/14。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

