前言¶
DSH 0.1.x 尚未暴露公开 icon resolver,部分 settings 与 sidebar 目标在没有可靠匹配或原始图标时,会回退到同一个 Settings 齿轮。dsh-icon-theme 用于在 DSH 的 settings 与 sidebar 表面上自动发现可图标化的目标,并让用户按稳定键选择或恢复图标。
这是什么¶
dsh-icon-theme 是 yzke 发布、MIT 许可的 DSH 插件,面向 DeepSeek Harness 的 settings 与 sidebar 表面,提供自动发现、用户可自定义的图标。它适合需要处理 settings.section 与 sidebar.footer.action 图标一致性的 DSH 0.1.x 环境。
核心功能¶
下面介绍插件明确提供的能力。
- 自动发现 live 的
settings.section与sidebar.footer.action贡献;当侧边栏部分渲染且无法按顺序关联时,使用 audited per-plugin 记录。 - 按稳定键保存图标选择,例如
settings.section:market;不使用翻译标签或 DOM 位置作为持久化依据。 - 内置 121 个字形:50 个 Fluent UI 16 Regular 字形、70 个官方 DSH UI 字形,以及 1 个 audited monochrome
dsh-market字形。 - 运行时不使用 icon CDN、webfont、Iconify API、GitHub 请求或包扫描。
- 卸载或热重载时恢复所有 host SVG,并移除自有 DOM 标记和样式。
- 对未渲染贡献和非图标卡片只报告,不假装已更改。
- 当目标没有可靠匹配且没有原始图标时,回退到 Settings 齿轮。
- 页面列出已发现目标、稳定键、兼容状态和当前图标来源;支持按功能名、ID 或图标搜索,筛选
Settings、sidebar、unrecognized、customized条目,选择字形,以及恢复单个或全部目标为自动行为。 - Settings 使用固定命名空间、同源 Host endpoint,只接受
overrides和originalPolicy;不能读取或修改其他插件命名空间。
安装与启用¶
先使用插件命令安装:
dsh plugin --profile web add dsh-icon-theme
安装后重启 dsh web,再打开:
Settings → Icons
如果从源码安装,执行以下步骤:
git clone https://github.com/yzke/dsh-icon-theme.git
cd dsh-icon-theme
npm ci
npm run build
dsh plugin --profile web add link:"$PWD"
源码构建需要 Node.js 22 或更新版本。
支持的 DSH peer range 是:
>=0.1.0-rc.6 <0.2.0-0 || >=0.1.1-rc.0 <0.2.0-0 || >=0.1.2-alpha.1 <0.2.0-0
该范围包含 source-only dsh-v0.1.2-alpha.1 GitHub preview。
卸载时使用:
dsh plugin --profile web remove dsh-icon-theme
然后重启 dsh web。插件会在卸载时恢复所有 host SVG,并移除自有 DOM 标记和样式。
典型用法¶
启用后,在 Settings → Icons 页面中完成以下操作:
1、按功能名、ID 或图标搜索目标。
2、筛选 Settings、sidebar、unrecognized 或 customized 条目。
3、为单个目标选择字形。
4、恢复单个目标或全部目标为自动行为。
当 dsh-better-sidebar 已安装时,它的 Settings 行图标默认作为可信原始图标保留;只有用户选择 replace-generic 或手动覆盖时才替换。
适用场景与注意¶
适合在 DSH 0.1.x 中使用 settings.section 或 sidebar.footer.action 贡献,并希望减少统一齿轮回退的场景。
需要注意:
- 检测只读取 DSH slot metadata 和两个渲染 UI 表面;不检查用户文件或其他插件 bundles。
- DSH 0.1.x 尚未暴露公开 icon resolver,因此兼容层 intentionally narrow and reversible。
- sidebar fallback fingerprints 固定到上游修订版本,可能需随插件 DOM 变化定期更新。
- 插件以当前
dsh进程权限运行;安装前应检查源码、依赖与 MIT 许可证。
链接¶
GitHub:
https://github.com/yzke/dsh-icon-theme