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

桌面启动器 H1Kariiiiiii/dsh-icon-console

DeepSeek 客户端
H1Kariiiiiii32 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

DeepSeek Harness 桌面端…

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

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

相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/H1Kariiiiiii/dsh-icon-console.git

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
生态插件
可安装,未声明 dsh 能力
装得上吗
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 32 天前
档位由哪些信号合成

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

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

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

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

✗npm 包dsh-icon-console(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/21 20:39:03

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

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

可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 38 处,展示前 18 条)
  • 写入本地文件
    lib/index.js:238
    try { await writeFile(target, buffer) } catch (error) {
  • 读取本地文件
    lib/index.js:248
    if (!existsSync(path)) return { ok: false, error: `图标文件不存在: ${path}` }
  • 发起网络请求
    lib/client.js:146
    return fetch(url, init).then(function (res) {
  • 读取本地文件
    lib/host/icons.js:70
    if (typeof override === 'string' && override.trim() !== '' && existsSync(override.trim())) return override.trim()
  • 读取本地文件
    lib/host/icons.js:76
    if (existsSync(join(dir, 'resources'))) return dir
  • 读取本地文件
    lib/host/icons.js:80
    if (existsSync(join(fallback, 'resources'))) return fallback
  • 读取本地文件
    lib/host/icons.js:115
    if (!existsSync(resolved)) return { ok: false, error: `文件不存在: ${resolved}` }
  • 读取本地文件
    lib/host/icons.js:120
    const info = await stat(resolved)
  • 读取本地文件
    lib/host/icons.js:124
    const head = await readFile(resolved).then((buf) => buf.subarray(0, 8))
  • 写入本地文件
    lib/host/icons.js:133
    await mkdir(consoleStateDir(), { recursive: true })
  • 写入本地文件
    lib/host/icons.js:134
    await mkdir(backupDir(), { recursive: true })
  • 写入本地文件
    lib/host/icons.js:135
    await mkdir(libraryDir(), { recursive: true })
  • 写入本地文件
    lib/host/icons.js:152
    await copyFile(source, target)
  • 写入本地文件
    lib/host/icons.js:176
    await copyFile(inspected.path, target)
  • 写入本地文件
    lib/host/icons.js:191
    await copyFile(backup, join(resources, name))
  • 执行外部命令固定命令
    lib/host/icons.js:207
    execFile('powershell.exe', ['-NoProfile', '-NonInteractive', '-Command', script], { windowsHide: true, timeout: 15000 }, (error, stdout) => {
  • 执行外部命令固定命令
    lib/host/icons.js:236
    execFile('powershell.exe', ['-NoProfile', '-NonInteractive', '-Command', lines.join('; ')], { windowsHide: true, timeout: 15000 }, (error, stdout) =>
  • 删除本地文件
    lib/host/icons.js:338
    try { await rm(target, { force: true }) } catch (error) {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
dsh-icon-console DeepSeek Harness 桌面端 图标控制台:导入一个图标,一键应用到桌面快捷方式、开始菜单快捷方式、应用窗口图标与系统托盘图标;附带一键重启与优雅退出。 中文 · English ⚡ 安装(复制这一行即可) pwsh -File ~\.dsh\tools\dsh-desktop-cli.ps1 plugin --profile desktop add github:H1Kariiiiiii/dsh-icon-console 桌面端 profile 由 Electron 独占管理,普通 dsh 命令会被拒绝,因此使用桌面端自带 CLI。装完重启桌面端即可。
展开完整文档(README 剩余 1 节)
dsh-icon-console

DeepSeek Harness 桌面端 图标控制台:导入一个图标,一键应用到桌面快捷方式、开始菜单快捷方式、应用窗口图标与系统托盘图标;附带一键重启与优雅退出。

中文 · English

⚡ 安装(复制这一行即可)

pwsh -File ~\.dsh\tools\dsh-desktop-cli.ps1 plugin --profile desktop add github:H1Kariiiiiii/dsh-icon-console

桌面端 profile 由 Electron 独占管理,普通 dsh 命令会被拒绝,因此使用桌面端自带 CLI。装完重启桌面端即可。

功能

图标自定义(核心)

| 目标 | 生效时机 | 说明 |
| 桌面快捷方式 | 立即 | 改写 DeepSeek Harness.lnk 的 IconLocation |
| 开始菜单快捷方式 | 立即 | 同上 |
| 应用窗口图标 | 需重启 | 替换 <安装目录>/resources/icon.png(窗口与任务栏) |
| 系统托盘图标 | 需重启 | 替换 <安装目录>/resources/tray.ico |

- 导入方式:本地上传(文件选择器,base64 上传)或直接填写磁盘路径
- 格式支持:快捷方式图标需要 .ico;应用/托盘图标支持 .ico 与 .png
- 自动备份:首次运行即把官方图标备份到 ~/.dsh/icon-console/backup/
- 一键恢复:随时还原官方图标(快捷方式立即生效,应用/托盘图标需重启)
- 图标库:把常用图标存到 ~/.dsh/icon-console/library/,随时调用或删除

应用控制

- 重启应用:结束当前 Host 进程,桌面端随后弹出官方恢复对话框——点「重启」即可(默认按钮就是重启,直接回车)
- 退出应用:优雅结束 Host 进程

为什么重启是这样做的?桌面端的窗口与进程生命周期由 Electron 外壳拥有,插件跑在 Host 子进程里。官方市场(dsh-market)在桌面端同样把 allowRestart 硬编码为 false,理由是「重启原生 Electron 进程会绕过桌面端的启动器生命周期」。因此本插件不自行拉起 Electron,而是把重启交回外壳的官方恢复流程——这是生命周期正确的做法。

配置(设置 → 插件 → 插件配置 → 图标控制台)

| 字段 | 默认值 | 说明 |
| 启用插件 | true | 总开关 |
| 自动重应用 | false | 发现快捷方式图标被改动时自动恢复为记住的图标 |
| 快捷方式含开始菜单 | true | 处理桌面快捷方式时一并处理开始菜单 |

配置同时保存在 ~/.dsh/icon-console/state.json 与 settings 表单(volatile 字段)。

安装

需要 DeepSeek Harness 桌面端(Electron)。所有 HTTP 路由仅限 loopback。

推荐:从 GitHub 安装

桌面端 profile 由 Electron 独占管理,用桌面端自带 CLI pwsh -File ~\.dsh\tools\dsh-desktop-cli.ps1 plugin --profile desktop add github:H1Kariiiiiii/dsh-icon-console

然后重启桌面端

开发:本地源码安装

pwsh -File ~\.dsh\tools\dsh-desktop-cli.ps1 plugin --profile desktop add "file:C:/路径/dsh-icon-console"

file: 依赖跨盘符时 pnpm 是复制而非链接;改源码后需重跑一次 add(或删掉 node_modules/dsh-icon-console 再 pnpm install)才会同步。

安装后验证

组合层应出现 dsh-icon-console pwsh -File ~\.dsh\tools\verify-desktop-profile.mjs

重启桌面端后进入 设置 → 插件 → 插件配置,应看到「图标控制台」卡片。

卸载

pwsh -File ~\.dsh\tools\dsh-desktop-cli.ps1 plugin --profile desktop remove dsh-icon-console
图标库与备份保留在 ~/.dsh/icon-console/,可手动删除

兼容性说明

基于 桌面端 0.2.0-rc.2(内嵌 DSH 运行时)实测:

| 层 | 状态 |
| host 路由(ctx.webServer.register,exact + loopback 围栏) | ✅ 稳定 |
| settings 表单(0.1.7+ 的 .volatile() + describe() / update() 契约) | ✅ 已按新契约实现 |
| ctx.appExit | ✅ 可选读取,缺失时 process.exit 兜底 |
| client bundle(window.__ModuleLoader__.load 惰性 CJS 工厂) | ⚠️ 私有协议,随版本可能变化 |
| client 槽位(settings.section,与 wallpaper-engine 等第三方卡同槽) | ⚠️ 契约细节可能变化 |
| 图标文件替换(resources/) | ✅ 目录可写;应用升级会覆盖,重跑「应用图标」即可 |

降级保障:即使 client UI 完全失效,图标仍可通过 HTTP 路由直接操作;快捷方式图标不依赖应用重启。

常见问题

Q: 应用/托盘图标选了但没变化? A: 这两项需要重启应用(Electron 启动时只读取一次)。用卡片里的「重启应用」按钮,或手动重启。

Q: 快捷方式图标不刷新? A:Windows 资源管理器有图标缓存。按 F5 刷新桌面,或重启资源管理器(taskkill /f /im explorer.exe & start explorer)。

Q:提示「未找到 DSH 桌面端安装目录」? A:应用图标和托盘图标需要定位安装目录。可用环境变量 DSH_DESKTOP_INSTALL 指定安装根目录(含 resources/ 的那一层)。

Q:PNG 不能用作快捷方式图标? A:Windows 快捷方式只接受 .ico;.png 可用于应用窗口与托盘图标。

Q:升级桌面端后图标变回官方了? A:应用升级会替换 resources/。重新点「应用图标」即可;官方图标备份一直保留在 ~/.dsh/icon-console/backup/。

背景

- 本插件由 dsh-desktop-launcher2(dsh web 时代的桌面启动器)改造而来。桌面端(Electron)本身即可双击启动,自带启动画面与托盘退出,原先「创建启动快捷方式 + 打开浏览器」的定位已无意义。
- 改造后聚焦桌面端真正缺少的能力:图标自定义(应用 / 托盘 / 快捷方式)与便捷的应用控制。
- 原始启动器移植自 @linxin666/dsh-desktop-launcher@0.2.8(Apache-2.0);当前代码已按桌面端 0.2.0 架构重写,仅保留其授权与致谢。

目录结构

dsh-icon-console/
├── lib/
│ ├── index.js # host 入口:路由、settings(volatile 契约)、备份 │ ├── client.js # client bundle:设置卡片 UI │ └── host/ │ ├── icons.js # 图标校验 / 备份 / 快捷方式(.lnk) / resources 写入 │ └── restart.js # 退出与外壳中介的重启 ├── assets/ # 内置 dsh 图标 ├── cordis.patch.yml # bundle patch 层 ├── package.json └── LICENSE # Apache-2.0

致谢

- 原始启动器功能与 UI 移植自 zhu1090093659/dsh-web-ui 仓库的 @linxin666/dsh-desktop-launcher@0.2.8(Apache-2.0)。
- 图标资源沿用该包内置素材。

License

Apache-2.0(保留原包移植部分的版权声明)。
预览分享卡片长什么样 ↓H1Kariiiiiii/dsh-icon-console
分享 · DeepSeek Harness Hub
H1Kariiiiiii/dsh-icon-console

DeepSeek Harness 桌面端…

这是你的仓库?认领条目

回到顶部