# @cecwxf/dsh-room 中文文档

规范地址：https://npmcn.com/package/%40cecwxf/dsh-room/

版本：0\.3\.23
npm 元数据更新时间：2026-10-22T06:17:41.773Z
中文译文更新时间：2026-11-09T07:05:31.731Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40cecwxf/dsh-room
原文对照：https://npmcn.com/package/%40cecwxf/dsh-room/?lang=original
项目主页：https://github.com/cecwxf/collab/tree/master/packages/dsh-room
源码仓库：https://github.com/cecwxf/collab

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

- 包体积（解压后）：824 kB，40 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22
- 运行依赖：2 个
- 首次发布：2026-10-11T15:05:01.673Z
- 最新版本发布：2026-10-22T06:17:41.537Z
- 近 30 天下载量：4714（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：30（近 12 个月 30 个）

## 中文简介

DSH 房间 — 加密多代理协作的 Web 和桌面插件

## 安装

```sh
npm install @cecwxf/dsh-room
```

也可以使用：`pnpm add @cecwxf/dsh-room`、`yarn add @cecwxf/dsh-room`、`bun add @cecwxf/dsh-room`

## README

# dsh 房间 (@ ccecwxf/dsh-room)

深搜索策略插件 **房间**,整合在本地工作空间下,用于 Collab 房间:无账,端到端加密,在默认的VPS节点中继(可选 Cloudflare)上进行一对多代理协作.

## 在 Web 和桌面中安装

同一软件包支持 **dsh 网络** 和官员 **深搜索策略桌面** (验证了两个0.2.0-rc.2运行时间在macOS上). 桌面使用共享的 Web 客户端, 所以 `dsh.client.platform: web` 是故意的; 不修改为 `desktop`。 。 。 .

### 网页

```sh
dsh plugin --profile web add @cecwxf/dsh-room@0.3.21
dsh web
```

打开打印的 URL 。 在工作空间下, 使用 **新房间** 或选择现有的房间。 工作空间菜单也提供 **以邀请方式进入会议室** 财务报告和审定财务报表 **浏览公共房间**。 。 。 .

### 桌面

安装 `@cecwxf/dsh-room@0.3.21` 通过桌面插件管理器重新启动应用程序。 Web 和 Desktop 有单独的安装/激活图表; 安装到 `web` 不安装到 `desktop`。 。 。 .

Npm 安装 `dsh` 命令拒绝 `--profile desktop` 与 `profile "desktop" is managed exclusively by the Electron application`。对于命令行安装,启动一次桌面,完全退出,并使用 **其捆绑的命令**而不是npm CLI。 。 对于一个 macOS 应用程序英寸 `/Applications`数字 :

```sh
"/Applications/DeepSeek Harness.app/Contents/Resources/runtime/cli/bin/dsh" plugin --profile desktop add @cecwxf/dsh-room@0.3.21
```

重新打开桌面并选择工作空间下的房间, 或使用 **新房间** 在这里. **管理 dsh 命令..** 在桌面的应用程序菜单中,可以注册在 PATH 上捆绑的命令.

桌面拥有其可执行配置文件: npm CLI 无法初始化或变异该配置文件 。 见 [正式桌面安装规则](https://github.com/deepseek-ai/deepseek-harness/blob/master/apps/desktop/README.md#bundled-command-runtime)。 。 。 .

0.3.9版本修正客户端加载器崩溃(`Cannot read properties of undefined (reading 'subscribe')`),在使用前宣布会话服务依赖,并检查可选快照/订阅接口. 缺少工作空间状态让本地会话行可见 .

升级后,全面重启相关主机. 网络用户也可能需要一个硬刷新. `/api/collab/version` 报告已装入的软件包版本.

### 运行时间数据和同时使用

Web 保留其现有的 `~/.collab` 数据。 桌面默认值为 `<DSH_HOME>/profiles/desktop/.collab` 身份 房间状况 特工身份 和后退工作空间 这使得两个同时运行的主机无法共享一个接力身份或覆盖同一个房间状态文件. 明确 `identityPath`, (中文(简体) ), `statePath`,以及 `workspacePath` 总是优先.

早期使用遗留的Web路径的桌面安装可以通过在桌面配置中明确配置这些路径来保留其数据. 在同时运行两个主机时使用不同的身份/状态路径 .

### 其他一揽子来源

```sh
dsh plugin --profile web add github:cecwxf/collab#master
dsh plugin --profile web add github:cecwxf/collab#path:packages/dsh-room
dsh plugin --profile web add /absolute/path/to/collab/packages/dsh-room
```

同样的源头与桌面捆绑的 CLI 和 `--profile desktop`。默认中继 : `ws://62.234.113.56:80`。 。 。 .

## 你得到的东西

-   **DSH 房间用户界面** 在 Web 和桌面边栏中——创建/加入/搜索/聊天/成员/任务.
-   **`/collab` 斜线命令** 在任何交互式作曲家(Web / Desktop / TUI)中.
-   **示范工具** (单位:千美元)`collab_*`因此代理商可以创建房间,发送,@mention,并管理任务.
-   **公共目录** 用于可发现房间的VPS中继器(可选择入;公共房间为 **不属于机密**) (中文(简体) ).

## 当地多剂室(0.3)

一个 dsh 可以主机 **几个当地代理人** (主持人、建筑师、编码员、评论员或定制人员)作为独立会议室成员。 每一个都有自己的特性,在房间工作空间下有自己的dsh会话,以及自己的读取或写取范围.

-   **创建房间** 是一个宽的、有标签的对话框( Room / Agents / Limits),所以可以不剪接地传送、可见度、预设、自定义代理、货币和转弯限制.
-   **当地** 房间将协作信息保存在进程回放中。 模型请求仍然使用所配置的提供者. 点击一次切换到Relay来邀请远程主机,本地代理则保留成员.
-   `@agent` 只叫醒那个探员. `@all` 主持人只有在明确指定(或指派未指定的任务)时才能答复。 没有提及的答复范本不会唤醒任何人.
-   创建之后, **添加代理人** 打开自由形式(名称、人物、系统提示、模型、努力、范围、批准、主持人)。 预设只填表.
-   可选 **主持人** 将工作分成任务并总结结果.
-   `concurrency=0` (默认)同时运行所有不同的代理 . `turnLimit=0` (默认)允许无限交接. 正值选择入限. 同一代理从不重叠,包括在取消清理期间. **停下来** 停止当地工人和东道主运行.
-   每个特工都有一个 **在谈话中现场执行卡**:思考/对应状态,具有运行/完成/失败状态的工具名,以及流出助手的答案. 正常答案不显示 `collab_send`;该工具仍然可用于明确的信息和代理交易。 完成的卡片在历史中贯穿重启。 标题还显示队列/运行状态 .
-   执行快照在本地和中继室使用每个成员签名的加密连接. 它们包括公共助理解答和工具名/状态,永远不要原始推理,工具参数,或工具结果. 活的远程状态在45秒后失效,没有更新. 卡片保留了最多16,384个答题字符和最新的32个工具调用;土语会话保留了完整的笔录. 两个主机需要0.3.23+换入新卡.
-   现有v3室值为同位币2,转弯限制为6一次迁移为0. 其他已保存的限制被保留; v4 设置永远不会被重新调整 . `maxWakesPerMinute` 现在默认为 0(无限制);明确配置的正限仍然有效.
-   写作员有自己的 **工作树** (单位:千美元)`room/<room>/<agent>`) (中文(简体) ). 非git工作空间倒回咨询文件锁.
-   **复议合并( C)** 显示每个代理 diff 、 检查冲突, 并要求您在它合并到或丢弃主工作区之前确认.

斜线命令 : `/collab create local <name>`, (中文(简体) ), `/collab agents`, (中文(简体) ), `/collab agent add <preset|name>`, (中文(简体) ), `/collab agent rm <name>`, (中文(简体) ), `/collab stop [@agent]`, (中文(简体) ), `/collab transport <local|relay>`。 。 。 .

全向导 : [`docs/LOCAL_MULTI_AGENT.md`](https://npmcn.com/package/docs/LOCAL_MULTI_AGENT.md)。 。 。 .

## 可选配置( profile) `cordis.patch.yml`(中文(简体) )

```yaml
- id: collab
  config:
    relayUrl: ws://62.234.113.56:80
    agentName: my-agent
    identityPath: ~/.collab/identity.json
    statePath: ~/.collab/state.json
    autoReply: mention-or-task
    permissionPreset: read-only
    # localAgentRunner: mock   # deterministic local agents without a model (tests/demos); or env DSH_ROOM_MOCK_AGENTS=1
```

入会时间持续持续 `statePath` (模式600)——你做 **没有** 需要粘贴邀请 进入yml.

## 斜线命令

```
/collab create [name] [-- description] [#tag ...]
/collab create public <name> [-- description] [#tag ...]
/collab join <invite | n>
/collab search [text] [#tag]
/collab rooms | /collab use <name|roomId>
/collab invite | members | say <text> | task [@agent] <title> [-- details]
/collab log [n] | leave | help
```

## 工具

`collab_create_room`, (中文(简体) ), `collab_join`, (中文(简体) ), `collab_search_rooms`, (中文(简体) ), `collab_rooms`, (中文(简体) ), `collab_peers`, (中文(简体) ), `collab_send`, (中文(简体) ), `collab_broadcast_status`, (中文(简体) ), `collab_create_task`, (中文(简体) ), `collab_claim_task`, (中文(简体) ), `collab_update_task`, (中文(简体) ), `collab_history`, (中文(简体) ), `collab_lock_files` (非git工作空间的本地作家咨询锁).

唤醒规则: `@mention` 或者说 `task.create` (当 `autoReply` 实值 `mention-or-task`) 答复(`replyTo`)不因默认而醒(loop guard). 最大6分/分/房间.

## 警卫

-   房间有效载荷是AES-GCM E2EE;中继存储/前置密码.
-   私人房间只有邀请. **公开** 房间在目录中注册邀请(包括房间密钥)——任何人都可以加入并解密. 更喜欢私人房间做保密工作.
-   身份和状态文件为写入模式 `600` 在模式下 `700` 目录.

## 双相运输/代理配置/MCP

显示名称 : **房间** 编号 : **DSH 房间**。软件包编号 : `@cecwxf/dsh-room`。 。 。 .

创建房间默认值 **当地**。UI只提供 **当地** 财务报告和审定财务报表 **中继**,没有部署名称或服务器地址。 中继使用主机 `relayUrl` 配置;节点/VPS和Cloudflare是部署选择,而不是房间模式. 现有的局域网邀请和遗产 `transport lan` 命令保持兼容。 见 `docs/VPS_RELAY.md` 用于部署.

**房间住你的工作空间** (0.2+):原生左侧栏工作空间列表未受影响. 绕过工作空间并点击“新会话”旁边的房间图标,或打开其“...”菜单 ~ **新房间** (菜单也有 **新会话**) (中文(简体) ). 宽的 Creatroom 对话框以该工作空间预设打开; 房间成员配置工作空间, MCP 沙盒和被唤醒的代理会话均使用该路径, 房间的代理会话巢在工作空间下原地( 以房间图标标记) 。 土生土长的侧边栏将工作空间下方的房间和每个房间下方的本地代理会议分组. 这个 **DSH 房间** 面板显示选定的房间;其房间切换器也提供邀请并浏览公共房间.

**代理配置** (每个房间,局部):模型,推理努力,工作空间路径,自動升降旗,MCP上下. 向同行宣布无秘密.

**核准**: 当对等的 MCP 呼叫需要写/ shell/ network 权限时, 在 Rooms 中的横幅 .

**MCP工具**数字 : `workspace_list`, (中文(简体) ), `workspace_read`, (中文(简体) ), `workspace_stat`, (中文(简体) ), `workspace_search`, (中文(简体) ), `workspace_write`, (中文(简体) ), `workspace_mkdir`, (中文(简体) ), `workspace_delete`, (中文(简体) ), `workspace_exec`。 。 。 .

API : (英语) `GET/POST /api/collab/rooms/:id/config`, (中文(简体) ), `POST /api/collab/rooms/:id/mcp`, (中文(简体) ), `GET /api/collab/lan/browse`, (中文(简体) ), `POST /api/collab/approvals/decide`。 。 。 .

### 远程工作空间访问(0.3.7,网络和桌面)

真正的模特儿可以打电话 `collab_peers` 发现主机成员 `mcpEnabled=true`, (中文(简体) ), `collab_mcp_tools` 然后读取工作空间工具计划,然后 `collab_mcp_call` 执行该成员的工具。 例如:

```json
{"roomId":"ROOM_ID","target":"HOST_MEMBER_AGENT_ID","tool":"workspace_read","args":{"path":"src/index.ts"}}
```

工具等待已完成的响应并返回 `{callId,target,ok,result}` 或者说 `{callId,target,ok:false,error}`它不归还待收收据。 经认证的呼叫代理身份用于同伴赠款。 只读代理无法请求远程写入或执行 。 本地工人不出口独立的MCP工作空间;目标是其主机成员进入房间所配置的工作空间. 路径相对于目标的工作空间,包括呼叫者运行在另一台机器上时. VPS中继器转发了加密的有效载荷,不读取文件.

默认期限为 130 秒( 可选) `timeoutMs`最多130000),允许目标120秒批准等. 中止, 代理删除, 房间断开/ 离开, 运输更改和插件卸载等未解决的响应 。 仅匹配的 callId是不够的:结果必须来自经认证的目标成员。 完全结果内容被退回到调用工具;房间历史显示一个摘要标记,而不是将全部文件复制到每个代理的记录. 与其他房间有效载荷一样,持有房间钥匙的成员可以解密运输结果.

`POST /api/collab/rooms/:id/mcp` 与 `target` 现在使用相同的机制返回已完成的远程结果。 无 `target`,它运行在本地的工作空间。 这是插件的MCP-over-room桥,作为dsh模型工具被曝光,而不是一个独立的stdio MCP服务器.

`scripts/dsh-mcp-test-host.mjs` 将可支配真实的 Web 或 官方桌面主机(`DSH_PLUGIN_SOURCE`, (中文(简体) ), `DSH_MCP_CONTROL`, (中文(简体) ), `DEEPSEEK_API_KEY`; 可选 `DSH_DESKTOP_APP`) (中文(简体) ). `scripts/e2e-dsh-mcp-real.mjs` 接受 `DSH_MCP_EXPORTER` 财务报告和审定财务报表 `DSH_MCP_CALLER` 控制文件以测试无法预测的远程文件内容,全部四个读取工具,代理特定权限撤销, traversal和symlink否定. 对于SSH转发, `DSH_MCP_CALLER_BASE` 更改测试控制器的 HTTP 地址并 `DSH_MCP_CALLER_RELAY_HOST` 重写邀请函的转发中继主机给呼叫者. 在两个配置文件中都没有保存密钥;控制文件包含认证 cookie,在测试后必须保持私密并去除. `scripts/verify-mcp-session.mjs SESSION_FILE EVIDENCE_JSON` (所需经费) `zstd`)检查持续存在的模型工具事件:所有四个读取工具的成功结果,精确的固定内容,正确的相对路径,三个预期的拒绝,以及没有本地文件/壳工具的使用.

## 型号和审定(0.3.4)

模型选择器加载活动 dsh 提供者目录并显示其版本名称( 例如) `DeepSeek-V41-Flash`),同时将目录中准确的提供者/型号ID传递给会话. 代理继承了房间模型;房间继承了dsh选择. 更改模式重排受影响的闲会话 。 在改变他们的型号或范围之前,停止运行特工. 缺少真实代理服务后, 运行失败; 模拟执行需要明确 `localAgentRunner: mock`。 。 。 .

短数 `collab://join/...` 使用主机配置的邀请 `relayUrl`; 指定局域网或中继主机使用该明确地址的邀请.

从仓库运行 `npm test`, (中文(简体) ), `npm run smoke`,以及 `npm run e2e:dsh:local` 用于离线/模拟回归覆盖. `DEEPSEEK_API_KEY=... npm run e2e:dsh:real` 练习真正的 dsh 会话:代理创建/编辑/删除、编码任务要求/完成、worktree diff/merge、可执行代码、审查和主持人代表团/摘要。 它使用一个孤立的 dsh 家庭和工作空间,并且提出付费的模型请求. 可选 `DSH_PLUGIN_SOURCE` 选择一个已包装的 npm 柏油球; `DSH_REAL_RELAY=1` 使用继电器 `DSH_TEST_RELAY` 覆盖默认 URL 。 证书只能通过儿童过程环境继承.

对于两个运行 孤立的真实dsh主机, `DSH_MAC_CONTROL=/path/mac.json DSH_VPS_CONTROL=/path/vps.json node scripts/e2e-dsh-cross-real.mjs` 验证Mac VPS Mac模型合作. 每个控制文件包含认证的 API `base` 财务报告和审定财务报表 `cookie`; Mac 文件还包含 `roomId` 财务报告和审定财务报表 `invite`。保留这些文件,并在测试后将其删除.

在0.3.5中,作曲家有独立的模型和推理-努力控制. 每个菜单只更新自己的设置,其他菜单打开后关闭.

对于一个已安装的官方桌面应用程序, 运行同一个真正的提供软件套件 与其实际的 Electron shell 和捆绑的主机:

```sh
# DEEPSEEK_API_KEY must be present in the process environment.
DSH_DESKTOP_APP="/Applications/DeepSeek Harness.app" npm run e2e:dsh:real
```

在 Windows 上,通过安装 `DeepSeek Harness.exe` 路径。 脚本初始化可支配桌面配置文件,在安装被捆绑的 CLI 之前退出,重启实际的应用程序,并检查真实的会话加上每个可显示的默认存储. 它不会改变普通的桌面配置 。 Windows执行由取用路径适配器支持,但在这种macOS验证中还没有运行.

## 本地工作空间导航和预览(0.3.8)

永久房间导航栏被取出. 房间是直接在本地工作空间下方相撞的组;点击房间可以看到共享的对话,或者本地代理打开其实际的dsh会话. 一个房间的主办会,如果在场,也留在它的组内. 成员,任务,运行,权限和合并控件在细节面板中,开始关闭,可以从头部切换. 本地会话目录, 搜索,平面视图和原始行仍然可用; 卸下插件会恢复其常规演示文稿 。 工作空间 新房间控制器也与中国dsh标签工作.

房间聊天和任务结果使用dsh的本地Markdown渲染器进行标题,表格,代码,数学和文件链接. 本地输出链接在自有会话中打开 dsh 的本地预览 。 对于写作代理来说,文件首先在其工作树中解决,然后在共享的工作空间中解决:在决定是否合并之前可以查看未合并的HTML报告,Markdown文档或图像. 复议并合并文件芯片也是预览按钮 。 点击一个预览切换到作者的本地对话并打开现有的右侧预览;单击工作空间树上的房间返回到共享的对话. 文件检查既不启动模型转折,也不创建分支;只有已核实的本地文件成为了内置码文件链接. 远程成员文件在使用本地本地预览前需要本地副本.

主机 APIs `POST /api/collab/rooms/:id/session`, (中文(简体) ), `/preview`,以及 `/files` 重新使用 dsh 连接栅栏 。 文件解析度对照房间工作空间及其所属代理工作树检查真实路径,拒绝外部链接. 会话导航取消 stale 预览响应 。 说明理由的标签显示有效继承的努力与模型名称分开.

验证 : `DSH_PREVIEW_HOST=/private/control.json DSH_PREVIEW_CONTROL=/private/ui-control.json DSH_PREVIEW_EVIDENCE=/path/evidence.json node scripts/e2e-dsh-preview-real.mjs` 要求真正的 DeepSeek 代理程序在一个未合并的工作树上生成 HTML, Markdown 和 SVG , 并验证本地- session/ file 解析和边界拒绝 。 上述可支配主机工具提供了自控文件. 在Safari Web和官方macOS桌面0.2.0-rc.2中验证了UI交互,包括实际的HTML/Markdown/图像预览. 工作空间组使用自有的DOM装饰,因为dsh版本没有工作空间-孩子扩展座椅;dsh升级应重新运行侧边栏整合测试. 预览导航本身使用公众 `uiWorkspace` 财务报告和审定财务报表 `sidebarRight` 服务.

## 连接恢复(0.3.10)

离线室允许编辑草稿并显示连接错误加 **重试连接**; 发送和输入提交文件等房间上线. 草稿能活下来了 本地代理卡区分连接/在线/离线,并显示其连接错误; **重试离线代理** 重试失败的成员连接 .

一个待办主机客户端在第一次连接失败后仍为自有,因此再连接和插件处理可以管理. 每个主机重联也加入下线时添加的代理. 选择当前传输重试其连接, 而不是返回无操作 。 这些修改共享 Web/Desktop 客户端和后端.

节点主机使用软件包 `ws` 用于中继套接字的执行,避免了节点内置的WebSocket和dsh全过程的HTTP调度器之间的不兼容. SDK仍然默认为浏览器/Global WebSocket,并接受一个针对节点主机的明示构建器. 模型HTTP请求保留了dsh现有的网络配置.

`DSH_RECOVERY_HOSTS=/private/web-control.json,/private/desktop-control.json DSH_RECOVERY_EVIDENCE=/path/evidence.json node scripts/e2e-dsh-recovery-real.mjs` 验证一个被初步拒绝的中继连接,代理机添加了离线,自动恢复,真实的Author/Reviewer模型翻转,本地文件预览,以及VPS主机/代理会员加两个主机的聊天.

提供会议室头 **编辑房间设置** 名称、描述和标签。 变化持续存在,而不更换房间、代理或工作空间;名称是当地标签,拥有的公共房间也更新其目录清单。 本地工作空间工具栏有一个 **新房间** 快捷键,每个扩展的工作空间都有可见 **新房间** 行预选工作空间 。 原生控件和行仍然为 dsh 所拥有,并在插件卸载上被还原.

房间行提供 **⋯** 菜单 **编辑房间** 财务报告和审定财务报表 **删除房间**。删除需要其确认对话框,并删除该主机中的房间,停止本地任务,断开主机成员的联系并释放背景会话处理。 原生对话历史和工作空间/工作树文件被保留,远程主机保留会员身份. 一项自有的公开列名不作为删除的一部分.

0.3.11版本还结算被取消的WebSocket连接承诺,并排出旧主机在改变运输之前的加入,因此飞行中继连接无法仅阻断切换到local.

0.3.14版本修正了本地主机WorkspaceId pinning,因此所创建的房间留在正确的工作空间行下(路径正态倒置残留). 0.3.13 固定的工作空间绑定(任何本土的工作空间,路径常态化),在SSE赶超前保持新创建的房间在UI中可见,并重新锁定侧边栏室,作为每个工作空间下会话的一级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同级同 它还在闲置时保持配置本地代理连接, 重试失败的初始成员会自动与受限的指数回放连接, 并在套接字恢复时显示连接 。 重新加入的成员重新宣布他们的配置,并明确了站岗错误. SDK重联持续到处置,而不是在51起故障后放弃. 删除一个成员,删除其房间,或切换运输取消自有的重试计时器。 模型会话会延后到任务唤醒代理;闲置连接不会消耗模型转会.

## 只工作空间导航(0.3.17)

房间直接在本地工作区下方开放。 独立 **DSH 房间** 侧边栏条目和重复的房间列表对话框已被删除 。 使用工作空间 **新房间** 快捷键或快捷键 **.** 菜单创建一个房间,加入邀请,或浏览公共房间;所有三个动作都保留选定的工作空间。 房间行菜单保留了编辑/删除功能,成员/设置在房间内部仍可相撞. Web和桌面也使用同样的导航.

0.3.18版本删除了持续的新房间文本行. 在工作空间头或工具栏中使用房间图标;其工具提示和可访问标签识别动作.

0.3.19版本将会议室工作目录置于其投入之上。 工作空间菜单打开本地工作空间对话或本地添加工作空间目录拾取器. 选择另一个工作空间将打开其本地会话;它不会默默地移动一个已存在的会议室或其代理。 新会话快捷键返回完整本地作曲,包括附件,命令,模式和权限.

## 常见问题

### @cecwxf/dsh-room 是什么？

DSH 房间 — 加密多代理协作的 Web 和桌面插件

### 如何安装 @cecwxf/dsh-room？

在项目目录运行 npm install @cecwxf/dsh-room，或使用 pnpm add / yarn add / bun add。

### @cecwxf/dsh-room 支持 TypeScript 吗？

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

### @cecwxf/dsh-room 支持 ESM 还是 CommonJS？

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

### @cecwxf/dsh-room 需要什么版本的 Node\.js？

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

### @cecwxf/dsh-room 可以商用吗？

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

### @cecwxf/dsh-room 的下载量有多少？

根据 npm 官方下载统计，@cecwxf/dsh-room 在 2026/10/10 – 2026/11/08 这 30 天内被下载 4,714 次，日均约 157 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @cecwxf/dsh-room 还在维护吗？

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

