一键在 Windows 后台启动服务并打开 Web 界面
31.7/100
综合分
4
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add wyf-777/deepseek-launcher该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · market
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 59 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意未发布到 npm registry,仅可从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包deepseek-launcher(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/10 15:48:26
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件
查看扫描证据(共 52 处,展示前 37 条)
- 读取本地文件deepseek.js:67
if (!systemRoot || !fs.existsSync(launchScript)) return false - 读取本地文件deepseek.js:69
if (!fs.existsSync(wscript)) return false - 执行外部命令来自配置/变量deepseek.js:71
execFileSync(wscript, [launchScript], { - 读取本地文件deepseek.js:84
const pid = parseInt(fs.readFileSync(file, 'utf8').trim(), 10) - 写入本地文件deepseek.js:91
fs.mkdirSync(STATE_DIR, { recursive: true }) - 写入本地文件deepseek.js:92
fs.writeFileSync(file, String(pid) + '\n') - 删除本地文件deepseek.js:97
try { fs.unlinkSync(file) } catch {} - 执行外部命令固定命令deepseek.js:110
return execFileSync('powershell.exe', ['-NoProfile', '-Command', script], { - 执行外部命令固定命令deepseek.js:114
return execFileSync('ps', ['-p', String(pid), '-o', 'args='], { - 执行外部命令固定命令deepseek.js:159
spawn('cmd.exe', ['/c', 'start', '', url], { detached: true, stdio: 'ignore', windowsHide: true }).unref() - 执行外部命令固定命令deepseek.js:161
spawn('open', [url], { detached: true, stdio: 'ignore' }).unref() - 执行外部命令固定命令deepseek.js:163
spawn('xdg-open', [url], { detached: true, stdio: 'ignore' }).unref() - 写入本地文件deepseek.js:170
fs.mkdirSync(STATE_DIR, { recursive: true }) - 写入本地文件deepseek.js:171
fs.appendFileSync(LOG_FILE, `\n[launcher ${new Date().toISOString()}] starting ${spec} web\n`) - 写入本地文件deepseek.js:208
const logStream = fs.createWriteStream(LOG_FILE, { flags: 'a' }) - 读取本地文件deepseek.js:375
if (!fs.existsSync(LOG_FILE)) { - 读取本地文件deepseek.js:380
const data = fs.readFileSync(LOG_FILE, 'utf8') - 读取本地文件deepseek.js:447
const version = JSON.parse(fs.readFileSync(packageFile, 'utf8')).version - 写入本地文件deepseek.js:686
fs.mkdirSync(STATE_DIR, { recursive: true }) - 读取本地文件launcher-updater.js:70
const version = JSON.parse(fs.readFileSync(packageFile, 'utf8')).version - 读取本地文件launcher-updater.js:116
const parsed = JSON.parse(fs.readFileSync(pathsFor(options).state, 'utf8')) - 写入本地文件launcher-updater.js:134
fs.mkdirSync(path.dirname(file), { recursive: true }) - 写入本地文件launcher-updater.js:136
fs.writeFileSync(temporary, `${JSON.stringify(state, null, 2)}\n`, { encoding: 'utf8', mode: 0o600 }) - 写入本地文件launcher-updater.js:138
fs.renameSync(temporary, file) - 删除本地文件launcher-updater.js:140
try { fs.unlinkSync(file) } catch {} - 写入本地文件launcher-updater.js:141
fs.renameSync(temporary, file) - 写入本地文件launcher-updater.js:525
fs.mkdirSync(path.dirname(destination), { recursive: true }) - 写入本地文件launcher-updater.js:526
fs.writeFileSync(temporary, buffer) - 删除本地文件launcher-updater.js:530
try { fs.unlinkSync(temporary) } catch {} - 读取本地文件launcher-updater.js:548
return crypto.createHash('sha256').update(fs.readFileSync(file)).digest('hex') - 读取本地文件launcher-updater.js:552
const expected = parseChecksum(fs.readFileSync(checksumFile, 'utf8')) - 删除本地文件launcher-updater.js:555
try { fs.unlinkSync(installerFile) } catch {} - 读取本地文件launcher-updater.js:581
if (fs.existsSync(installerFile) && fs.existsSync(checksumFile)) { - 删除本地文件launcher-updater.js:594
try { fs.unlinkSync(installerFile) } catch {} - 读取本地文件launcher-updater.js:691
if (!fs.existsSync(updates)) return - 删除本地文件launcher-updater.js:697
if (path.dirname(target) === root) fs.rmSync(target, { recursive: true, force: true }) - 删除本地文件launcher-updater.js:710
try { fs.unlinkSync(file) } catch {}
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 一键启动后台服务
- 打开Web界面
- 托盘与启动反馈
一键启动 DeepSeek Harness 的 Windows 桌面启动器——安装器、托盘、启动反馈、安全更新与回滚。
README
由 DeepSeek 最新模型翻译生成deepseek — DeepSeek Harness 后台启动器
项目官网 · 更新日志 · English · 中文
Windows 安装完成后,直接双击桌面的 DeepSeek Launcher 图标即可启动 DeepSeek Harness 并打开 Web 界面;命令行入口仍为高级用户保留:
- 服务在后台运行,关闭启动它的终端也不会中断;
- Windows 下常驻系统托盘(鲸鱼图标),右键可「打开界面 / 退出」。
项目官网
访问 DeepSeek Launcher 官网 查看功能介绍、安装方式和常用命令。
新版官网采用纯黑 WebGL 点阵背景,鼠标或触摸移动时会产生平滑的局部分块位移;首页的 Launcher 运行窗口也支持跟随鼠标的 3D 倾斜与高光反馈。页面针对桌面端和移动端做了响应式适配,并在系统开启“减少动态效果”时自动降级。官网源码位于 docs/。
安装
🪟 Windows 安装
Windows 推荐安装
- 完整版(推荐普通用户):内置 Node.js,一键安装
- 轻量版:不含 Node.js,需要 Node.js >= 22
下载 deepseek-launcher-windows-setup.exe 后双击安装即可。
展开完整文档(README 剩余 1 节)
deepseek — DeepSeek Harness 后台启动器
项目官网 · 更新日志 · English · 中文
Windows 安装完成后,直接双击桌面的 DeepSeek Launcher 图标即可启动 DeepSeek Harness 并打开 Web 界面;命令行入口仍为高级用户保留:
- 服务在后台运行,关闭启动它的终端也不会中断;
- Windows 下常驻系统托盘(鲸鱼图标),右键可「打开界面 / 退出」。
项目官网
访问 DeepSeek Launcher 官网 查看功能介绍、安装方式和常用命令。
新版官网采用纯黑 WebGL 点阵背景,鼠标或触摸移动时会产生平滑的局部分块位移;首页的 Launcher 运行窗口也支持跟随鼠标的 3D 倾斜与高光反馈。页面针对桌面端和移动端做了响应式适配,并在系统开启“减少动态效果”时自动降级。官网源码位于 docs/。
安装
🪟 Windows 安装
Windows 推荐安装
- 完整版(推荐普通用户):内置 Node.js,一键安装
- 轻量版:不含 Node.js,需要 Node.js >= 22
下载 deepseek-launcher-windows-setup.exe 后双击安装即可。完整版安装器会:
- 携带经过固定 SHA-256 校验的官方 Node.js 24 LTS 压缩包,无需预装 Node.js,也不会在安装时调用 winget 或联网下载依赖;安装阶段只复制一个预压缩文件,不再在安装窗口中展开 89 MB 的 node.exe;
- 把 DeepSeek Launcher 安装到当前用户目录并加入 PATH;
- 创建桌面图标、开始菜单入口和标准卸载程序;卸载使用轻量脚本核验并停止 Launcher 进程,不再启动完整 Node/Launcher,再清理 PATH、开机自启动项和 Launcher 更新缓存,但始终保留 .dsh 模型配置、密钥、聊天与日志。
轻量版 deepseek-launcher-windows-lite-setup.exe 只有 Launcher 文件,不包含 Node ZIP。它会在图形界面中检测 Node.js 22 或更高版本;缺失时提供“打开 Node.js 官网”“复制 winget 命令”和“重新检测”,不会静默安装依赖或弹出终端。也可先手动执行:
winget install OpenJS.NodeJS.LTS --accept-package-agreements --accept-source-agreements
node --version
npx --version
安装完成后,可以直接双击桌面的 DeepSeek Launcher 图标:快捷方式通过 Windows 的无控制台 wscript.exe 和隐藏、非交互的系统 PowerShell 显示可拖动的本地启动窗口;该窗口不会注册任务栏项,也不会留下 PowerShell 图标。等待期间以 2.5× 速度绘制 Connecting 点阵球,并且正常流程只显示“正在启动 DeepSeek Harness”和“启动完成,正在打开浏览器”;服务就绪后窗口自动关闭并打开网页界面。重复双击只会把现有启动窗口带到前台,不会重复启动 Harness;已运行时则直接打开网页。Launcher 会优先复用已有的私有 Node,其次复用兼容的系统 Node.js >= 22;两者都没有时,才校验并展开内置运行时。启动失败时窗口提供重新启动、查看日志、复制错误信息、打开 GitHub 和退出。动画改编自 MIT 许可的 thinking-orbs,完全离线绘制,详见 THIRD_PARTY_NOTICES.md。Windows 交互式终端直接运行 deepseek 也会复用同一启动窗口;需要纯终端输出时使用 deepseek start。脚本、管道和非交互环境不会弹出图形界面。Windows 可能会对尚未签名的新程序显示 SmartScreen 提示;请核对发布者仓库和 SHA-256 校验文件后再运行。
GitHub Release 页面会显示安装包文件的累计下载次数。该数字代表下载量,并不等于安装成功数或独立用户数。
其他安装方式
前置:Windows 完整版无需预装 Node.js;轻量版和下面的手动/跨平台安装方式需要 Node.js >= 22。
💡 没装 Node.js? 直接使用 Windows 完整版即可;它使用项目内置运行时,不修改系统 Node.js 环境。
方式一:irm 一行命令
irm https://github.com/wyf-777/deepseek-launcher/releases/latest/download/install-remote.ps1 | iex
该脚本本身来自最新正式 Release,只下载同一 Release 的安装包和 .sha256,校验成功后启动标准安装器。最终安装目录、桌面图标、PATH 和卸载方式与直接下载安装包完全一致。
方式二:PowerShell 一键脚本
powershell
powershell -ExecutionPolicy Bypass -File .\install.ps1
本地脚本同样下载并校验最新正式 Release 安装包,然后启动标准安装器;不会再向 %USERPROFILE%\bin 复制第二份 Launcher。
方式三:手动/跨平台安装(高级用户)
把本目录里的 deepseek.js、launcher-updater.js、package.json、deepseek.cmd、launch.vbs、launch.ps1、startup-ui.ps1、runtime-manager.ps1、tray.ps1、launcher-update-ui.ps1、start-server.ps1、start-tray.ps1、autostart.ps1、deepseek.ico、deepseek-off.ico、THIRD_PARTY_NOTICES.md 放到一个已在 PATH 中的目录。Windows 用户不建议使用这种方式,因为它没有标准卸载器,且容易与正式安装目录产生重复副本;Windows 请优先使用上面的 Release 安装器。
powershell
[Environment]::SetEnvironmentVariable('Path', "$env:USERPROFILE\bin;" + [Environment]::GetEnvironmentVariable('Path','User'), 'User')
用法
🖱️ 最方便的打开方式:安装完成后,直接双击桌面的 “DeepSeek Launcher” 图标。 Launcher 会在后台启动服务和系统托盘,准备完成后自动打开网页界面,不需要先打开终端或输入命令。
托盘中的鲸鱼图标也可以双击打开界面;需要停止、查看日志、更新或排查问题时,再使用下面的命令行操作。
命令行与高级操作
| 入口 / 命令 | 说明 |
| 双击桌面 DeepSeek Launcher 图标 | 推荐:启动后台服务、系统托盘并自动打开网页界面 |
| deepseek | Windows 交互终端显示与桌面相同的启动窗口,并启动服务、托盘和网页 |
| deepseek start | 使用纯终端模式启动服务、托盘和网页;适合调试与脚本 |
| deepseek stop | 停止服务并退出托盘 |
| deepseek open | 在浏览器打开界面 |
| deepseek status | 查看运行状态(退出码 0=运行中,1=未运行,2=端口被未知进程占用) |
| deepseek restart | 重启服务 |
| deepseek logs [n] | 查看服务日志末尾 n 行(默认 30) |
| deepseek autostart on/off | 开启/关闭开机自启(Windows) |
| deepseek update | 更新 DeepSeek Harness 到最新版并重启(不更新 Launcher) |
| deepseek launcher version | 分别显示 Launcher 当前/上一版本和 Harness 版本 |
| deepseek launcher update --check | 手动检查 Launcher 更新,只检查不安装 |
| deepseek launcher update | 显示版本与更新内容,确认后更新 Launcher |
| deepseek launcher rollback | 确认后回退到上一 Launcher 版本 |
| deepseek launcher skip | 只跳过指定 Launcher 版本 |
| deepseek launcher unskip | 取消跳过 Launcher 版本 |
| deepseek help | 帮助 |
托盘图标蓝色=运行、灰色=停止,双击可直接打开界面;右键菜单:
- 打开 DeepSeek Harness — 浏览器打开界面
- 查看日志 — 用记事本打开一份去颜色码、带运行状态说明的服务日志
- 开机自启动 — 勾选即开启开机自启(写入注册表 Run 键),取消勾选即关闭
- 检查 Launcher 更新 — 立即在后台刷新,不等待网络;无法连接时静默跳过
- 打开 Launcher 官网 / 下载页 — 用默认浏览器打开官方项目页面
- 退出 — 停止服务(后台进程被杀、界面关闭)+ 图标消失
Launcher 更新与回退
Launcher 与 Harness 是两个独立组件:
- deepseek update 始终只更新上游 @deepseek-ai/dsh Harness,并按原行为重启服务;
- deepseek launcher update 才更新 DeepSeek Launcher 自身。
Windows 托盘启动后会在后台检查 Launcher 正式版,自动检查最多每 24 小时一次,不会延迟 Harness 启动或网页打开。手动点击检查也会立即返回,GitHub 超时、限流或不可达时静默跳过,不弹连接失败。Launcher 会优先使用 HTTPS_PROXY / HTTP_PROXY,未设置时自动读取 Windows“Internet 选项”中已启用的手动 HTTP 代理;不会读取或保存代理账号、密钥。发现新版本时只提醒一次;在确认框选择“否”相当于“稍后提醒”,不会跳过版本。选择“跳过此版本”只忽略该版本,更高版本出现时仍会提醒。
Launcher 自动更新只从本项目 GitHub Release 下载完整版 deepseek-launcher-windows-setup.exe 和对应 .sha256,校验成功后才启动安装器,避免普通用户更新后突然缺少 Node.js。轻量版只供用户主动下载。更新前会缓存当前正式版安装包;之后可通过托盘或 deepseek launcher rollback 确认回退。非交互调用更新或回退时必须明确添加 --yes,不会默认同意。
如果所在网络完全无法访问 GitHub 且没有可用代理,Launcher 会继续正常工作,但无法凭空下载官方更新。此时可从一台能访问项目官网/Release 的设备下载官方安装包与 .sha256 后传到本机核验安装;为保证供应链安全,Launcher 不会自动切换到未知第三方镜像。
更新状态保存在 %LOCALAPPDATA%\DeepSeekLauncher\update-state.json,安装包缓存位于其 updates\\ 子目录,只保留当前版、上一版和正在安装的版本。更新或回退只替换 Launcher 程序文件,不会删除、覆盖或重置 %USERPROFILE%\.dsh 中的模型配置、密钥、聊天数据和日志。旧版覆盖时 Inno Setup 可能显示版本提示;只有下一次启动读到实际版本变化后,Launcher 才记录操作成功。
说明
- Windows 服务由隐藏的稳定父进程托管,关闭启动终端不影响它,也没有可见的终端框;服务就绪后 PID 文件会更新为真实监听进程。macOS / Linux 使用 detached 方式。
- 系统托盘目前仅 Windows(PowerShell + WinForms 实现,无需额外依赖);macOS / Linux 上 deepseek 仍可后台启动并打开浏览器,只是没有托盘图标。
- 端口默认 3080,可用环境变量 DSH_PORT 覆盖;Launcher 会把该值作为 --port 传给 Harness,托盘和浏览器也使用同一端口。
- Launcher 会核对 PID 对应的进程命令行;如果端口被其他程序占用,会拒绝将其识别为 Harness,也不会停止该进程。
- 服务输出追加写入 %USERPROFILE%\.dsh\server.log,用 deepseek logs [行数] 查看末尾(默认 30 行)。
- 开机自启:deepseek autostart on 写入注册表 Run 键(静默启动服务 + 托盘,不打开浏览器),off 关闭,无参数查看状态;也可直接在托盘右键菜单勾选「开机自启动」。仅 Windows。
- Windows 正式安装版使用内置 Node.js 24 LTS 与 Corepack 启动固定版本的 pnpm;Harness 首次启动获取 @deepseek-ai/dsh@latest,之后普通启动固定使用本地已缓存的确切 Harness 版本。手动/npm 安装保留系统 Node.js 与 npx 回退;两种方式都复用 pnpm store 并设置 2 GB Node 堆上限。
- 更新 Harness:deepseek update 停止服务后拉取最新版并重启(会短暂中断服务);它不会更新 Launcher。启动超过三分钟仍未就绪时,Launcher 会停止整棵进程树并给出日志提示。
- 托盘图标使用 deepseek.ico(蓝鲸=运行中)/ deepseek-off.ico(灰鲸=已停止),缺失时自动回退到系统默认图标。
官网开发说明
官网位于 docs/,背景与点阵效果由 docs/app.js 中的 WebGL 着色器绘制。默认使用纯黑底板: css --interactive-bg-image: none;
如果要换成自己的图片,只需修改 docs/styles.css 顶部的 --interactive-bg-image: css --interactive-bg-image: url("assets/your-background.webp");
建议使用宽度至少 1920px 的横向 WebP/JPEG 图片,并将文件放入 docs/assets/。本地预览可在 docs/ 目录运行 python -m http.server 4173,然后访问 http://127.0.0.1:4173/。
配置 harness 模型
deepseek 只是启动器,模型/配额在 harness 自己的配置里(~/.dsh)。参考本目录的 harness-settings.example.yaml 和 HANDOVER.md。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
wyf-777/deepseek-launcher
一键在 Windows 后台启动服务并打开 Web 界面
相关插件 · 市场 / 管理
插件精选列表awesome-dsh-plugin/awesome-dsh-plugin
DeepSeek Harness(dsh)插件精选列表
★ 22,225未汉化DSH
73.6
新词雷达zhuyansen/new-term-radar
new-term-radar新词雷达
★ 2,049已汉化MCP
72.8
插件生态导航0xsline/awesome-deepseek-harness
安装 贡献指南 DeepSeek Docs 公开插件目录 Issues
★ 1,188已汉化DSH
72.6
技能注册中心iflytek/skillhub
企业级开源智能体技能注册中心——发布、发现并管理组织内可复用的技能包。
★ 5,370已汉化DSH
71.9
插件市场目录imsai-sh/awesome-deepseek-harness-plugins
面向 DeepSeek Harnessdsh生态的社区插件目录,共收录 13941 个插件含 PR 收录与…
★ 355已汉化DSH
71.8
插件精选清单Anil-matcha/awesome-dsh-plugin
DeepSeek Harnessdsh精选指南——DeepSeek…
★ 1,013已汉化DSH
71.7
这是你的仓库?认领条目