Repository navigation
Releases
v1.36.0 — 像素图标 + 同心核心
插件图标
四个 GPT Image 像素候选(docs/icon-candidates/),选中「火花 + 分段条」,转成 40×40 像素网格的矢量 SVG(141 个 rect、crispEdges),登记到 package.json 的 icon 字段。32px / 64px 下都能认出。
新动效
- 同心核心
concentric-core(超级英雄分类):六边形核心 + 2→5 圈同心环 + 满档八道辐射光刃。来自 IP 目录 §5.1 的程序化致敬条目,纯几何、无角色、无 logo。
工程
test/effect-assets.mjs:从 bundle 取真实 effect id,与素材映射、磁盘文件三方对齐。此前连续三次出现「effect id 与素材文件名不一致」导致素材 404,这道闸门把它堵死。- 36 个动效 / 12 个大类;
npm test12 条套件全绿(含 5335 项精灵、8697 项纹理、40413 项反馈、101 项核心、36 项素材闸门、42 项安装器)。
配套:icon.svg 只在插件根目录,安装器与 files 白名单已包含。
v1.24.1 — 安装器健壮性修复
v1.24.1 — 安装器健壮性修复
v1.24.0 已包含 Windows 支持,以及 16 个特效(几何线条保留万花尺、傅里叶本轮;分形树、莫尔条纹、阿基米德螺线、希尔伯特曲线已移除)。这一版汇总独立审查发现的中低风险问题,让 Windows 安装/自检更可靠。
修复
- 先建链接、再写 manifest:junction 失败(OneDrive、网络盘、
node_modules被占用)时不再留下「bundle 已登记、链接却不存在」的半安装 profile;失败信息明确说明 profile 未改。 DSH_HOME=''/--home=视为未设置并回退~/.dsh;~前缀会展开,不再静默解析到当前目录。verify只在默认 home 下自动发现宿主;显式--home/DSH_HOME时要求--port/--url,避免借另一套安装把坏 profile 验绿。DSH 自己导出的DSH_HOME=~/.dsh仍按默认处理。- Windows 端口发现不再依赖英文
LISTENING字样(部分系统本地化状态名),改为按监听行的通配外部地址匹配。 - Windows 启动器先跑
node --version;Node 低于 20 或遇到 Microsoft Store 执行别名桩时回退到 DSH 自带 Electron 运行时。 - profile
package.json非法 JSON(含 PowerShell 5.1 写的 BOM)给出可读错误,不再抛堆栈。 - Windows 安装完成提示改为
verify.cmd(无需 Node)。 - CI 的 Windows 断言改为
LinkType -eq 'Junction',Developer Mode 的目录符号链接不再冒充 junction。 - 文档:Release zip 解压后需进入外层目录再运行
install.cmd;mklink /J前先建node_modules;退出 Desktop 的原因措辞。
安装(Windows)
# 推荐:Desktop 菜单 Manage dsh Command… → Install,完全退出 Desktop,然后
dsh plugin --profile desktop add github:Dreamaniax/dsh-model-effort-chips没有 Git:下载本 Release 的 zip,解压后进入 dsh-model-effort-chips-1.24.1\ 运行 install.cmd;verify.cmd 自检。完整步骤与排错见 docs/install-windows.md。
验证
npm test:客户端 / React / jsdom / 16 特效 / 安装器 42 项全过。- GitHub Actions(run):ubuntu Node 20/22 + macOS/Windows Node 22 全绿;Windows 验证 junction 往返与「PATH 无 Node」的 Electron 回退。
- 发布资产下载后校验 SHA256,用官方 CLI 安装并
verify通过。
校验和
c7f65d3f773e204dbb5c22613b042c541e121f9cd59efe9e5767385f70bca9c1 dsh-model-effort-chips-1.24.1.zip
v1.24.0 — Windows 支持
v1.24.0 — Windows 支持
首个明确支持 Windows 的版本。插件本身仍是同一份纯浏览器端 ESM(无原生依赖、无需编译);这一版把「安装 / 自检 / 卸载」做成跨平台,并在 GitHub Actions 的 windows-latest 上真实验证 junction 与启动器。
Windows 安装(三种方式任选)
A. 官方 CLI(推荐,无需 Node.js,无需管理员)
-
打开一次 DSH Desktop,等主界面出现。
-
菜单 Manage dsh Command… → Install;新开一个终端确认
dsh --version。 -
完全退出 Desktop(托盘图标 → Quit;只点窗口 × 只是隐藏)。
-
安装(需要 Git for Windows):
dsh plugin --profile desktop add github:Dreamaniax/dsh-model-effort-chips
没有 Git 的话,下载本 Release 的 zip 解压到长期目录,然后:
dsh plugin --profile desktop add "link:C:\path\to\dsh-model-effort-chips"
-
重新打开 DSH Desktop。
npm 安装的
dshCLI 不能管理desktopprofile(会报profile "desktop" is managed exclusively by the Electron application);必须用 Desktop 菜单里装的那个。
B. 本地脚本(离线 / 无 Git / 无需管理员)
下载本 Release 的 dsh-model-effort-chips-1.24.0.zip,解压到长期保留的目录,运行:
install.cmd
verify.cmdinstall.cmd 优先用 PATH 上的 Node;没有时自动调用 DSH Desktop 自带的 Electron 运行时(ELECTRON_RUN_AS_NODE=1),所以普通用户不需要另装 Node.js。profile 投影是 junction,不需要管理员权限或 Developer Mode。
C. Plugins 页面
Desktop → 侧栏 Plugins → Add plugin → 粘贴 github:Dreamaniax/dsh-model-effort-chips(或本机绝对路径)→ Install → Enable → 完全退出并重开。
完整步骤与排错(端口、PowerShell 执行策略、Git/代理、OneDrive/网络盘 junction 失败、升级后处理):见 docs/install-windows.md。
这一版改了什么
Windows 支持
install.mjs/uninstall.mjs跨平台化:Windows junction、--home/DSH_HOME、package.json原子写、幂等重装、安全移除(真实目录改名备份而不是删除)。- 根目录新增
install.cmd/uninstall.cmd/verify.cmd(及.ps1):自动探测 PATHnode→DSH_DESKTOP_NODE_EXECUTABLE→ Desktop 注册表安装项 → 常见安装目录。 verify.mjs不再需要手填端口:从本机监听端口(Windowsnetstat、macOS/Linuxlsof)自动发现带本插件启动图的 host;字节比对对象改为宿主实际加载的那份 bundle,github:安装也能自检。- 新增
test/install.mjs(33 项检查):在临时目录造假DSH_HOME,覆盖 dry-run、安装、幂等重装、非 desktop profile、卸载、二次卸载,不碰真实~/.dsh。 - 新增 GitHub Actions CI:ubuntu / macOS / Windows × Node 20/22;Windows job 额外用
install.cmd验证 junction 创建和清除。
自 v1.16.0 以来
- 特效扩展到 16 个,两级菜单按五类分组:物理仿真(5)/ 粒子场(5)/ 几何线条(2)/ 波形信号(3)/ 角色演出(1)。
- 移除分形树、莫尔条纹、阿基米德螺线、希尔伯特曲线四个几何特效:几何线条保留万花尺与傅里叶本轮(
ba6500e)。 - 新增双摆、弹簧网格、陀螺进动、多米诺、流场、Boids、吸积盘、风沙、萤火虫同步、万花尺、傅里叶本轮、谐波叠加、Chirp 扫频、驻波。
- 修复特效菜单在真实应用里无法点击、listbox 归属、ARIA、画布越界等问题。
- 轨道统一为所有特效共用的横线;
layout.sky申请天空高度并夹到上限。
兼容性
- DSH Desktop
>= 0.2.2-rc.1(Windows 与 macOS 同一发布线);更早的 DSH 没有本插件使用的单人座位 / 模型目录 API。 - macOS 安装方式不变:
node scripts/install.mjs、dsh plugin --profile desktop add link:...或手动软链。 - 卸载:
uninstall.cmd/dsh plugin --profile desktop remove dsh-model-effort-chips,只删依赖记录、bundle 条目和投影,源码目录保留。
验证
npm test:客户端加载 / React SSR 渲染 / jsdom 滚轮 / 16 个特效契约 / 安装器往返,全部通过。- 本机 macOS 实机:
verify.mjs通过(宿主启动图注入 + 服务端字节与本地一致)。 - GitHub Actions:ubuntu / macOS / Windows 三平台矩阵(Windows 上真实创建并清除 junction,并覆盖无 Node 的 Electron 回退路径)。
- 从 GitHub 全新安装验证:
dsh plugin --profile desktop add github:Dreamaniax/dsh-model-effort-chips拉到 1.24.0,依赖与dsh.profile.bundles自动写入。
Windows 桌面里的最终 UI 冒烟请在真机确认(与 macOS 是同一份 web client,没有平台分支);有问题请带 verify.cmd 输出开 issue。
校验和
dfb99b08c3bf38e557ce692b518be8b992ef47be57804cde623cb1ad785942a5 dsh-model-effort-chips-1.24.0.zip
v1.16.0 — 合并为单一鲲鹏动效
本版重点:只剩一个「鲲鹏动效」
之前是两套并存——程序化绘制的 kunpeng 和像素插画版 kunpeng-art。现在合并为一套:
| 之前 | 现在 |
|---|---|
kunpeng(程序化霓虹鲸鱼) |
已删除 |
kunpeng-art(像素动画条) |
改名为 kunpeng / 鲲鹏动效,成为唯一实现 |
动画行为
| 档位 | 一趟用时 | 体形 | 帧率 | 动作 |
|---|---|---|---|---|
| off | 9.0 s | 0.55× | 3.5 fps | 小鲸鱼头朝右,慢悠悠从左游到右 |
| low | 7.2 s | 0.70× | 5.6 fps | 摆尾前游 |
| high | 5.4 s | 0.85× | 7.9 fps | 羽翼拍动、离水 |
| max | 3.5 s | 1.00× | 10.0 fps | 鲲鹏大翼拍动,快速飞掠 |
- 每档一条 6 帧透明底像素动画条,帧序循环播放
- 横穿整块面板后从左侧重新进入
- 画在轨道上方的 84px 天空带里,滑条不会横穿画面
- 缺素材时借用任一已加载档位;全都没有就什么都不画(不再有第二套渲染器)
其它
- 特效切换仍可用:
particle-wave↔kunpeng,选择存localStorage - 旧值
kunpeng-art会自动回落到默认特效,不会残留 - 测试 187 条:新增「帧推进」「水平位移」「drawImage 几何」「缺素材不绘制」
安装
git clone https://github.com/Dreamaniax/dsh-model-effort-chips.git
cd dsh-model-effort-chips
node scripts/install.mjs
# 完全退出并重开 DeepSeek Harness或下载下方 dsh-model-effort-chips-1.16.0.zip,解压后跑同一条命令。
自检
node scripts/verify.mjs --port <DSH 页面端口> # → LIVE PLUGIN OKv1.8.0 — 面板内切换动效(鲲鹏 / 粒子)
本版重点:在面板里切换动效
强度面板标题「思考强度」右边多了一个小按钮,显示当前特效名。点一下切到下一个特效,选择记在 localStorage(键 dsh-model-effort-chips:effect),刷新、重启后保持。
三种切换方式:
| 方式 | 怎么做 | 适合 |
|---|---|---|
| 面板按钮 | 点标题右侧的特效名 | 日常切换 |
| 控制台 | localStorage.setItem('dsh-model-effort-chips:effect','particle-wave') 后刷新 |
直接跳到指定特效 |
| 改默认 | 把 lib/client.js 的 DEFAULT_EFFECT_ID 改成 'particle-wave' |
改新会话的默认值 |
两个内置特效:
| 特效 | id | 说明 |
|---|---|---|
| 鲲鹏动效(默认) | kunpeng |
波浪缎带 + 小鲸鱼;档位越高体形越大、长出翅膀,max 振翅飞天 |
| 粒子波动特效 | particle-wave |
小球在鼓面上弹跳碰撞,档位越高越密越猛 |
其它
- 特效约定不变:
createState / step / paint+layout(sky / track / spectrum),新特效注册进EFFECTS即可 - 测试从 171 条增到 180 条,四套全绿
安装
git clone https://github.com/Dreamaniax/dsh-model-effort-chips.git
cd dsh-model-effort-chips
node scripts/install.mjs
# 完全退出并重开 DeepSeek Harness下载本页下方的 dsh-model-effort-chips-1.8.0.zip,解压后跑同一条命令也可以。
v1.7.0 — 鲲鹏动效:波浪缎带 + 鲸鱼长翅飞天
把 DeepSeek Harness 输入区那颗合并的「模型 · 强度」按钮拆成两枚独立 chip,档位滑条可点、可拖、可滚轮。
本版重点:鲲鹏动效(新的默认特效)
直条的渐变轨道换成一条波浪缎带,一只生灵沿缎带演进:
| off | high | max |
|---|---|---|
![]() |
![]() |
![]() |
| 小鲸鱼游过,吐气泡 | 体形变大、长出翅膀,开始离水 | 振翅飞天,脱离缎带 |
- 体形
0.5 → 1.35,翅膀在 40%–85% 区间用 smoothstep 平滑长出 - 俯仰角随档位上扬,max 时升空约 58px
- 缎带振幅随档位从 2px 长到 11px,三层描边(外发光 / 主渐变 / 高光)
粒子波动特效仍然保留,可在 EFFECTS 里切换。
特效是可插拔的
一个特效只要实现四个成员,canvas 生命周期 / DPR / 尺寸监听 / 帧循环都由宿主负责:
const myEffect = {
id: 'my-effect',
name: '我的特效',
summary: '一句话说明',
layout: { sky: 0, track: 'bar', spectrum: true },
createState: () => ({}),
step(state, frame) {}, // energy / totalLevels / width / height / dt / band / trackY
paint(context, state, frame) {}, // energy / accent / width / height / band / trackY
}
const EFFECTS = [particleWaveEffect, kunpengEffect, myEffect]layout 决定轨道长什么样:
| 字段 | 取值 | 含义 |
|---|---|---|
sky |
px | 画布在轨道上方额外留出的天空高度 |
track |
'bar' / 'wave' |
'wave' 时隐藏 DOM 直条与频谱,由 canvas 画波浪缎带 |
spectrum |
布尔 | 是否显示 DOM 频谱柱 |
功能
- 模型 chip —— 一步切换当前会话的模型
- 强度 chip —— 收起态只显示档位名;点开是滑条浮层
- 档位动态 —— 严格按模型声明的
reasoning.efforts画停靠点 - 换模型保档 —— 按序号迁移,目标档位不足时夹到最近一档
- 三种操作 —— 点击停靠点 / 拖动轨道(松手吸附、只写一次)/ 滚轮逐档(120ms 节流)
- 键盘 —— ←/→ 逐档,Esc 关闭,焦点回到打开它的 chip
- 亮色主题 —— 读宿主表面色算亮度,浅色下自动加深强调色
安装
git clone https://github.com/Dreamaniax/dsh-model-effort-chips.git
cd dsh-model-effort-chips
node scripts/install.mjs
# 完全退出并重开 DeepSeek Harness或下载下方的 dsh-model-effort-chips-1.7.0.zip,解压后跑同一条命令。
自检
node scripts/verify.mjs --port <DSH 页面端口> # → LIVE PLUGIN OK测试
npm install && npm test # 4 套,共 171 条断言已知限制
- 依赖「single 槽 +
priority遮蔽」的官方语义,DSH 大版本升级可能改变它 - 档位集合完全由模型声明,没声明档位时强度 chip 整颗消失
- 官方
/model弹窗不受影响
v1.6.0 — 动效升级为可插拔特效(粒子波动特效)
把 DeepSeek Harness 输入区那颗合并的「模型 · 强度」按钮拆成两枚独立 chip,档位滑条可点、可拖、可滚轮。
本版重点:动效升级为「可插拔特效」
强度面板底部的 canvas 不再写死某一个动画,而是一个特效注册表。当前内置第一个特效:
| 特效 | id | 说明 |
|---|---|---|
| 粒子波动特效 | particle-wave |
小球在鼓面上弹跳碰撞。off 为 0 颗,第二档 6 颗;档位越高数量越多、重力越大、初速越快、弹性越强,碰撞是物理算出来的 |
一个特效只要实现四个成员,canvas 生命周期 / DPR / 尺寸监听 / 帧循环都由宿主负责:
const myEffect = {
id: 'my-effect',
name: '我的特效',
summary: '一句话说明',
createState: () => ({}), // 这个特效自己的状态
step(state, frame) {}, // energy / totalLevels / width / height / dt
paint(context, state, frame) {}, // energy / accent / width / height
}
const EFFECTS = [particleWaveEffect, myEffect]后续版本会把「选哪个特效」做成会话级设置;这一版先把契约和注册表落地,画面与上一版完全一致(纯重构)。
功能
- 模型 chip —— 一步切换当前会话的模型,列表来自会话自身的目录
- 强度 chip —— 收起态只显示档位名(
high);点开是滑条浮层 - 档位动态 —— 严格按模型声明的
reasoning.efforts画停靠点,4 档模型 4 颗、5 档模型 5 颗 - 换模型保档 —— 按序号迁移(第 3 档 → 第 3 档),目标档位不足时夹到最近一档
- 三种操作 —— 点击停靠点、拖动轨道(松手吸附、只写一次)、鼠标滚轮逐档(120ms 节流)
- 键盘 —— ←/→ 逐档,Esc 关闭,焦点回到打开它的 chip
- 频谱呼吸 —— 呼吸幅度随档位加深(35% → 90%)
- 亮色主题 —— 读宿主表面色算亮度,浅色下自动加深强调色
安装
git clone https://github.com/Dreamaniax/dsh-model-effort-chips.git
cd dsh-model-effort-chips
node scripts/install.mjs
# 完全退出并重开 DeepSeek Harness不想用 git 的,下载本页下方的 dsh-model-effort-chips-1.6.0.zip,解压后进目录跑同一条命令。
自检
node scripts/verify.mjs --port <DSH 页面端口> # → LIVE PLUGIN OK依次检查:profile 的 link: 依赖、dsh.profile.bundles 条目、node_modules 软链、宿主客户端启动图是否包含本包、服务端返回的字节与本目录是否一致。
卸载
node scripts/uninstall.mjs已知限制
- 依赖「single 槽 +
priority遮蔽」这一官方语义,DSH 大版本升级可能改变它;届时最差退回官方控件 - 档位集合完全由模型声明,模型没声明档位时强度 chip 整颗消失
- 官方
/model弹窗不受影响,仍可正常使用
v1.5.2 — 模型 / 思考强度分体控件
把 DeepSeek Harness 输入区那颗合并的「模型 · 强度」按钮拆成两枚独立 chip,档位滑条可点、可拖、可滚轮。
功能
- 模型 chip —— 一步切换当前会话的模型,列表来自会话自身的目录
- 强度 chip —— 收起态只显示档位名(
high);点开是滑条浮层 - 档位动态 —— 严格按模型声明的
reasoning.efforts画停靠点,4 档模型 4 颗、5 档模型 5 颗 - 换模型保档 —— 按序号迁移(第 3 档 → 第 3 档),目标档位不足时夹到最近一档
- 三种操作 —— 点击停靠点、拖动轨道(松手吸附、只写一次)、鼠标滚轮逐档(120ms 节流)
- 键盘 —— ←/→ 逐档,Esc 关闭,焦点回到打开它的 chip
- 小球碰撞池 —— canvas 物理模拟:off 为 0 颗,第二档 6 颗,档位越高重力/初速/弹性越大,碰撞真的算出来的
- 频谱呼吸 —— 呼吸幅度随档位加深(35% → 90%),high/max 明显比 low 跳
- 亮色主题 —— 读宿主表面色算亮度,浅色下自动加深强调色
安装
desktop profile 被 Electron 独占,dsh plugin 命令行会被拒绝,所以用脚本:
git clone https://github.com/Dreamaniax/dsh-model-effort-chips.git
cd dsh-model-effort-chips
node scripts/install.mjs
# 完全退出并重开 DeepSeek Harness不想用 git 的,可以下载本页下方的 dsh-model-effort-chips-1.5.2.zip,解压后进目录跑同一条命令。
自检
node scripts/verify.mjs --port <DSH 页面端口> # → LIVE PLUGIN OK它会依次检查:profile 的 link: 依赖、dsh.profile.bundles 条目、node_modules 软链、
宿主客户端启动图是否包含本包、以及服务端返回的字节与本目录是否一致。
卸载
node scripts/uninstall.mjs # 只删链接与两条 profile 记录,代码留着已知限制
- 依赖「single 槽 +
priority遮蔽」这一官方语义,DSH 大版本升级可能改变它;届时最差退回官方控件 - 档位集合完全由模型声明,模型没声明档位时强度 chip 整颗消失
- 官方
/model弹窗不受影响,仍可正常使用




