
Nwflower/dsh-claude-style
dsh-claude-style
Claude Code Desktop theme for DeepSeek Harness
Install
npx @deepseek-ai/dsh plugin --profile web add dsh-claude-styleRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-claude-style)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from Nwflower/dsh-claude-style, cleaned of badges and images.
DSH Claude Style
为 DeepSeek Harness Web 复刻 Claude Code Desktop 风格与交互体验的主题插件。
在 DSH 里,就是 Claude Code Desktop 的样子。
预览
<td align="center" width="50%"><img src="./docs/light.png" alt="亮色画布 —— 暖调象牙" /></td>
<td align="center" width="50%"><img src="./docs/dark.png" alt="暗色画布 —— 暖调黑" /></td>
亮色:象牙白画布
#FCFCFB与浅色侧栏#FBFBF9;暗色:暖黑#141413。主题遵循系统亮暗模式切换,陶烬橙#D97757是两套画布唯一的操作强调色。
字体
重要:Anthropic 字体不随 npm 包分发,仅在仓库
fonts/供下载——既可以直接安装到系统,也可以免安装:把两个.ttf放进插件包的fonts/目录,宿主会以同样的 webfont 方式提供它们(两种方式的字体文件完全一致,效果相同)。生效均需刷新 / 重启 web。
| 字体 | 用途 | 文件 |
|---|---|---|
| Anthropic Sans Web Text | 界面 / UI | fonts/AnthropicSansWebText.ttf |
| Anthropic Serif Web Text | 对话正文 / Markdown | fonts/AnthropicSerifWebText.ttf |
| JetBrains Mono Variable | 代码 / 代码块 | fonts/JetBrainsMonoVariable.ttf、fonts/JetBrainsMonoItalicVariable.ttf |
Anthropic 字体启用(二选一):
① 安装到系统——Windows 双击 .ttf → 「安装」,macOS 用「字体册」导入;
② 免安装——把 .ttf 复制到插件包的 fonts/ 目录。完成后刷新页面生效。
Anthropic Sans/Serif 字体版权归 Anthropic 所有,仅供个人使用,不适用 MIT 许可。
安装
需要 dsh ≥ 0.1.7
- 通过终端安装
dsh plugin --profile web add dsh-claude-style # npm 包(推荐)
dsh plugin --profile web add Nwflower/dsh-claude-style # GitHub 源
- 通过插件市场安装
同一时刻建议只启用一个主题。安装后重启 dsh web 并刷新页面即生效。
特点
- 主题 —— 安装即全局生效,无需配置。亮色象牙白
#FCFCFB、暗色暖黑#141413,两套画布共用同一个操作强调色陶烬橙#D97757;亮暗跟随系统颜色模式切换。 - 输入框 —— 输入框整块重做:权限分段控件(只读 / 编辑 / 自动 / Yolo)与它下方的档位列表、带品牌锁定标的模型触发器、工具栏与状态统计同一行排版,发送键与停止键统一成 7px 圆角。统计句与模型触发器共用一套字号与颜色。权限档位取自宿主的权限目录:宿主配置了哪几档就画哪几档,第三方插件注册的档位(例如 auto mode 插件的
auto-mode)会自动出现在列表里并占用「自动」那一格;列表保持纯文字,档位自己声明的图标不画。切换档位时,高亮块从原档位平滑滑到新档位;设置页里的各组分段控件也是如此。 - 模型选择器 —— 全新的两级弹层:一级列官方服务与设置页勾选的快捷供应商,「更多模型」二级按供应商分组;每行带厂商锁定标与说明文案,底部是推理等级推条(无极滑动,松手对齐最近档位)与「更多模型」入口。二级底边与一级对齐,一级已显示的供应商不再重复;模型不支持思考时不画推条。悬停停留 100ms 打开、离开 150ms 关闭,两卡之间的空隙不算离开。
- 工作区 —— 侧栏「工作区」标题改成 进行中 / 已归档 分段控件:进行中沿用宿主的会话树,已归档是皮肤自己的平铺列表(标题、时间、每行「取消归档」与「删除」两个图标按钮)。行排版与宿主的会话行逐项一致(行 x=12 / 宽 251 / 高 28 / 标题起点 x=36)。切换两种视图时,高亮块在两段之间平滑滑动。
- 侧栏 —— 新会话与插件两行取 Claude 真机形状:默认无底色、hover 才有底色,新会话的「+」套一枚圆形底,两行图标 hover 顺时针转 90°(四重对称图形,转回原位);底部账户抽屉、封号彩蛋一并保留。桌面端的品牌行比宿主原样上移 10px,不再比 Web 端低出一截。鼠标移到侧栏上时,左上角的品牌标志淡出、换成一个搜索框(侧栏收起成窄条时没有),点它或按宿主的搜索快捷键(桌面端 Ctrl+K,Web 端 Ctrl+Alt+K)在窗口上方淡入搜索面板,「工作区」标题行原来的搜索图标不再显示:搜历史会话(按标题、所属工作区名和对话内容:你和模型说过的每句话都算,句子中间的几个中文字也能搜到,不分大小写,行下显示命中的那一句并把命中的字加粗;宿主启动后第一次打开面板时要把全部会话读一遍,约十几秒)、项目、插件、当前会话可用的 Skill 与快捷键,顶部「全部 / 会话 / 项目 / 插件 / Skill / 快捷键」切换分类,搜索框为空时列出最近的五个会话与「新会话 / 插件 / 设置 / 键盘快捷键」几个操作。↑↓ 选择、Enter 打开、Tab 与 Shift+Tab 切换分类、Esc 关闭;选中会话即打开,选中项目在该工作区开新会话,选中插件打开它在插件页的详情,选中 Skill 把
/名称放到当前会话输入框开头,选中快捷键打开宿主的快捷键列表并筛到这一条。 - 账号区 —— 昵称与头像各走一条固定顺序。昵称:自定义昵称 → 官方账号昵称 → HDSL 启动器昵称 → 上次探测到的系统用户名 → 本次探测到的系统用户名 →
User;头像:官方账号头像 → HDSL 启动器头像 → Claude 徽标。官方账号资料只在启动、热重载、登录与登出时向服务器读取,不轮询;HDSL 契约由宿主半边读一次后经两条只读路由转发(GET /dsh-claude-style/hdsl回账号元数据、GET /dsh-claude-style/hdsl-skin.png回头像图片,都不含头像文件的绝对路径,并过宿主的请求栅栏),契约版本读不到或不认识时整组忽略,头像文件被删除时回落到徽标。启动器给的是皮肤贴图而不是成品头像,因此账号位置的头像由贴图裁出:脸部 8×8 贴图块按盒子 1/18 内缩、帽子层铺满整盒,方形绘制不被圆角裁切。账号弹层沿用宿主自带的那一个:宿主的账号行就是入口,弹层里依次是
…

