跳到正文
dsh-market 浏览插件 GitHub EN

MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider

Claude 风格动画推理等级滑块与模型选择器,替换原生模型选择器。

Star 数 ★ 0 分类 UI 增强 收录于 2026-08-15

安装

在 DeepSeek Harness 里通过 dsh-market 安装

dsh plugin --profile web add dshmarket

或使用命令行

dsh plugin --profile web add github:MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络。请先审阅源码,并尽量锁定 commit(github:owner/repo#sha)。

README

DeepSeek Harness(DSH) 打造的动画推理等级滑块与模型选择器。 它替换原生模型选择器的 conversation.input.model 插槽,用带 Claude 风格动画滑块的兼容选择器接管该区域。

English version: README.md

效果展示

DSH Effort Slider 效果预览

功能特性

  • 无缝替换模型选择器 — 只替换 conversation.input.model 插槽,对话输入框的其他部分保持不变。
  • 统一的推理等级滑块 — 始终显示 Off | Low | Medium | High | Extra | Max 六个档位,不依赖具体提供商如何命名等级。
  • 宽容的名称匹配 — 自动把 offnonedisabledultracodemaxmedmediumextremeextra 等别名或显示名映射到滑块的标准档位。
  • 不支持的档位仍然可见 — 当前模型不支持的档位会变暗,但仍可点击。点击后拇指停留在所选档位,实际应用其下方最近的支持档位,并通过 toast 提示降级。
  • 切换模型时保留档位 — 切换模型时,如果新模型支持当前档位则保留;否则自动降到下方最近支持档位(或回退 Default),并弹出提示。
  • Default 与厂商专属档位Default 以滑块下方的胶囊按钮提供,提交时不携带 reasoningEffort(由提供商使用自己的默认值)。无法映射到标准档位的其他厂商档位也会以胶囊按钮显示。
  • 无推理元数据的模型也可管理 — 当 DSH 没有为当前模型返回 reasoning/efforts(例如部分 OpenRouter 或手写自定义条目)时,“推理等级”菜单仍会显示:面板中给出“未提供推理等级”的提示和安全可用的 Default 胶囊,而不是隐藏所有思考强度控件。
  • 滑动变祖器(梁) — 可选功能,默认关闭。六档固定绑定六个段名:Off → 小难梁Low → 牢梁Medium → 梁子High → 梁圣Extra → 梁神Max → 梁祖。开启后,滑块上方显示 31 帧人像(frame-00frame-30),拖动时逐帧连续变化,松手吸附后停在段首帧;弹层标签与触发芯片显示「Max 梁祖」格式。状态保存在 localStorage,跨会话记忆。
  • 大肥鱼 thumb — 可选功能,默认关闭。将滑块拇指替换为 8 帧奔跑精灵图(大肥鱼):静止 720ms 循环、拖拽 420ms 加速、系统「减少动态效果」时冻结。在 DSH 设置 → 通用设置中打开 大肥鱼滑块 开关即可实时生效,无需刷新,状态保存在 localStorage
  • High / Extra 动效更新High(蓝)与 Extra(紫)档位新增稀疏点阵 + 随机闪烁 + 明暗水波纹粒子场,从拇指位置向外展开,作为 Max 像素场的弱化前奏。
  • Max / Ultracode 特效 — 模型处于 max/ultracode 档位时,轨道变成动态紫色像素场,Max 文字变为流动的多彩渐变。
  • 多语言与主题适配 — 内置英文、简体中文词典,并跟随 DSH 亮/暗色设计令牌。
  • 无障碍支持 — 滑块支持键盘操作(方向键、Home/End、PageUp/PageDown)、ARIA 标签、焦点管理,并遵循 prefers-reduced-motion

安装方法

从 Git 仓库安装:

dsh plugin --profile web add github:MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider
dsh --profile web

或使用本地目录:

dsh plugin --profile web add ./dsh-client-ui-effort-slider

安装或卸载后,需要重启 web profile。

使用方法

  1. 点击对话输入框上方的模型/等级触发器(trigger chip)。
  2. 在弹出的菜单中:
    • 选择 模型 切换模型;
    • 选择 推理等级 调整当前模型的推理强度。
  3. 在推理等级面板中:
    • 拖动或点击滑块选择 OffLowMediumHighExtraMax
    • 如果某个档位不受支持,拇指会停留在你点击的位置,实际应用其下方最近的支持档位,并通过 toast 提示。
    • 点击 Default 可移除 reasoningEffort,交给提供商使用默认值。
    • 点击额外胶囊按钮,可应用无法映射到标准滑块的厂商专属档位。
    • 如果当前模型没有声明任何推理等级,面板会显示提示,并只提供 Default 胶囊。对于实际支持思考强度但配置中缺少 reasoningEfforts 的提供商(常见于自定义 OpenRouter 路由),需要在 DSH 的 llm-pi-ai 配置中补充等级后,滑块才会完整恢复。
  4. 切换模型时,插件会尽量保留当前推理等级;如果新模型不支持,则自动降级到下方最近支持档位,或回退到 Default,并始终显示 toast 提示。
  5. 开启 滑动变祖器(梁):点击轨道下方的「滑动变祖器」开关,人像与档位名后缀立即生效,并跨会话记忆。
  6. 开启 大肥鱼 thumb:打开 DSH 设置 → 通用设置,启用 大肥鱼滑块 开关即可,实时生效无需重启。

UI 效果

  • 触发器(Trigger chip) — 显示当前模型与推理等级,并带六根随档位点亮/升高的信号条和下拉箭头。处于 Max 时,等级文字显示为紫色流动渐变;开启滑动变祖器后还会显示「Max 梁祖」这类段名后缀。
  • 两级弹出菜单 — 紧凑菜单包含按提供商分组的模型列表与推理等级面板,并支持加载中、错误、重试状态。
  • 玻璃轨道 — 内嵌斜面阴影和细微分形噪点层,避免纯色色带显得呆板。
  • 光场效果 — 轨道会像真实光源一样响应指针:内部光斑与玻璃边缘高光跟随光标,靠近时变亮、远离时渐隐。Max 状态会关闭光场,保持像素场纯净。
  • 等级标签 — 轨道下方有淡色刻度标签;当前等级始终显示,悬停到某个档位附近时该档位高亮,其他标签保持弱化。
  • 梁人像 — 开启滑动变祖器后,轨道上方显示 224px 方形人像,使用 31 张 WebP 帧(frame-00frame-30)随滑块连续变化,并保留原版扫描线 + 光斑质感。
  • 梁开关指示灯 — 轨道下方的「滑动变祖器」开关带圆点指示灯:关闭为灰点,开启为紫色发光点。
  • High / Extra 点阵水波纹High(蓝)与 Extra(紫)档位显示稀疏点阵粒子场,从拇指向两侧展开、随机闪烁,并带有明暗水波纹向外扩散。
  • Max 像素场 — 切换到 Max 时,轨道变成动画紫色像素场,带扫过式显现与流动闪烁;Max 文字使用流动的多彩渐变。
  • 大肥鱼 thumb — 启用后,滑块拇指变成 8 帧奔跑的大肥鱼精灵图:静止 720ms 循环、拖拽 420ms 加速、减少动态效果时冻结;左端贴边对齐,右端防小人溢出。
  • 动效安全 — 全部效果基于 CSS 过渡/动画或轻量事件处理,并尊重 prefers-reduced-motion

开发调试

从源码构建客户端 bundle:

npm install
npm run build

lib/client.jssrc/client.jssrc/ds-effort-slider.js 通过 scripts/build-client.mjs 生成。

运行独立组件演示:

# 在浏览器中打开 demo/index.html

演示页覆盖面板模式、inline 模式、支持档位组合、主题切换、Max 像素场、滑动变祖器与大肥鱼 thumb。

包契约

这是 DSH bundle,不是动态 cordis_define 代码片段。包结构:

  • dsh.bundle.patchcordis.patch.yml)用于自我注册。
  • dsh.client.platform: web 用于浏览器端。
  • lib/client.js 是预构建的 ModuleLoader 产物,由 src/ 生成。
  • index.js 是宿主端:挂载 /effort-slider-assets/ 静态路由,向浏览器端提供 assets/liang-frames/*.webpassets/chibi-runner-strip.png

文件说明

  • index.js — 宿主端;提供梁人像帧与大肥鱼精灵图静态资源。
  • src/ds-effort-slider.js — 独立 Web Component(shadow DOM,无框架)。
  • src/client.js — React 包装层与模型选择器插件逻辑。
  • scripts/build-client.mjs — bundle 生成脚本。
  • demo/index.html — 独立 UI 演示页。
  • assets/liang-frames/(31 张 WebP 人像帧)与 chibi-runner-strip.png

内容来自项目 README(GitHub)↗