dsh-open-plugins
No description
- Stars
- 1
- Language
- JavaScript
- Created
- Aug 17, 2026
- Updated
- Aug 17, 2026
Introduction
dsh-open-plugins
DSH(DeepSeek Harness)独立开源插件集:两个插件,零全家桶依赖,开箱即用。 适用于 DSH Desktop(桌面应用)与 DSH Web。
- 🖼️
@huntdier/dsh-client-ui-skin-fairy-kingdom—— 妖精国皮肤:黑白二次元壁纸 + 暖调灰阶主题,亮/暗双主题,壁纸内联零静态资源,安装即用。 - 📂
@huntdier/dsh-client-ui-aionui-panel—— 右侧面板框架 + 代码 IDE 编辑器: Explorer 文件树 / Preview 多格式预览 / SCM 变更,代码、Markdown、HTML 的源码编辑 与只读查看全部使用内置 IDE 编辑器(行号、语法高亮、括号/引号自动补全)。
这两个包原本是 dsh-web-ui 全家桶(
@linxin666/dsh-web-ui-all)中对应组件的本地 定制版。本仓库把它们拆成独立的开源包:不依赖全家桶聚合包,只依赖 DSH 官方 运行时(@deepseek-ai/*,由 DSH 自身提供),桌面端 compatibility 壳与 Web 端 均原生兼容。
1. 整体介绍
| 插件 | 包名 | 功能 |
|---|---|---|
| 妖精国皮肤 | @huntdier/dsh-client-ui-skin-fairy-kingdom | 162 个 --dsw-* 设计 token 亮/暗双套完整重映射;壁纸背景随主题实时切换遮罩(--dsw-skin-scrim 可调);行内代码、Git 图谱等组件级配色适配;独立于皮肤中心,插件行激活即生效 |
| 右侧面板 + IDE | @huntdier/dsh-client-ui-aionui-panel | Explorer 文件树(文件名搜索、宽度拖拽、按项目持久化);Preview 多 tab 预览(markdown/html/code/diff/csv/pdf/office/图片/文本);SCM 真实 git stage/unstage/discard;内置 IDE 编辑器(行号 + 高亮 + 自动补全,按扩展名识别语言);Host 侧 workspace 门禁保障文件安全 |
设计要点
- 独立:两个包各自携带
cordis.patch.yml注册插件行,不依赖全家桶聚合包; 皮肤包行激活即应用,无需皮肤中心(皮肤中心仅用于多皮肤切换管理)。 - 安全:面板所有
/aionui-panel/*路由经 Host 侧 workspace 门禁,浏览器只能 读写已注册工作区内的文件。 - 开源:MIT 许可 + 保留上游
@linxin666/dsh-web-ui(BSD-3-Clause)署名声明; 面板包附带 IDE 编辑器源码(src/ide-editor.tsx)与补丁流水线(scripts/build.mjs)。
2. 结构目录
dsh-open-plugins/
├── README.md 本文件
├── LICENSE 项目许可证(MIT + 上游 BSD-3-Clause 声明)
├── display.png 效果展示截图
├── install-plugins.ps1 一键安装脚本(自动定位应用路径 + 安装两个插件)
└── packages/
├── dsh-client-ui-skin-fairy-kingdom/ 皮肤包
│ ├── lib/client.js 浏览器插件(token 注入 + 壁纸背景 + 主题遮罩)
│ ├── lib/index.js Host 空入口
│ ├── skin.json 皮肤元数据(皮肤中心可识别)
│ ├── cordis.patch.yml 插件行注册(ui-skin-fairy-kingdom)
│ └── scripts/ 皮肤生成脚本(参考)
└── dsh-client-ui-aionui-panel/ 右侧面板包
├── lib/ Host 半边 + 浏览器半边 + 类型声明
│ ├── index.js Host 插件(workspace 门禁 + fs/git 路由)
│ └── client.js 浏览器插件(含内置 IDE 编辑器)
├── src/ IDE 编辑器源码(ide-editor.tsx)与构建产物
├── scripts/ 补丁流水线(build.mjs / verify.mjs)
└── cordis.patch.yml 插件行注册(ui-dsh-aionui-panel)
3. 如何安装
前提:两个包已发布到 npm(
npm publish --access public);目标机器 PowerShell 的 PATH 上有 pnpm(或使用桌面应用内置终端,内置终端自带 pnpm 与 dsh)。
方式一:一键脚本(推荐)
把整个 dsh-open-plugins 文件夹拷贝到目标机器,在 PowerShell 中执行:
powershell -ExecutionPolicy Bypass -File install-plugins.ps1
脚本会自动完成:
- 定位应用:
-AppDir <路径>手动指定 → 应用运行时取进程路径 → 常见安装位置自动搜索(%LOCALAPPDATA%\Programs/Program Files/D:\等); - 推导 CLI 引导路径:
<应用目录>\resources\app.asar.unpacked\lib\desktop-cli.js(固定相对位置,无需单独配置); - 清理残留:移除历史安装可能留下的无 scope 坏依赖;
- 按包名安装两个插件并提示重启。
应用不在常见位置时手动指定:
powershell -ExecutionPolicy Bypass -File install-plugins.ps1 -AppDir "D:\Programs\DSH Desktop"
方式二:应用内置终端(免装 pnpm)
打开 DSH 桌面应用 → 内置终端,直接执行:
dsh plugin --profile desktop add @huntdier/dsh-client-ui-aionui-panel
dsh plugin --profile desktop add @huntdier/dsh-client-ui-skin-fairy-kingdom
方式三:普通终端手动安装
$env:ELECTRON_RUN_AS_NODE = "1"
& "D:\...\DSH Desktop.exe" --expose-internals "D:\...\resources\app.asar.unpacked\lib\desktop-cli.js" plugin --profile desktop add @huntdier/dsh-client-ui-aionui-panel
& "D:\...\DSH Desktop.exe" --expose-internals "D:\...\resources\app.asar.unpacked\lib\desktop-cli.js" plugin --profile desktop add @huntdier/dsh-client-ui-skin-fairy-kingdom
(... 换成目标机器的实际安装路径;ELECTRON_RUN_AS_NODE=1 让应用 exe 以纯 Node
模式运行,不弹窗口。)
安装后
重启 DSH 桌面应用(或刷新 Web 页面),右侧面板与皮肤即生效。
注意:若与全家桶
@linxin666/dsh-web-ui-all同时安装,两边会注册相同的 插件行(ui-dsh-aionui-panel/ui-skin-fairy-kingdom)。使用本仓库插件时请 不要同时安装全家桶;如必须共存,需让本仓库的包处于更晚的 patch 层。
4. 图片展示
妖精国皮肤 + 右侧面板整体效果

- 暖调灰阶主题:明亮插画垫在半透明暖纸面板之下,遮罩随亮/暗主题实时切换;
- 深色变体是"灾后炉边"的暖炭夜调,金色余烬只落在链接、按钮与选中态上;
- 右侧面板:Explorer 文件树 + Preview 多格式预览 + SCM 变更面板。
许可证
本仓库(含两个包)以 MIT 发布。两个包均派生自 @linxin666/dsh-web-ui
(linxin666 / zhu1090093659,BSD-3-Clause),上游版权与许可声明已随各包 LICENSE
保留。