Preface¶
The web interface of DeepSeek Harness (DSH) is composed of multiple interface plugins, and the text styles in different areas may come from different plugins. For users who find reading small text difficult, simply zooming in on the page is not always sufficient; individual areas may also need separate adjustments.
dsh-ui-font is a DSH community plugin used to change fonts and adjust font sizes in the DSH web interface. It consolidates font, font size, area offset, and shortcut key settings into a single configuration entry, and automatically discovers the styles and descriptions of DSH interface plugins at runtime without bundling font files.
Repository: https://github.com/warmwine/dsh-ui-font
License: MIT
What Is This¶
dsh-ui-font is a font and font size settings plugin for the DSH Web GUI.
It primarily addresses three types of issues:
- You want to replace regular text or code areas with fonts already installed on your system;
- You want to globally increase the font size of the DSH web interface;
- When a specific area is too large or too small, you want to adjust only that area without affecting others.
Core Features¶
Font Selection¶
The plugin supports selecting separate fonts for regular text and code from the fonts installed on your system.
Global Font Size¶
The global font size is controlled by a slider with a range of -3 to +20 pixels, taking effect immediately upon adjustment.
Crosshair Selection¶
The settings page provides an “Select Area” entry, and you can also use a custom shortcut key to summon a red crosshair. Move the mouse to select the target area, then click − or + to adjust the font size of that area.
Crosshair selection determines the adjustment method based on the font size declaration point:
- If the target text is defined by design tokens, it adjusts according to the design tokens;
- If the target text comes from a single CSS rule, it adjusts according to that rule;
- Otherwise, it falls back to the global offset.
Area Fine-Tuning¶
The plugin provides an “Fine-Tune by Interface Area” list, allowing individual adjustments to specific plugin areas.
The final effect of a specific area is the result of combining that area’s individual offset with the global offset.
Shortcut Keys¶
The plugin provides three freely recordable shortcut key slots:
- UI Capture;
- Font Size Increase;
- Font Size Decrease.
When recording shortcut keys, the combination must include at least one of Ctrl, Alt, or Meta. For normal use, it is recommended to close the settings panel before pressing the shortcut keys.
Settings Persistence¶
Settings are written to the DSH server’s settings.yaml. In offline or legacy version scenarios, the plugin falls back to using localStorage.
Earlier versions (< 0.9.3) used the localStorage key dsh.uiFont.v1; upon the first opening of the Web GUI after upgrading, this value will be migrated to the server. The plugin writes settings to both settings.yaml and localStorage each time; once the server is available, the server-side value takes precedence.
Installation and Activation¶
Install the remote repository version:
dsh plugin --profile web add github:warmwine/dsh-ui-font
For local development, it can be installed from the repository path:
dsh plugin --profile web add link:<path to this repository>
After installation or uninstallation, dsh web needs to be restarted.
Uninstallation command:
dsh plugin --profile web remove dsh-ui-font
Typical Usage¶
Here is a typical operating sequence:
-
Install the plugin and restart
dsh web. -
Open the DSH settings page and navigate to the font-related settings.
-
First, use the global slider to adjust the overall font size.
-
If a specific area is still unsatisfactory, click “Select Area” or press the recorded UI Capture shortcut key to summon the red crosshair.
-
Move the crosshair to the target area and click
−or+to adjust. -
In the “Fine-Tune by Interface Area” list, individually adjust the corresponding plugin area.
-
If quick operations are needed, record shortcuts for UI Capture, Font Size Increase, and Font Size Decrease on the settings page.
Technical Boundaries¶
The host side uses Node built-in modules; the browser side relies on the platform-provided react, with the peerDependencies declared in package.json as:
"react": "^18.2.0"
The plugin does not bundle font files and automatically discovers the styles and descriptions of DSH interface plugins at runtime.
Notes and Limitations¶
- The xterm web terminal of
dsh-sshuses built-in fonts and does not participate in scaling. - When a theme plugin (such as qq98) is active, it takes over the font variables, and the theme ultimately takes precedence.
- Content rendered by iframes in the web preview panel is not part of this page’s elements and cannot be selected with the crosshair.
- The settings panel itself will block the interface behind it; the normal usage is to close the settings panel before pressing shortcut keys.
- When focus is inside an iframe such as a file preview, key presses may not reach the main page; click on the main interface first before pressing the keys.
- After uninstalling the plugin, the
ui-fontsetting key will remain insettings.yamland needs to be manually deleted.
Suitable Scenarios¶
This plugin is suitable for the following situations:
- You want to replace fonts in the DSH Web interface with fonts already installed on your system;
- You want to globally increase the font size of the DSH web interface;
- You need to adjust a specific plugin area individually rather than having the entire page change together;
- You want to quickly increase or decrease font size via shortcut keys instead of opening the settings page each time.
DSH plugins run within the current DSH runtime environment. Before installation, it is recommended to review the repository source code and the MIT license, and confirm that the plugin’s behavior aligns with your current usage scenario.
Conclusion¶
dsh-ui-font consolidates the font, font size, area offset, and shortcut key settings of the DSH Web interface into a set of configurable options, and uses crosshair selection to reduce the cost of “not knowing which setting to change.” Its settings are stored in the DSH server’s settings.yaml, while also retaining a localStorage fallback path for offline and legacy version scenarios.
GitHub: https://github.com/warmwine/dsh-ui-font