Back to home@hupoliuguang

dsh-web-start

dsh web start for win by desktop icon .DeepSeek Harness Web 快捷启动器,一键启动 dsh web 服务,简化 DeepSeek Harness 本地启动流程。

Stars
0
Language
JavaScript
Created
Aug 17, 2026
Updated
Aug 18, 2026

Introduction

DSH Web Launcher(dsh web 启动器)

一键启动 DeepSeek DSH Web@deepseek-ai/dsh web)的跨平台启动器: Windows(双击)、macOS(双击)、Linux(命令行)。

在 Windows 桌面上双击快捷方式(由 install.bat 一键生成,指向 dsh-web.bat)即可:

  1. 若 dsh web 已在运行(任意端口)→ 直接打开浏览器,退出
  2. 否则找一个空闲端口(默认从 3080 起,上限 4080)
  3. 启动 npx -y @deepseek-ai/dsh web --port <port>
    • Windows:新开一个可见的控制台窗口(与原版 bat 体验一致)
    • macOS / Linux:后台运行,日志写入文件
  4. 轮询直到服务就绪(默认最多 60 秒)
  5. 用默认浏览器打开页面

文件结构

dsh-web-launcher/
├── launcher.mjs          # 核心逻辑:跨平台 Node CLI(零依赖,Node >= 18)
├── dsh-web.bat           # Windows 双击入口(薄壳:找 Node → 调 launcher.mjs)
├── dsh-web.command       # macOS / Linux 入口(macOS 双击;Linux bash 执行)
├── install.bat           # Windows 一键安装:在桌面生成 "dsh web" 快捷方式
├── deepseek_icon.ico     # 快捷方式图标
├── package.json          # npm 包定义(bin: dsh-web-launcher / dsh-web)
├── LICENSE               # MIT
└── README.md

所有平台的启动逻辑只维护一份(launcher.mjs),脚本只是外壳。

使用

Windows(首选)

install.bat        # 第一次:在桌面生成 "dsh web" 快捷方式(带图标、最小化运行)
dsh-web.bat        # 之后:双击即可;或直接双击桌面快捷方式

若已安装 Node 并 npm i -g .(本目录),也可以直接运行命令:

dsh-web-launcher

install.bat 可重复运行,会覆盖同名快捷方式。注意:如果你桌面上已有一个 指向旧版(~/.dsh\dsh-web.bat)的 "dsh web" 快捷方式,运行它会改指向本项目。

macOS

双击 dsh-web.command(首次需右键 → 打开)。脚本会自动加载 ~/.zprofile / ~/.zshrc 等环境,使 nvm / Homebrew 安装的 Node 可用。

Linux

bash dsh-web.command
# 或
chmod +x dsh-web.command && ./dsh-web.command

从 Windows 创建的文件没有可执行位;克隆到 macOS/Linux 后执行 chmod +x dsh-web.command,或在 git 中设置 git update-index --chmod=+x dsh-web.command

发布后:别人怎么用(Windows 为例)

前提只有一个:装好 Node.js LTShttps://nodejs.org ,一路下一步,安装器会自动加入 PATH)。

方式操作适合
A. 下载 ZIP仓库页 → Code → Download ZIP → 解压 → 双击 install.bat(生成桌面快捷方式)→ 双击桌面 "dsh web"普通用户(不需要装 git)
B. git clonegit clone <仓库地址>cd dsh-web-launcher → 双击 dsh-web.bat(或 install.bat 装快捷方式)开发者
C. npm 安装npm i -g dsh-web-launcher → 任意目录运行 dsh-web-launcher命令行用户(需先发布到 npm)

双击/运行后会发生什么:

  1. 检测到 dsh web 已在运行 → 直接打开浏览器;
  2. 否则自动挑一个空闲端口(3080 起),弹出标题形如 DeepSeek DSH Web (port 3080) 的服务窗口,并自动打开浏览器。

注意事项(写给使用者):

  • 首次运行需要联网npx 会下载 @deepseek-ai/dsh 包,之后有缓存,再次启动很快;
  • 那个服务窗口不要关 —— 关掉就等于停止 dsh web;浏览器里的页面可以随时关;
  • 首次监听端口时 Windows 防火墙可能弹窗,选"允许访问";
  • 没装 Node 时双击会提示去 nodejs.org 下载,不会无声退出;
  • 从网上下载的 bat 首次运行可能弹"安全警告",选"仍要运行"即可(SmartScreen 对脚本只是提示)。

macOS 双击 dsh-web.command;Linux 执行 bash dsh-web.command,见上文"使用"。

CLI 选项

node launcher.mjs [options]

  --port <n>        起始端口          (默认 3080)
  --max-port <n>    扫描上限          (默认 4080)
  --package <pkg>   要启动的包        (默认 @deepseek-ai/dsh)
  --timeout <sec>   就绪等待秒数      (默认 60)
  --log <file>      macOS/Linux 日志文件 (默认 ~/.dsh/dsh-web.log)
  --no-browser      不打开浏览器
  --check           检测已在运行的实例与空闲端口后退出(调试用)
  --version / --help

示例:

node launcher.mjs
node launcher.mjs --port 4000
node launcher.mjs --package @deepseek-ai/dsh@0.1.0-rc.6
node launcher.mjs --check

运行环境

  • Node.js >= 18(含全局 fetch
  • Windows / macOS / Linux
  • 首次运行通过 npx -y 下载 @deepseek-ai/dsh(需访问 npm registry) ,最好全局安装了

相关背景

dsh web 是 npm 包 @deepseek-ai/dshbin: dsh -> lib/bin.js)的 --profile web 别名;该包基于 Cordis 插件架构,由大量 @deepseek-ai/dsh-* 子包组成,源码仓库为 deepseek-ai/deepseek-harness(MIT)。DSH 数据家目录为 %USERPROFILE%\.dsh(含 profiles/sessions/storages/settings.yaml)。

发布到 GitHub(TODO)

  1. 建仓库(如 dsh-web-launcher),把本目录推上去
  2. package.json 里的 your-name 占位符换成真实用户名
  3. (可选)npm publish 发布到 npm registry
  4. 待办路线图:把同一逻辑做成 Cordis 插件(DSH 内部服务/Tool),让 agent 也能启动/探测 dsh web