DSH Hub
dsh-splash-launcher cover

Isilsolme/dsh-splash-launcher

dsh-splash-launcher

BundleWorkflow3 GitHub stars· updated 2026-08-20

One-click Windows launcher for the DeepSeek Harness (dsh) Web GUI with a stroke-by-stroke startup animation

Install

npx @deepseek-ai/dsh plugin --profile web add dsh-splash-launcher

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-splash-launcher DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-splash-launcher.svg)](https://dshhub.dev/plugins/dsh-splash-launcher)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from Isilsolme/dsh-splash-launcher, cleaned of badges and images.

DSH GUI

DeepSeek Harness(dsh)Web GUI 的 Windows 一键启动器:双击即弹出无边框启动动画,后台拉起 dsh web,GUI 真正加载完成后无缝淡入;关闭窗口自动停服务。

启动动画借鉴 SPlayer-Next 的思路:SVG stroke-dashoffset “一笔一划”书写效果——鲸鱼 Logo 升起呼吸,deepseek 官方字标浮现,HARNESS 七个字母逐笔描边。

效果截图

启动动画(WPF 无边框,HARNESS 逐笔描边)

进入后的 GUI 界面


功能特性

  • 点击即出动画:WPF 原生动画窗口,不等待浏览器冷启动,双击后立刻播放;
  • 便携单文件splash.html 与 SVG/PNG 素材内嵌进 exe,DSH-GUI.exe 单独一个文件即可运行;同目录放置同名素材文件可覆盖内嵌版本(自定义动画,无需重编译);
  • 一笔一划描边HARNESS 七个字母按 CSS cubic-bezier(0.25,0.1,0.25,1) 缓动逐笔书写,笔尖连续、首帧空白;
  • 后台加载、就绪切换:启动动画期间,真实 GUI 在浏览器后台(同源 iframe)完成加载,检测到官方启动页(Loading plugins…)消失后才淡出动画,不会出现“动画播完又加载”的断档;
  • 无 PowerShell:启动器是单个 C#/WPF 程序,无脚本进程,规避“PowerShell 木马”类安全软件启发式误报;
  • 开即启动、关即退出:窗口关闭后自动结束本次启动的 dsh web 服务;端口已有服务时只开窗口、不接管生命周期;
  • 可配置:工作目录与端口可通过环境变量或 workspace.txt 修改;
  • 深浅色跟随:启动动画跟随 dsh 设置里的“外观”选项(浅色/深色/跟随系统),浅色为接近白色的淡蓝,深色保留原深蓝黑;
  • 开源友好:单文件 C# 源码 + build.cmd,使用 Windows 自带 csc.exe 编译,无需外部工具链。

快速开始

方式一:下载便携版(推荐,无需构建)

  1. Releases 下载最新 dsh-splash-launcher-vX.Y.Z.zip(或只下载单文件 DSH-GUI.exe);
  2. 解压(或直接把 exe)放到任意目录——exe 自包含全部素材,单独一个文件即可运行
  3. 双击 DSH-GUI.exe

首次运行可能弹出 SmartScreen“Windows 已保护你的电脑”:点击 更多信息 → 仍要运行(exe 未代码签名,属正常提示)。

方式二:源码构建

环境要求:

  • Windows 10 / 11;
  • 已通过 npm 全局安装 DeepSeek Harness:npm install -g @deepseek-ai/dshdsh web 可用);
  • Node.js(npm 全局安装 dsh 时自带依赖);
  • Microsoft Edge 或 Google Chrome(二选一,自动探测)。

构建(双击或命令行运行):

build.cmd

生成自包含的 DSH-GUI.exe(黑鲸图标,素材已内嵌为资源)。构建仅使用 Windows 自带的 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe

使用

双击 DSH-GUI.exe 即可。如需桌面快捷方式:右键 DSH-GUI.exe → 发送到 → 桌面快捷方式(图标会自动使用黑鲸)。

作为 dsh 插件安装(可选)

本项目同时是一个可安装的 dsh bundle:随包携带 DSH-GUI.exe,并在宿主机注册 desktop_launch 工具,在对话中直接让 agent 打开带动画的 GUI 窗口:

dsh plugin --profile web add dsh-splash-launcher

安装后重启 dsh web,agent 可使用 desktop_launch 工具(参数 workspace 可选,指定会话工作目录)。

配置

默认值修改方式
工作目录(dsh web 启动目录)%USERPROFILE%(用户主目录)环境变量 DSH_GUI_WORKSPACE,或在 exe 同目录新建 workspace.txt 写入路径
端口3080环境变量 DSH_GUI_PORT
启动动画版式HARNESS 描边源码 SplashStyle 改为 "&logo=draw" 可切换为“鲸鱼本体一笔一划”版
动画素材内嵌于 exeexe 同目录放置同名 splash.html / *.svg / whale.png 可覆盖(自定义,无需重编译)

启动流程

双击 DSH-GUI.exe
  ├─ 端口已占用 ────────────────→ 直接打开 GUI 窗口(不显示动画、不接管服务)
  └─ 端口空闲
       ├─ 立即显示 WPF 无边框启动动画(≈0ms,不等浏览器)
       ├─ 解析 dsh 安装路径(npm root -g + node require.resolve)
       ├─ 将 splash 素材同步进 dsh-web-frontend/dist(同源 iframe 探测的前提)
       ├─ 后台启动 `node <dsh>/lib/bin.js web`(隐藏窗口)
       ├─ 轮询端口就绪(最多 90s)
       ├─ 以相同尺寸/位置在动画背后打开浏览器 `--app` 窗口
       │     └─ splash.html(hold) 用隐藏 iframe 加载 `/`
       │     └─ 检测到官方启动卡片消失 → 揭示 iframe,并同步标题
       ├─ WPF 检测到浏览器标题包含 "DeepSeek Harness" → 淡出动画
       └─ 浏览器窗口关闭 → taskkill 结束本次 dsh web 进程树

项目结构

dsh-gui/
├─ DSH-GUI.cs                 # 启动器全部源码(C# 5 / WPF,单文件)
├─ build.cmd                  # 构建脚本(Windows 自带 csc.exe)
├─ splash.html                # 浏览器侧启动页(hold 态 + 后台 iframe 预加载 + 就绪检测)
├─ deepseek-wordmark.svg      # 官方 deepseek 字标(提取自 dsh 前端)
├─ whale.png                  # 黑鲸 Logo(256px,透明底)
├─ whale-anim.svg             # 鲸鱼描边动画(可选版式 logo=draw)
├─ icons/
│  └─ whale-black.ico         # 黑鲸图标(exe 与快捷方式共用)
├─ LICENSE                    # MIT + 品牌素材说明
└─ README.md

Related plugins