# openclaw-channel-xiaozhu

`openclaw-channel-xiaozhu` 是一个将 OpenClaw 通过 HTTP/SSE 接入外部客户端、网页端或中继平台的小助渠道插件。

## 安装

```bash
npx -y openclaw-channel-xiaozhu
```

兼容长命令：

```bash
npx -y --package openclaw-channel-xiaozhu openclaw-xiaozhu-init
```

上面这一条会直接拉起初始化；如检测到插件未安装，会自动安装并写入默认配置。

## 升级到最新版

macOS / Linux:

```bash
openclaw plugins install openclaw-channel-xiaozhu@3.1.16 --pin
```

Windows PowerShell:

```powershell
$env:npm_config_cache="$env:TEMP\npm-cache"; openclaw plugins install openclaw-channel-xiaozhu@3.1.16 --pin
```

## 初始化

```bash
npx -y openclaw-channel-xiaozhu --client-id "<client_id>" --client-secret "<client_secret>"
```

兼容长命令：

```bash
npx -y --package openclaw-channel-xiaozhu openclaw-xiaozhu-init --client-id "<client_id>" --client-secret "<client_secret>"
```

仅安装并写入默认配置（不填凭证，后续补齐）:

macOS / Linux:

```bash
npx -y openclaw-channel-xiaozhu
```

Windows PowerShell:

```powershell
npx --yes openclaw-channel-xiaozhu
```

带凭证初始化:

```bash
npx -y openclaw-channel-xiaozhu --client-id "<client_id>" --client-secret "<client_secret>"
```

常用说明：

- 默认账号 ID：`default`
- 默认端口：`18800`
- 平台地址内置为 `https://xiaozhu.wxwyzn.com`
- 未提供凭证时也可以先写入空配置，后续再补齐
- `openclaw-xiaozhu-init` 会自动补齐 `plugins.allow` 和插件启用项，减少首次安装后的信任配置缺口

## 当前支持的消息动作

- `send`
- `upload-file`
- `read`
- `edit`
- `react`
- `reactions`
- `pin`
- `unpin`
- `pins`
- `search`
- `delete`
- `poll`
- `permissions`
- `reply`
- `forward`

兼容说明：

- 旧动作名 `list-pins` 仍可继续调用，插件内部会自动规范化为 `pins`
- `permissions` 返回的是插件本地权限/投递策略快照，不是 Discord/Matrix 那种远端频道 ACL

## 排障

- macOS 若把 `OPENCLAW_STATE_DIR` 指到 `/tmp/...`，OpenClaw 宿主可能把 `/tmp` 与 `/private/tmp` 视为不同路径，从而出现一次 `loaded without install/load-path provenance` 误报；使用默认 `~/.openclaw/...` 路径即可避免
- `plugins.allow is empty` 是宿主真实告警；运行一次 `openclaw-xiaozhu-init` 后会自动补齐小助插件的显式信任配置
- Windows 若原生 PowerShell 安装时遇到 `spawn npm ENOENT`，优先直接运行 `npx -y openclaw-channel-xiaozhu`；当前版本会自动走 bundled fallback，自行把插件落到 OpenClaw 扩展目录

## 最小健康检查

```bash
curl http://127.0.0.1:18800/api/health
```

期望返回：

```json
{"ok":true}
```

## 最小对话请求

```bash
curl -X POST http://127.0.0.1:18800/api/chat \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{"message":"你好","from":"demo-user","session":"demo-1"}'
```

## 适用场景

- 在本地或服务器上暴露一个统一的 HTTP 聊天入口
- 将 OpenClaw 会话桥接到网页客户端、移动端或中继平台
- 为机器人管理平台提供标准化消息动作入口
