🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

桌面运行客户端 qufei1993/dsh-desktop

DeepSeek Harnessv0.2.0
qufei19938 天前有提交已提供中文文档扫描:含敏感能力

让普通用户无需安装 Node.js,也能直接运行和管理官方 DeepSeek Harness。

53.5/100
综合分
56
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/27 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查未通过:仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add qufei1993/dsh-desktop
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · desktop
装得上吗
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 8 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-desktop @ 0.2.0
✓Node 引擎要求 >=22.19 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/29 22:38:12

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 26 处,展示前 25 条)
  • 执行外部命令来自配置/变量
    src/main/dsh-supervisor.ts:87
    const child = spawn(this.nodePath, dshWebArguments(dsh), {
  • 发起网络请求
    src/main/index.ts:53
    const response = await net.fetch(LATEST_RELEASE_API_URL_OVERRIDE ?? LATEST_RELEASE_API_URL, { headers: { accept: 'application/vnd.github+json' } })
  • 写入剪贴板
    src/main/index.ts:464
    clipboard.writeText(clipboardTextSchema.parse(raw))
  • 执行外部命令来自配置/变量
    src/main/process-utils.ts:9
    const child = spawn(executable, args, {
  • 读取本地文件
    src/main/runtime-paths.ts:32
    if (existsSync(node) && existsSync(npmCli) && existsSync(pnpmCli) && existsSync(pnpmCommand) && existsSync(dshCommand)) {
  • 读取本地文件
    src/main/runtime-paths.ts:40
    if (!localNpm || !existsSync(localPnpm)) throw new Error('开发模式找不到 npm 或 pnpm,请先运行 npm install')
  • 读取本地文件
    src/main/state-store.ts:29
    const parsed = JSON.parse(await readFile(this.file, 'utf8')) as Partial<PersistedState>
  • 写入本地文件
    src/main/state-store.ts:43
    await mkdir(path.dirname(this.file), { recursive: true })
  • 读取本地文件
    src/main/version-manager.ts:62
    try { names = await readdir(this.versionsDir) } catch (error) {
  • 删除本地文件递归
    src/main/version-manager.ts:67
    .map(async (name) => { await rm(path.join(this.versionsDir, name), { recursive: true, force: true }) }))
  • 读取本地文件
    src/main/version-manager.ts:74
    try { names = await readdir(base) } catch (error) {
  • 读取本地文件
    src/main/version-manager.ts:91
    if (existsSync(installed)) return await this.resolveAt(installed, version, 'installed')
  • 写入本地文件
    src/main/version-manager.ts:98
    await mkdir(this.versionsDir, { recursive: true })
  • 读取本地文件
    src/main/version-manager.ts:100
    if (existsSync(destination)) {
  • 删除本地文件递归
    src/main/version-manager.ts:108
    await rm(destination, { recursive: true, force: true })
  • 写入本地文件
    src/main/version-manager.ts:112
    await mkdir(staging, { recursive: true })
  • 写入本地文件
    src/main/version-manager.ts:115
    writeFile(path.join(staging, 'package.json'), `${JSON.stringify({
  • 写入本地文件
    src/main/version-manager.ts:119
    writeFile(path.join(staging, 'pnpm-workspace.yaml'), pnpmBuildPolicy)
  • 写入本地文件
    src/main/version-manager.ts:125
    await rename(staging, destination)
  • 删除本地文件递归
    src/main/version-manager.ts:128
    await rm(staging, { recursive: true, force: true })
  • 读取本地文件
    src/main/version-manager.ts:137
    if (!existsSync(destination)) throw new Error('该版本不是用户安装的 DSH 版本')
  • 删除本地文件递归
    src/main/version-manager.ts:139
    await rm(destination, { recursive: true, force: true })
  • 执行外部命令来自配置/变量
    src/main/version-manager.ts:144
    const child = spawn(this.runtime.node, [
  • 写入本地文件
    src/main/version-manager.ts:219
    void writeFile(this.installFailureLog, log).then(() => finish(error), () => finish(error))
  • 读取本地文件
    src/main/version-manager.ts:227
    const manifest = JSON.parse(await readFile(path.join(packageRoot, 'package.json'), 'utf8')) as PackageManifest
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

界面预览

2 张 · 点击查看大图

功能亮点

  • 免安装Node.js运行
  • 管理官方Harness

社区维护的 DeepSeek Harness 桌面客户端,支持 macOS 和 Windows。

README

由 DeepSeek 最新模型翻译生成
DSH Desktop 让普通用户无需安装 Node.js,也能直接运行和管理官方 DeepSeek Harness。 DSH Desktop 是由社区维护、面向 macOS 和 Windows 的 DeepSeek Harness 桌面客户端。应用自带 Node.js 24 LTS 与锁定版本的 pnpm,可安装、保留和切换官方 @deepseek-ai/dsh 版本,并在独立窗口中运行官方 dsh web 页面。 [!IMPORTANT] 本项目由社区独立维护,与 DeepSeek 官方无隶属关系。DSH Desktop 不修改 DeepSeek Harness;官方 DSH 仍按其自身许可证和行为运行。 下载与使用 前往 GitHub Releases 下载与你的系统匹配的安装包: | 系统 | 安装包 | | macOS Apple Silicon | DSH-Desktop--arm64.dmg | | macOS Intel | DSH-Desktop--x64.dmg | | Windows 10/11 x64 | DSH-Desktop-Setup-*-x64.exe | 安装并打开后,应用会直接进入官方 DeepSeek Harness 页面。需要安装或切换 DSH 版本时,从系统菜单打开“版本管理…”。 [!NOTE] 项目尚处于早期阶段。
展开完整文档(README 剩余 1 节)
DSH Desktop
让普通用户无需安装 Node.js,也能直接运行和管理官方 DeepSeek Harness。

DSH Desktop 是由社区维护、面向 macOS 和 Windows 的 DeepSeek Harness 桌面客户端。应用自带 Node.js 24 LTS 与锁定版本的 pnpm,可安装、保留和切换官方 @deepseek-ai/dsh 版本,并在独立窗口中运行官方 dsh web 页面。

[!IMPORTANT]
本项目由社区独立维护,与 DeepSeek 官方无隶属关系。DSH Desktop 不修改 DeepSeek Harness;官方 DSH 仍按其自身许可证和行为运行。

下载与使用

前往 GitHub Releases 下载与你的系统匹配的安装包:

| 系统 | 安装包 |
| macOS Apple Silicon | DSH-Desktop--arm64.dmg |
| macOS Intel | DSH-Desktop--x64.dmg |
| Windows 10/11 x64 | DSH-Desktop-Setup-*-x64.exe |

安装并打开后,应用会直接进入官方 DeepSeek Harness 页面。需要安装或切换 DSH 版本时,从系统菜单打开“版本管理…”。

[!NOTE]
项目尚处于早期阶段。如果 Releases 中暂时没有安装包,请等待首个公开版本,不建议普通用户从源码构建。

产品截图

官方 DeepSeek Harness 工作区

DSH Desktop 启动后会直接在独立桌面窗口中显示官方 DSH 界面。

在 DSH Desktop 中运行的官方 DeepSeek Harness 工作区

版本管理

无需修改官方界面或用户数据,即可安装、保留和切换官方 DSH 版本。

DSH Desktop 版本管理页面

核心能力

- 社区维护的 DeepSeek Harness 桌面客户端,支持 macOS 与 Windows。
- 应用内置 Node.js 24 LTS 与 pnpm,用户无需自行安装这两个工具。
- 安装、保留并切换官方 @deepseek-ai/dsh 历史版本。
- 检测更新的官方 DSH 版本,在 DSH 工作区显示可关闭的更新提醒,并可从版本管理页更新。
- 在独立窗口中运行官方 dsh web,不改动官方界面。
- 简体中文 / English 双语界面,支持手动切换。
- 自带更新检查并校验 SHA-256。

清晰的产品边界

DSH Desktop 只负责运行环境、版本管理和进程托管。它不会:

- fork、patch、重新编译或向官方 DSH 页面注入代码;
- 管理 API Key、模型、会话、插件、Skills 或 MCP;
- 读取、迁移、备份或删除 DSH 用户数据;
- 自动升级或强制替换用户选择的 DSH 版本;
- 将本地 DSH 服务暴露到局域网。

官方 DSH 与 DSH Desktop 使用独立更新通道:DSH 版本来自 npm,由用户主动安装;DSH Desktop 仅在用户操作下检查本仓库 GitHub Releases。

[!WARNING]
当前安装包是没有受信任 Apple 或 Windows 代码签名证书的社区构建。macOS 仅做 ad-hoc 签名、未经 Apple 公证,可能需要在“系统设置 → 隐私与安全性”中允许打开;Windows 可能显示“未知发布者”或 SmartScreen 提示。请从最新 Release 下载与系统匹配的安装包。

架构图

flowchart LR
user["用户"] -->|启动| main["Electron 主进程"]
main --> node["内置 Node.js 24 LTS"]
main --> update["GitHub 更新检查"]
main --> versions["版本管理"]
node --> dsh["@deepseek-ai/dsh"]
versions -->|搜索/下载| registry["npm 官方源"]
dsh -->|127.0.0.1:随机端口| window["沙箱化 DSH 窗口"]
update --> releases["GitHub Releases"]

官方 DSH 仅在本地 127.0.0.1 与窗口通信,页面不直接暴露 Electron/Node.js API。

本地开发

仅开发者需要 Node.js 22.19+ 或 24+:

npm ci
npm run prepare:runtime
npm run dev

prepare:runtime 会下载并校验锁定的 Node.js 24 LTS、复制锁定版本的 pnpm,再使用该运行时安装随包 DSH。生成内容位于被 Git 忽略的 build-resources/。

提交改动前运行:

npm run verify
npm run test:official

verify 包含类型检查、自动测试、生产构建和产品边界审计。完整流程见贡献指南、支持指南、变更日志。

完整边界说明见 docs/superpowers/specs/2026-08-15-dsh-desktop-design.md,维护发布流程请参考 docs/RELEASING.zh-CN.md。
预览分享卡片长什么样 ↓qufei1993/dsh-desktop
分享 · DeepSeek Harness Hub
qufei1993/dsh-desktop

让普通用户无需安装 Node.js,也能直接运行和管理官方 DeepSeek Harness。

回到顶部