跳到正文

dawsondx/dsh-web-open

40最近提交 2026年8月15日

dsh-web-open DSH 插件

该插件在 `dsh web` 就绪后自动打印完整 URL 并打开默认浏览器。支持 Windows/macOS/Linux,无额外运行时依赖,遇到内部服务变更时会优雅降级而不影响启动。

如何安装 dsh-web-open DSH 插件

dsh plugin --profile web add @dawsondx/dsh-web-open

复制不会执行命令。安装 dsh-web-open DSH 插件前请核对仓库和版本。

dsh-web-open DSH 插件数据来源

dsh-web-open DSH 插件快照日期:2026年8月16日

discovered

dsh-web-open DSH 插件能做什么

  • 自动打印 Web GUI 的完整链接。
  • 自动打开默认浏览器(Windows 使用 cmd /c start,macOS 使用 open,Linux 使用 xdg-open 并回退)。
  • 支持动态端口分配(`dsh web --port 0`),正确获取绑定的端口。
  • 可通过 `cordis.patch.yml` 配置:关闭自动打开、覆盖 URL、调整重试间隔。
  • 通过环境变量 `DSH_OPEN_BROWSER=0` 临时禁用自动打开。
  • 故障安全设计:apply() 永不抛错,服务缺失时仅打印警告,不影响 `dsh web` 正常启动。

dsh-web-open DSH 插件适合哪些场景

  • 免去每次手动复制粘贴 URL 的繁琐步骤。
  • 在多台机器上统一启动体验,一次安装到处使用。
  • 在无图形界面/CI 环境中设置 `DSH_OPEN_BROWSER=0`,仅打印链接。
  • 配合 shell 别名或 Windows 启动脚本实现一键启动。
  • 使用动态端口时无需关心具体端口号,插件自动处理。

dsh-web-open DSH 插件适合谁

  • 频繁运行 `dsh web` 并希望自动打开浏览器的开发者。
  • 管理多台 dsh 安装、需要一致行为的用户。
  • 偏好自动化操作、不愿手动输入 URL 的 DSH 使用者。

dsh-web-open DSH 插件的限制

  • 安装需要 `pnpm` 在 PATH 中(`dsh plugin` 命令的要求)。
  • 已在 dsh 0.1.0-rc.6 上验证;未来 rc 版本若修改 `loader`/`webServer` 服务名,插件会降级为不自动打开(仅打印警告),不影响启动。
  • Linux 无图形环境(服务器、容器、WSL 无 DISPLAY)时无法打开浏览器,但仍会打印链接。
  • 插件本身不提供更新 dsh harness 的功能,更新 harness 需另行执行 `npm install -g @deepseek-ai/dsh@latest`。

dsh-web-open DSH 插件的仓库 README 摘录

以下文字摘自 dsh-web-open DSH 插件的上游仓库 dawsondx/dsh-web-open 的 README,版权归原作者,仅作引用。

> 一句话:`dsh web` 启动完成 → **完整链接自动打印** → **浏览器自动打开**。 > 装一次,任何装了 dsh 的机器都能用;零依赖、跨平台、故障安全。 ### 以前 vs 现在 | 以前(每次都要) | 现在(一次装好) | |---|---| | 记一长串 `npx @deepseek-ai/dsh web` | 输 `dsh web` 即可(想更省事可自建快捷方式/别名) | | 启动后自己拼 `http://127.0.0.1:3080/` 复制进浏览器 | 链接自动打印,浏览器自动打开 | | 每台机器手动配 PATH、建快捷方式 | `dsh plugin --profile web add @dawsondx/dsh-web-open` 一行安装 | ### 效果长这样 ```text $ dsh web [web-open] Web GUI ready: http://127.0.0.1:3080/ # ↑ 完整链接自动打印,浏览器同时自动打开 —— 全程零手动操作 ``` ### 本仓库包含什么(安装前先看清楚) | 部分 | 内容 | 安装方式 | 平台 | |---|---|---|---| | **插件本体**(核心) | `index.js` / `opener.js` / `cordis.patch.yml`:`dsh web` 就绪后**打印链接并自动打开浏览器** | `dsh plugin --profile web add @dawsondx/dsh-web-open`(或 GitHub 直装) | Windows / macOS / Linux | | 可选:Windows 启动器 | `contrib/windows/dsh-web.cmd`:一键启动 + 自动检查官方新版 | 自行复制到 PATH 目录,或为它建桌面快捷方式 | 仅 Windows | | 可选:Windows 更新脚本 | `contrib/windows/dsh-update.cmd`:一键更新 harness | 同上 | 仅 Windows | | 可选:Unix shell 函数 | `contrib/unix/dsh-fn.sh`:`dsh` = `dsh web` | 加入 `~/.bashrc` / `~/.zshrc` | macOS / Linux | > **插件本体不包含更新功能,也不包含桌面快捷方式**——桌面快捷方式、PATH 配置属于每台机器自己的事,仓库不替你创建;可选的 Windows 脚本复制到 PATH 后即可使用。 ### 为什么需要它 官方 dsh (0.1.0-rc.6) 目前只有 `printUrl`(把链接打印到日志里),**没有**"启动后自动打开浏览器"的能力;

阅读完整 README仓库许可: MIT

dsh-web-open DSH 插件常见问题

如何安装 dsh-web-open 插件?

在终端中执行 `dsh plugin --profile web add @dawsondx/dsh-web-open`。确保 PATH 中有 `pnpm`,并且已经初始化过 profile(至少运行过一次 `dsh web`)。安装后重启 `dsh web`,插件会自动打印链接并打开浏览器。

如何卸载插件?

执行 `dsh plugin --profile web remove @dawsondx/dsh-web-open`。或者手动编辑 `~/.dsh/profiles/web/package.json`,从 `dsh.profile.bundles` 列表中移除该条目,然后删除 `node_modules` 中的对应包。

能不能只打印链接,不打开浏览器?

可以。在 profile 的 `cordis.patch.yml` 中为 `web-open` 配置添加 `open: false`;或者运行 `dsh web` 前设置环境变量 `DSH_OPEN_BROWSER=0`。

如何更新插件到最新版本?

执行 `dsh plugin --profile web update` 来更新 profile 中的所有插件。如果当初是从 GitHub 安装的,需要重新执行 `dsh plugin --profile web add github:dawsondx/dsh-web-open` 来获取最新版。

未来 dsh 官方如果原生支持 `--open` 参数,会不会冲突?

不会。本插件故意不使用 CLI 参数,仅通过 profile 配置控制行为。官方添加原生支持后,只需卸载插件即可,不会产生任何冲突。