deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:H1Kariiiiiii/dsh-icon-console
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
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 |
.ico;应用/托盘图标支持 .ico 与 .png~/.dsh/icon-console/backup/~/.dsh/icon-console/library/,随时调用或删除为什么重启是这样做的?桌面端的窗口与进程生命周期由 Electron 外壳拥有,插件跑在 Host 子进程里。官方市场(dsh-market)在桌面端同样把
allowRestart硬编码为false,理由是「重启原生 Electron 进程会绕过桌面端的启动器生命周期」。因此本插件不自行拉起 Electron,而是把重启交回外壳的官方恢复流程——这是生命周期正确的做法。
| 字段 | 默认值 | 说明 |
|---|---|---|
| 启用插件 | true |
总开关 |
| 自动重应用 | false |
发现快捷方式图标被改动时自动恢复为记住的图标 |
| 快捷方式含开始菜单 | true |
处理桌面快捷方式时一并处理开始菜单 |
配置同时保存在 ~/.dsh/icon-console/state.json 与 settings 表单(volatile 字段)。
需要 DeepSeek Harness 桌面端(Electron)。所有 HTTP 路由仅限 loopback。
# 桌面端 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
@linxin666/dsh-desktop-launcher@0.2.8(Apache-2.0)。Apache-2.0(保留原包移植部分的版权声明)。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。