
dawsondx/dsh-web-open
40Last commit Aug 15, 2026
dsh-web-open DSH plugin
This plugin prints the full URL and automatically opens your default browser once `dsh web` finishes starting up. It works on Windows, macOS, and Linux, requires no extra runtime dependencies, and gracefully degrades if internal services change.
How to install the dsh-web-open DSH plugin
dsh plugin --profile web add @dawsondx/dsh-web-openCopying does not run this command. Review the repository and version before installing the dsh-web-open DSH plugin.
dsh-web-open DSH plugin data source
dsh-web-open DSH plugin snapshot date: Aug 16, 2026
discovered
What the dsh-web-open DSH plugin can do
- Automatically prints the complete Web GUI URL when `dsh web` is ready.
- Opens the default browser on the same machine (Windows: cmd /c start, macOS: open, Linux: xdg-open with fallbacks).
- Supports dynamic port allocation (`dsh web --port 0`) and correctly resolves the bound port.
- Configurable via `cordis.patch.yml`: disable auto-open, override URL, adjust retry intervals.
- Temporary disable via environment variable `DSH_OPEN_BROWSER=0`.
- Failsafe: never throws errors; if services are missing, only prints a warning and continues without opening.
Where the dsh-web-open DSH plugin fits
- Eliminate manual URL copying and pasting every time you start `dsh web`.
- Standardize the workflow across multiple machines with a single installation.
- Use in headless/CI environments by setting `DSH_OPEN_BROWSER=0` to only print the URL.
- Combine with shell aliases or Windows launcher scripts for a one‑click start experience.
- Works with dynamically assigned ports so you don't need to remember or guess the port number.
Who the dsh-web-open DSH plugin is for
- Developers who frequently run `dsh web` and want a hands‑off launch experience.
- Users who manage multiple dsh installations and need consistent behavior across machines.
- Anyone who prefers automatic browser opening over manual URL entry.
dsh-web-open DSH plugin limitations
- Requires `pnpm` to be available in PATH for installation via `dsh plugin`.
- Verified on dsh 0.1.0-rc.6; future rc versions that rename `loader`/`webServer` services will cause graceful degradation (no auto-open, only warning).
- On Linux without a graphical environment (e.g., server, container, WSL no DISPLAY), the browser cannot be opened; the URL is still printed.
- The plugin does not include an update mechanism for the dsh harness itself; harness updates must be done separately via `npm install -g @deepseek-ai/dsh@latest`.
dsh-web-open DSH plugin: from the repository README
Quoted from the dawsondx/dsh-web-open README, the upstream source of the dsh-web-open DSH plugin. Copyright remains with the original authors.
> 一句话:`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`(把链接打印到日志里),**没有**"启动后自动打开浏览器"的能力;
Read the full READMERepository license: MIT
dsh-web-open DSH plugin questions
How do I install the dsh-web-open plugin?
Run `dsh plugin --profile web add @dawsondx/dsh-web-open` in your terminal. Make sure you have `pnpm` in PATH and that you have already initialized a profile (run `dsh web` once). After installation, restart `dsh web` and the plugin will automatically print the URL and open your browser.
How do I uninstall the plugin?
Use `dsh plugin --profile web remove @dawsondx/dsh-web-open`. Alternatively, you can manually edit `~/.dsh/profiles/web/package.json` and remove the bundle entry from the `dsh.profile.bundles` list, then delete the package from `node_modules`.
Can I make the plugin only print the URL without opening the browser?
Yes. Set `open: false` in your profile's `cordis.patch.yml` under the `web-open` config. Or temporarily set the environment variable `DSH_OPEN_BROWSER=0` when running `dsh web`.
How do I update the plugin to a newer version?
Run `dsh plugin --profile web update` to update all plugins in the profile. If you installed from GitHub, you need to re-add it with `dsh plugin --profile web add github:dawsondx/dsh-web-open`.
Will this plugin conflict if dsh officially adds a built-in `--open` flag in the future?
No. The plugin deliberately avoids using CLI arguments and only controls its behavior via profile configuration. If the official feature is added, you can simply remove the plugin – it will not cause any conflict.