dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Claude 风格的 DSH Web 界面皮肤(fork 自 PAKIKNOWLEDGE/dsh-client-ui-skin-claude)
Claude 风格的 DSH Web 界面皮肤:暖黑画布、陶橙点缀,内置 Anthropic 字体切换,跟随原生亮/暗主题。
fork 自 PAKIKNOWLEDGE/dsh-client-ui-skin-claude(MIT)关于本仓库:这是 xiang9916 的个人 fork,包名与插件身份已调整为 dsh-claude-skin,样式与功能与上游保持一致,方便作为自己的皮肤基底继续改造。本仓库已清空上游 Git 历史,从单一初始提交开始独立演进;首个发布版本号沿用上游的 0.2.1。
·
重要:npm 包不随包分发字体文件。 字体文件放在仓库 fonts/ 供下载;安装后刷新 / 重启 web 才会生效。字体 · 用途 · 文件 Anthropic Sans Web Text · 界面 / UI · fonts/AnthropicSansWebText.ttf Anthropic Serif Web Text · 对话正文 / Markdown · fonts/AnthropicSerifWebText.ttf Anthropic Mono Variable · 代码 / 代码块 · fonts/AnthropicMonoVariable.ttf I.Ming(一點明體)8.10 · 中文正文 / 标题 / 表格 / 新对话空态标题与「预览版」徽章 · 不随仓库分发,用 scripts/install-iming.sh 下载安装
安装:Windows 双击 .ttf → 「安装」;macOS 用「字体册」导入。安装后刷新页面生效。
字体版权归 Anthropic 所有,仅供个人使用,不适用 MIT 许可(详见 LICENSE 字体声明)。
对话正文的衬线字族是这样排列的:
--dsw-font-serif:
"Anthropic Serif Web Text", Georgia, "Times New Roman",
"I.Ming", "一點明體", /* ← 中文落到这里 */
"Noto Serif SC", "Songti SC", serif;Anthropic Serif 不含汉字,所以西文用 Anthropic Serif、汉字用 I.Ming,浏览器按字形逐个回退,无需拆段。skin(皮肤衬线)模式同样会落到 I.Ming。
新对话空态的两处文字原本到不了 I.Ming:「探索未至之境」大标题继承的是 UI 无衬线字族,「预览版」徽章则被应用钉在等宽字族。皮肤用一条规则把两者指回 --dsw-font-serif,因此 anthropic / skin 模式下它们与正文一样是明体;「系统默认」模式则保持不干预字体。这两处同时按 font-weight: 700 加粗,明体只有常规字重,粗体由浏览器合成。
I.Ming 体积约 25 MB(60017 个码位,含 Big5、GB2312、《通用规范汉字表》),故不提交进仓库,改用脚本从官方 Release 下载并校验 SHA-256:
./scripts/install-iming.sh~/Library/Fonts/I.Ming-8.10.ttf;Linux → ~/.local/share/fonts/(自动 fc-cache).ttf → 「安装」即可system_profiler SPFontsDataType | grep I.Ming 应能查到I.Ming 由一點字坊(I.Font Project)制作,采用 IPA 开放字型授权协议 1.0,不适用 MIT;本仓库只引用字体名、不分发字体文件。
已发布到 npm:0.2.1 对应 DSH 0.2.1-rc.2;对应 DSH 0.2.1-rc.3 的是预发布版 0.2.1-rc.3(dist-tag next)。推荐直接安装:
dsh plugin --profile web add dsh-claude-skin # 0.2.1
dsh plugin --profile web add dsh-claude-skin@next # 0.2.1-rc.3,适配 DSH 0.2.1-rc.3也可以从源码 / tgz 安装:
在仓库根目录执行:
npm pack
# 生成 dsh-claude-skin-<version>.tgz
dsh plugin --profile web add ./dsh-claude-skin-*.tgz
dsh webdsh CLI:把 dsh 换成 npx @deepseek-ai/dsh。打开 设置 → 插件,把上面生成的 tgz 绝对路径粘贴到安装输入框即可。
dsh plugin --profile web add github:xiang9916/dsh-claude-skin装完重启 dsh web,刷新页面。
插件列表显示名与图标:安装后在「设置 → 插件」里显示为 「Claude 风味主题」,图标是陶土橙鲸鱼。名称来自locale/zh.json的meta.title,英文环境显示Claude Flavour Theme;图标由package.json的"icon": "./icon.svg"指向icon.svg。
装完看不到 Anthropic 字体是正常的:npm 包不随包分发字体,需要手动导入fonts/里的三个 TTF;想让中文正文用一點明體,再执行一次./scripts/install-iming.sh。
已在 DSH 0.2.1-rc.2 上运行验证,并针对 DSH 0.2.1-rc.3 逐项核对(客户端组件类名后缀、settings.general.item 插槽、primitives / store 导出在 rc.3 中均未变化,只有图标的导出名从 IconChevronDownOutline14 改为 IconChevronDownOutlineRegular,本版已跟随)。package.json 通过 engines.dsh 与 dsh.compatibility.dshReleases 声明兼容范围,Market / 插件列表可直接判断,不会显示 unknown。
打开 设置 → 常规 → 字体风格:
选择立即生效,并保存在浏览器 localStorage。
如果之前单独安装过 dsh-anthropic-fonts,建议先卸载,避免两套字体变量互相覆盖。同一时刻只启用一个皮肤。本 fork 使用独立的 loader 行 id `ui-claude-skin`(上游是 ui-skin-claude),skin.json 的皮肤 id 也改为 claude-skin,因此不会与上游包发生 loader id 冲突;但两个皮肤都会写入同一个 data-dsh-claude 作用域并各自注入一份 ``,不要同时启用,否则后加载的会覆盖前一个的样式。
编辑 ~/.dsh/cordis.patch.yml:
# dsh-skin managed 段之外
- insert:
- id: ui-claude-skin
name: 'dsh-claude-skin'(并把当前启用皮肤的 disabled: true 加上。)配置 watcher 几秒内热加载,刷新页面生效。
~/.dsh/cordis.patch.yml 里的 ui-claude-skin insert 行dsh plugin --profile web remove dsh-claude-skindsh webMIT。上游版权与作者署名保留在 LICENSE 中;Anthropic 字体版权归 Anthropic,I.Ming 采用 IPA 开放字型授权协议 1.0,均不适用 MIT。