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
C

dsh-columbina-theme-sn

Columbina Theme Sn

以 Columbina 为主题的 DeepSeek Harness 玻璃拟态皮肤——补丁版:主题接管开关、带模糊度/清晰度滑块的背景上传、可编辑的主视觉标题。

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

npx -y @deepseek-ai/dsh plugin --profile web add github:Columbla/dsh-columbina-theme-sn#7bb98839a4a3c0ae78d69824c2282ffbc3fa3cea
README兼容性版本

兼容性与来源证明

Columbina Theme Sn 以 dsh-columbina-theme-sn 发布,当前版本为 0.3.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

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

版本

0.3.1stable
2026/11/5

相关插件

正在加载相关插件…

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

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

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

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

认领这个 Plugin →
报告问题

相关插件

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

Plugin Wallpaper Enginedsh-plugin-wallpaper-engineDSH web GUI 的 Wallpaper Engine 背景:将本地 Wallpaper Engine 壁纸渲染到聊天背景中——通过内置的 WebWallGL 引擎实时渲染 Scene 和 Web,直接播放 Video——配备 iOS 风格的液态玻璃效果,可调节模糊/遮罩/bClaude Designdsh-claude-designDeepSeek Harness 插件:来自 baoyu-design 的 claude-design 技能。智能体将画板画布写入文件,并在本地画布编辑器中打开它们。Claude Slidesdsh-claude-slidesDeepSeek Harness 插件:来自 baoyu-design 的 claude-slides 技能。代理会将可编辑的幻灯片演示文稿写入文件,并在本地幻灯片编辑器中打开。Genui@changfenhuang/dsh-genuiDeepSeek Harness 的 GenUI:通过 ```dsh-ui``` 代码围栏在助手回复中内嵌渲染交互式 UI 组件——布局、图表、绘图、表单、测验、mermaid、3D 场景,以及回传给模型的操作事件循环。随附用于教授代码围栏的主机插件

README

Columbina Theme — Patch Edition

English | 中文

A moonlit silver-blue glassmorphism skin for the DeepSeek Harness Web GUI, with an editable Columbina persona.

This is a patch, not an original theme. The bulk of the code comes from Columbina-sn, the font palette from hyposelen1a, and the host/client structure from berhbro. See Credits.

Disclaimer

This theme is pure CSS rendered by your browser, so the final look depends on your machine:

  • Glass blur (backdrop-filter) needs Chromium 76+ / Edge / Chrome. Old engines, disabled hardware acceleration, some remote desktops, VMs or integrated-GPU drivers fall back to a flat translucent layer — no blur.
  • Gradient text (background-clip:text) may fail to paint on a few GPU drivers. There is a @supports solid-colour fallback, but it looks different.
  • Light/dark follows your system/Harness appearance (prefers-color-scheme and body[data-ds-dark-theme]), not a plugin switch.
  • High DPI (125% / 150% / 200%) changes how the 72px avatar, 1px borders and 2px letter-spacing read; screenshot pixels are not CSS pixels.
  • Wide-gamut displays / colour management make saturated purples such as #78007a look brighter or duller. The "same colour" never is, across screens.
  • Fonts: the hero title prefers Source Han Serif / STSong and falls back to a system serif, which changes metrics.
  • Host wallpaper overlay: if your Harness frontend ships its own full-screen wallpaper layer (e.g. #dsh-wall-layer, opaque, z-index:0), it paints over this theme's z-index:-1 background layer. Since v0.2.2 the theme hides that layer while its own background image is active, and restores it in plain mode.

Screenshots are illustrative, not a guarantee of pixel-identical rendering.

What it is

A DSH theme plugin: palette, background image, glass effects, editable persona and sticker conventions. This patched edition adds a theme-takeover switch, background upload, blur/clarity sliders and an editable hero title.

What's changed

ChangeNotes
Theme takeoverWhen two Columbina themes are installed they fight over the same tokens. Toggle on → the other package (dsh-columbina-theme) is disabled through the host pluginManager; toggle off → it is restored and this theme steps aside. Persisted across restarts.
Background uploadUpload from the panel; files land in Background/ and become the anchor. Hover × on a thumbnail to delete (with confirm). Never overwrites existing files, duplicates get a suffix.
Blur & clarityTwo independent sliders: blur 0–40px (preview while dragging, persist on release; the layer scales by 1 + radius/200 to hide the soft edge) and clarity, the positive phrasing of the veil opacity.
Editable hero titleThe title lives in the state file and is editable from the panel. Empty hero.image hides the avatar entirely, leaving one line of text.
Editable welcome pageTitle and a multi-line body are both editable from the panel (v0.3.0). An empty body renders nothing at all; an empty title falls back to the built-in line.
Font paletteLabel tokens now use hyposelen1a's palette: #78007a light, #acabf2 dark, with secondary/tertiary derived at 0.82 / 0.6 alpha. The hero gradient follows.
Viewer text colourThe plain-text preview ships its own green (#2b8a3e) that a container-level color cannot beat, so it is pinned on pre[class*="_plain"]. Syntax-highlighted spans keep their own colours.
Hero image cacheThe image URL carries ?v=<path> so Cache-Control: max-age=300 cannot serve a stale avatar after a swap.
Host wallpaper overlayHides a host-side full-screen wallpaper layer (#dsh-wall-layer) while the theme background is active (v0.2.2).

Everything else (persona section, sticker manifest, fenced routes, slot registration, glass CSS) is unchanged from upstream.

Install

Requirements: a DSH desktop or web profile that loads client plugins. Verified on DSH 0.2.1-rc.2; the Linux test also passed on 0.2.0-rc.2.

dsh plugin needs pnpm on PATH. If it fails with spawn pnpm ENOENT, run corepack enable pnpm first.

From GitHub:

dsh plugin --profile desktop add github:Columbla/dsh-columbina-theme-sn

From a local folder:

dsh plugin --profile desktop add D:\path\to\dsh-columbina-theme-sn

Refresh the page afterwards (the client half is read on page load). Host-half changes need a plugin row reload or a DSH restart.

dsh plugin --profile desktop remove dsh-columbina-theme-sn

Quick start

  1. A ☾ 哥伦比娅 button appears next to Settings at the sidebar foot; the same editor is also under Settings → 哥伦比娅 · 主题.
  2. Top switches: persona / skin / theme takeover / stickers / proactive stickers / no-repeat.
  3. Background block: upload, pick an anchor, drag blur and clarity.
  4. 恢复默认 refills the default persona draft; 重新载入 discards unsaved edits.

When changes apply

WhatApplies
Persona / switches / background settings (panel save)Immediately, next turn
lib/client.jsPage refresh
lib/index.js, cordis.patch.ymlPlugin row reload or restart
Background/ add / remove / renamePage refresh

State & settings

The state file lives at $DSH_HOME/columbina-theme.json, or ~/.dsh/columbina-theme.json when DSH_HOME is unset.

{
  "persona": "…persona prompt…",
  "enabled": true,
  "theme": true,
  "takeover": true,
  "stickers": true,
  "proactive": true,
  "noRepeat": true,
  "stickerSize": 128,
  "customStickers": [],
  "stickerOverrides": {},
  "hero": { "image": "", "title": "今天的 token,能分我一口吗?", "body": "" },
  "background": {
    "enabled": true, "current": "01-columbina-light.png",
    "rotate": false, "interval": 90, "dim": 0.6, "blur": 0
  },
  "rev": 3
}
FieldMeaning
personaPersona prompt; empty disables injection
enabled / themePersona switch / skin switch
takeovertrue disables the rival theme
stickers / proactive / noRepeatSticker switches — prompt rules only, not message filters
stickerSizeMax sticker edge, 48–320px
customStickers / stickerOverridesUser-added entries / renames and hiding of bundled ones
hero.imageIn-package relative path; empty hides the avatar
hero.titleThe hero line
hero.bodyMulti-line text under the title, rendered with white-space: pre-wrap (max 2000 chars); empty hides the whole block
background.dimVeil opacity 0–0.95, higher is paler; the panel's "clarity" = 1 - dim
background.blurBlur radius 0–40px
revWrite revision; bump it when editing by hand

Writes go through a temp file + rename and carry optimistic concurrency: missing rev → 400 client-outdated, stale → 409 stale.

Theme takeover

Both packages override --dsw-alias-* and paint their own background layer, so only one can win. This fork does not fight over CSS specificity:

const RIVAL_PACKAGE = 'dsh-columbina-theme'          // the other package
const manager = ctx.get('pluginManager')
await manager.setPluginEnabled(rival.entryId, !takeover)
  • On → the rival row is written as disabled: true in the profile's cordis.patch.yml (persistent; it will not come back on reboot).
  • Off → disabled: false is restored and this theme's theme flag is turned off too, so you never end up with no theme at all.
  • 1.5s after host start, the plugin re-checks takeover from the state file.
  • If the rival is absent or pluginManager is not available, the switch only reports a message — it never breaks the plugin.

Background & blur

ControlRangeField
Blur0–40 pxbackground.blur
Clarity5–100%background.dim = 1 - clarity/100
Interval15–600 sbackground.interval (only with rotate)

Upload goes through POST /columbina/backgrounds (data:image/*;base64, ≤ 24MB). File names are stripped of path separators and reserved characters; duplicates get a suffix and existing files are never overwritten. Deletion uses POST /columbina/backgrounds/remove and only accepts names present in the scanned list.

Assets

The repo ships a default asset set so it looks complete out of the box:

PathContent
meme/12 Columbina stickers (WebP) + an optional hero avatar 星眸.png (shipped, not used by default)
Background/3 presets: 01-columbina-light.png, 02-columbina-dark.png, 03-columbina-dusk.jpg

These images are not covered by MIT. Character art and official stickers belong to miHoYo / HoYoverse; the avatar and backgrounds belong to their respective artists. Non-commercial fan use only — open an issue and the assets will be removed on request. See NOTICE.md.

To use your own images: drop them into Background/ and refresh; name sticker files after stickers.json's items[].file; point hero.image at any in-package path (a circular PNG with alpha at 72px works best).

Known issues & fixes

SymptomCauseFix
Hero avatar comes back after a restartBefore the state arrives heroReady defaults to true, so the browser paints a cached avatarFixed: nothing is rendered while heroKey is empty
Swapped avatar still shows the old image/columbina/hero sends Cache-Control: max-age=300Fixed: the URL carries ?v=<path>
Switching the background image or dragging blur does nothingThe host frontend draws its own opaque wallpaper layer (#dsh-wall-layer) above this theme's z-index:-1 layerFixed in v0.2.2: that layer is hidden while the theme background is active
dsh plugin add rejected with Unexpected token '\uFEFF'package.json was saved with a UTF-8 BOM, which JSON.parse rejectsFixed in v0.2.2; .gitattributes keeps it from coming back
Viewer text refused to change colourThe plain preview has its own green #2b8a3e; a container color losesFixed: pinned on pre[class*="_plain"] (!important, plain renderer only)
Two themes fight over coloursBoth override --dsw-alias-*, last one winsTurn on theme takeover
Whole window goes blurrybackdrop-filter on [data-shell-overlay], which covers the frameOnly blur the direct children of floating layers
UI flickers when hovering the send button[data-composer-card] became the containing block of a position:fixed tooltipPaint the blur on ::before
The collapsed right panel stays foggyBlur applied to [data-sidebar-right-panel]Blur the real pane [data-dockkit-pane] instead
Dark hero title turns into a pale blockbackground shorthand resets background-clip:textUse background-image and re-declare the clip
Stickers do not show up paths do not match real files

Full reproduction guide for the "background / blur does nothing" class of bugs: docs/repro-background-not-changing.md (English) · 中文版.

Compatibility

ItemNotes
EngineChromium 76+ (Edge / Chrome / Electron); older engines lack backdrop-filter
GPUWith acceleration off, the glass degrades to a flat translucent layer
DPI100%–200% works; at 125% the 1px borders and 72px avatar read slightly differently
OSVerified on Windows 10/11 and Alibaba Cloud Linux; macOS untested
DSHVerified on 0.2.1-rc.2 and 0.2.0-rc.2; slots/APIs may differ in other versions
FontsThe hero prefers Source Han Serif / STSong, falls back to a system serif

Tests

node test/contrast.mjs      # contrast, CSS-only
node test/client.smoke.mjs  # client half with DOM stubs
node test/host.smoke.mjs    # host half, needs assets

Baseline: contrast 31/31, client 130/130, host 115/115 (host prints SKIP when assets are absent).

Credits

ProjectAuthorUsed for
dsh-columbina-themeColumbina-snThe theme itself: host/client halves, fenced routes, slot registration, persona section, the "moonlit silver-blue" palette and glass CSS, sticker manifest, test suites
dsh-columbina-themehyposelen1aThe font palette (#78007a / #acabf2) and the mask-dim idea; the package that theme takeover disables
dsh-cyrene-themeberhbroOriginal host/client structure, rev optimistic concurrency, slot registration and the test harness

The original MIT notice is kept in LICENSE (Copyright © 2026 berhbro).

Character & art: Columbina and all Genshin Impact character names, likenesses and official stickers belong to miHoYo / HoYoverse and are not covered by MIT. This project is not affiliated with, endorsed by, or sponsored by miHoYo, HoYoverse or DeepSeek. See NOTICE.md.

License

Code is MIT. Image assets are not.

stickers.json
Check missing from /columbina/stickers
Proactive stickers do nothingThe rule lives in the host half; a page refresh is not enoughReload the plugin row or restart DSH
Dark primary text looks faint#acabf2 reaches 5.99:1 on this theme's darker backdrop (below the 7:1 the upstream targets, above AA 4.5:1)Use #c3c2fb instead (7.55:1)
A CJK filename became custom-xxxx on uploadThe request body was not UTF-8, so the name was strippedBrowsers are fine; scripts must send charset=utf-8