dsh-font-plugin
DeepSeek Harness Font Plugin, DSH 字体插件
- Stars
- 1
- Language
- JavaScript
- Created
- Aug 27, 2026
- Updated
- Aug 27, 2026
Introduction
dsh-font-plugin
A DeepSeek Harness (dsh) plugin: font family / ligatures / weight / size controls for the Web UI, rendered in Settings → Plugins → Plugin configuration with the official card style.
Features
- Font Family : Editor — overrides
--dsw-font-family(UI + Markdown body text) - Font Family : Code — overrides
--ds-font-family-code(code blocks / commands / logs) - Font Ligatures —
Auto(theme default) /On/Off - Font Weight — whole number
100–900for regular text layers (headings/bold keep theme weights); empty = theme default - Font Size — base px (whole number,
8–40);16= theme default, all text layers scale proportionally and round up
Defaults mirror the official @deepseek-ai/dsh-client-ui-theme base stylesheet. Changes apply after Save and persist in the dsh settings document ($DSH_HOME/settings.yaml, namespace dsh-font). UI copy is localized (zh / en) through the official ctx.locale mechanism.
Install
From npm
dsh plugin --profile web add dsh-font-plugin
From GitHub
dsh plugin --profile web add github:wtksana/dsh-font-plugin
Prebuilt bundles (lib/) are committed, so no build step or prepare authorization is required at install time.
Local development
dsh plugin --profile web add ./path/to/dsh-font-plugin
Then start dsh (restart required after bundle edits, since client bundle revisions are computed at boot):
dsh --profile web
Configuration
Open Settings → Plugins → Plugin configuration in the Web UI, expand the dsh-font-plugin card, edit the fields and press Save.
Or edit $DSH_HOME/settings.yaml directly:
dsh-font:
editorFont: MiSans
codeFont: MiSans
ligatures: auto
weight: 0
basePx: 16
weight: 0 means theme default. dsh plugin remove dsh-font-plugin uninstalls both the package and its patch layer.
Development notes
This package is a dual-face plugin:
lib/index.js— host half: registers thedsh-fontsettings namespace with a Schemastery schema (ctx.settings.register).lib/client.js— browser half:dsh.clientbundle (__ModuleLoader__.load+exports.apply), renders the card intosettings.plugin.itemkeyed by the namespace, and applies fonts via CSS variables with!important(the ui-theme base stylesheet may inject after our style tag).
License
MIT