DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
H

dsh-herdr-themes

Herdr Themes

将内置的 herdr 主题应用于 DSH,并提供主题预览和选择设置页面

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:n0pe-sled/herdr-themes#ed259cff61a1b8a3bbf64adb5836b1be7aa2c75f
README兼容性版本

兼容性与来源证明

Herdr Themes 以 dsh-herdr-themes 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/9/14

版本

0.1.0stable
2026/9/14

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
未声明
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/29
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Better Sidebardsh-better-sidebarBetter Sidebar for DSH — 在一列中提供文件树、编辑器、变更、任务和侧边聊天,并为每个对话单独显示。同时提供服务,供其他插件注册侧边栏标签页和文件查看器。Client Ui Skill Explorer@linxin666/dsh-client-ui-skill-explorerDSH 技能中心:按来源(bundled / project / user / custom / runtime)浏览已加载的技能,在 Web GUI 面板中启用或禁用、创建和删除技能。Client Ui Task Board@linxin666/dsh-client-ui-task-board面向 DSH Web GUI 的主机权威任务面板,支持实际会话执行、主机 cron 调度以及可选的跨平台空闲睡眠保护;以挂载方式提供,无需修改 DSH 源代码。Client Ui Git Graph@linxin666/dsh-client-ui-git-graph外部 dsh Web GUI 插件:空会话 Git 分支选择器和 Git 图,包含实际的主机端 Git 操作与防护,作为 dsh 配置文件包

README

dsh-herdr-themes

Settings → Themes. Adds every theme that ships with herdr (18 built-ins) to the DSH web GUI, and a Themes settings page where each theme shows its real color swatches, previews live on a click, then persists on Use theme. The saved choice re-applies on every reload.

Themes

ThemeScheme
Catppuccin Mocha (herdr's default)dark
Catppuccin Lattelight
Terminal (ANSI approximation)dark
Tokyo Nightdark
Tokyo Night Daylight
Draculadark
Norddark
Gruvboxdark
Gruvbox Lightlight
One Darkdark
One Lightlight
Solarized Darkdark
Solarized Lightlight
Kanagawadark
Kanagawa Lotuslight
Rosé Pinedark
Rosé Pine Dawnlight
Vesperdark

How it works

DSH's own theme system (dsh-client-ui-theme) is the registry. The plugin's browser half registers each herdr palette as a ThemeDefinition (id + color scheme + --dsw-alias-* token overrides) with ctx.theme.register(...), so the theme swatch, tokens, and presenter machinery are all the shipped ones. Herdr palettes map onto DSH tokens by role (accent → brand-primary, text → label-primary, panel background → bg-base, surfaces → bg-layer-, states → state-), and derived values (borders, hovers, scrollbars) are computed with color-mix from the same palette so they stay legible on dark and light bases alike.

Persistence lives in the plugin's own host-side namespace (herdr-themes → themeId, $DSH_HOME/settings.yaml under the shipped file provider). The built-in ui-theme preference schema only accepts light/dark/system, and third-party ids deliberately stay out of it, so the plugin stores its own choice and re-applies it on boot.

One upstream behavior needs a guard. ThemeRuntime re-adopts the durable built-in preference (light/dark/system) whenever the settings document re-derives, which happens on any settings write or push, not just this plugin's. That reset is what made a saved theme vanish right after saving. The plugin therefore treats a saved herdr theme as the user's explicit choice and re-applies it after every such reset; it only suppresses that re-apply for the user's own apply/preview actions, so previewing or saving the system option still works.

Install

git clone https://github.com/n0pe-sled/deepseek-harness-plugins.git ~/dsh-plugins

dsh plugin --profile web add ~/dsh-plugins/herdr-themes
# restart dsh web, then Settings → Themes

Usage

  • Open Settings → Themes. Each card previews the theme's own palette (base, surface, accent, text, red, green, yellow).
  • Click a card to apply it immediately. That's the preview; the whole GUI repaints through the standard theme presenter.
  • Click Use theme to save it (the host confirms the write, so a refused write is reported instead of silently lost). Cancel reverts to the saved choice.
  • Follow the OS returns to the built-in system behavior and clears the saved theme.
  • Closing settings while previewing keeps the preview for the session but does not save it; the saved choice returns on the next reload.

Verification

cd herdr-themes
pnpm install
pnpm build        # builds lib/index.js (node) and lib/client.js (browser bundle)
node tests/smoke.mjs        # node half + catalog + bundle shape
node tests/client-smoke.mjs # real client bundle against a stubbed context

After installing to the profile, a running dsh web serves the bundle and the host registers the namespace (checked on a second instance):

curl -s -o /dev/null -w "%{http_code}\n" \
  http://127.0.0.1:<port>/plugins/dsh-herdr-themes/client.js   # 200

Notes and limits

  • Terminal theme uses a fixed ANSI-looking set. Herdr's Terminal theme references the host terminal's 16 palette colors; the web GUI has no terminal palette, so the plugin substitutes a standard near-black xterm-style approximation (README-documented in src/shared/themes.ts).
  • Remote browsers cannot save. Selection for the session only; the host settings RPC is loopback-only (same rule as the built-in Appearance row).
  • The Appearance row stops overriding a saved theme. Clicking light/dark/system there changes the built-in preference for a moment, but the saved herdr theme is immediately re-applied; the Themes page is where the theme gets cleared (Follow the OS or Use system). The Appearance cubes show the built-in preference, not the active third-party theme.
  • Not every --dsw-* token is overridden. Masks, a few niche button fills, and inverted surfaces stay on the base palette; the overridden set covers surfaces, text, brand, states, markdown, scrollbars, and the sidebar seats.

Files

  • src/shared/themes.ts — herdr palettes (verbatim from herdrdev/herdr/src/app/state.rs) + the DSH token builder.
  • src/index.ts — host half: registers the herdr-themes settings namespace.
  • src/client/index.ts — registers themes, adopts the saved choice, registers the Themes section.
  • src/client/ThemesPanel.tsx — the settings page.