DeepSHPlugins
dsh-icon-theme 项目预览
GITHUB / COMMUNITY PROJECT

dsh-icon-theme

换皮肤色TypeScriptMIT

为 DSH 设置和侧边栏自动分配并支持自定义的 Fluent 风格图标,离线内置 SVG,默认保留插件原图标。

2 Starsyzke 更新时间 2026-08-30
访问 GitHub 仓库
dsh-icon-theme 项目预览
dsh-icon-theme 界面截图dsh-icon-theme 界面截图

项目介绍

中文

为 DSH 设置和侧边栏自动分配并支持自定义的 Fluent 风格图标,离线内置 SVG,默认保留插件原图标。

English

Automatic and user-customizable Fluent-style icons for DSH Settings and sidebar actions, with offline SVG packs and original-icon preservation.

项目信息与收录信号

快照 2026-09-11
作者 / 组织
yzke
仓库
yzke/dsh-icon-theme
GitHub Stars
2
Forks
1
开发语言
TypeScript
许可证
MIT
最近推送
2026-08-30
Manifest
数据中检测到声明

公开仓库不自动等于可商用;许可证与当前兼容性以原项目文档为准。Manifest 和数据评分不构成安装安全认证。

数据评分

63/ 100
维护活跃
93
文档与实用信息
85
生态关注度
23
安装便捷信号
100
项目声明信号
100

近 12 天仍在更新;README 含完整安装与使用说明;关注度尚低(2)。

评分来自已有数据快照的五维模型,仅作浏览参考,不是实际使用评测或安全检测结论。

安装与使用

所有项目资料与许可均以对应 GitHub 仓库为准。

dsh plugin --profile web add dsh-icon-theme

复制命令不会自动执行。请先阅读仓库文档,确认环境要求与许可证。

项目截图

仓库 README

GitHub 原文

已保存的仓库文档快照;文档抓取时间未记录,可能与上方目录介绍处于不同版本。安装前请核对当前仓库说明。

dsh-icon-theme

English | 简体中文

Automatic, coherent, and user-customizable icons for DeepSeek Harness Settings and sidebar actions.

Settings overview

_Screenshots use the Chinese locale; the plugin ships equivalent English labels._

Why this plugin

DSH 0.1.x settings contributions expose stable IDs and labels, but not an icon field. As a result, many third-party pages fall back to the same gear. dsh-icon-theme discovers the live slot ledger, preserves trustworthy original icons, fills recognizable gaps with a small Fluent-style pack, and lets the user override every supported target.

  • Discovers live winning settings.section and sidebar.footer.action contributions generically. Audited per-plugin records are used only when a sidebar is partially rendered and cannot be correlated by order.
  • Stores choices by stable key, such as settings.section:market, never by translated labels or DOM position.
  • Ships 50 curated Fluent UI 16 Regular glyphs, 70 official DSH UI glyphs, and the audited monochrome dsh-market glyph (121 total).
  • Uses no icon CDN, webfont, Iconify API, GitHub request, or package scanning at runtime.
  • Restores every host SVG and owned DOM marker on unload or hot reload.
  • Reports non-rendered contributions and non-icon cards instead of pretending they were changed.
  • Falls back to the Settings gear when a target has neither a trustworthy match nor an original icon.

Install

dsh plugin --profile web add dsh-icon-theme

Restart dsh web, then open Settings → Icons.

To install from a source checkout instead:

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"

Supported 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. This includes the source-only dsh-v0.1.2-alpha.1 GitHub preview. Node.js 22 or newer is required for source builds.

Uninstall

dsh plugin --profile web remove dsh-icon-theme

Restart dsh web. The plugin restores every host SVG and removes all owned DOM markers and styles on unload.

Use

The page lists every discovered target, its stable key, its compatibility state, and the source of the current icon. Search by feature name, ID, or icon; filter Settings/sidebar/unrecognized/customized entries; choose a glyph; or restore one/all targets to automatic behavior.

Icon picker

Resolution is deterministic:

  1. User override.
  2. Audited, bundled plugin glyph.
  3. Trustworthy DSH/plugin original.
  4. Exact stable-ID preset.
  5. Unambiguous stable-ID inference.
  6. Existing host fallback, or Settings gear when no original exists.

Localized labels are display and search text only. They never decide a persisted mapping.

Sidebar behavior

StateBehavior
Rendered icon actionChangeable; the original is preserved by default.
Registered but not renderedListed as “can preset”; the override applies when it appears.
Non-icon cardReported but deliberately left unchanged.
Unknown or changed DOMLeft untouched unless a unique audited compatibility record exists.

The compatibility layer is intentionally narrow and reversible because DSH 0.1.x does not yet expose a public icon resolver. See the design note for the contract and upstream direction.

When dsh-better-sidebar is installed, its own Settings row icon is treated as a trusted original and preserved by default. It is replaced only when the user chooses replace-generic (or a manual override).

Ecosystem checks

Compatibility fixtures are pinned to real open-source registration excerpts, including dsh-full-remote, dsh-context, dsh-openpencil, dsh-approve-for-me, and dsh-composer-polish. They prove that an unknown Settings section is discovered generically, while contributions to unrelated surfaces are not misidentified. Details and pinned commits are in ecosystem compatibility. The sidebar fallback fingerprints are also pinned to upstream revisions and may need periodic updates if those plugins change their DOM.

Development and release gate

npm ci
npm run qa
npm run test:web
npm pack --dry-run

For the optional live-host smoke test:

DSH_E2E_URL=http://127.0.0.1:3080 npm run test:web -- -t @real-dsh

The full testing contract is documented in TESTING.md. Icon sources and licenses are recorded in THIRD_PARTY_NOTICES.md.

Privacy and security

Detection reads only DSH slot metadata and the two rendered UI surfaces. The plugin does not inspect user files or other plugins' bundles. Settings use a fixed-namespace, same-origin Host endpoint that accepts only overrides and originalPolicy; it cannot read or mutate another plugin's namespace.

MIT licensed.

使用前核对

安装步骤、兼容版本与授权范围以原项目当前文档为准。Stars 和评分是快照中的导航信号。

安装与排错 · 项目问题反馈

同类项目