DeepSeek Harness Plugin Hub

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

探索

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

社区

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

相关链接

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

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

Font Settings — DeepSeek Harness 插件(DSH Plugin)
← Plugins
F

@styiqiu/dsh-font-settings

Font Settings

将 DeepSeek Harness General 的通用字体设置替换为可搜索的字体选择器,分别用于文本、代码和终端,并可列出计算机上已安装的字体。

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

npx -y @deepseek-ai/dsh plugin --profile web add github:YiQiuAcc/dsh-font-settings#b62fa19096457c93301bfd60cd2c67551381928a
README兼容性版本

兼容性与来源证明

Font Settings 以 @styiqiu/dsh-font-settings 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

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

版本

0.1.0stable
2026/10/10

相关插件

正在加载相关插件…

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

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

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

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

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

相关插件

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

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profile用于 Agent Teams Remote 和 UI 插件的实验性 Web 配置层Ab Chartdsh-ab-chart带有绘制其调用的浏览器卡片的图表渲染工具,封装在一个可发布的插件包中Client Ui Skill Explorer@linxin666/dsh-client-ui-skill-explorerDSH 技能中心:按来源(bundled / project / user / custom / runtime)浏览已加载的技能,在 Web GUI 面板中启用或禁用、创建和删除技能。

README

dsh-font-settings

English | 中文

A DeepSeek Harness web plugin that replaces the font settings in Settings → General with searchable font pickers: text, code, and terminal fonts are set independently, and the fonts installed on your machine can be listed on request.

The shipped rows ask you to type a comma-separated font name from memory. This plugin shows you the list instead — and draws every candidate in its own face, so you pick by sight.

Features

  • Searchable pickers for the text, code, and terminal font roles. Focus or type to open the list; ↑/↓ move with wrap-around, Enter applies, Escape cancels the edit, a click outside closes it.
  • Every row is drawn in the family it would apply, so a candidate is recognized by how it looks rather than by its name.
  • Free text still works. Anything not in the list can be typed; the harness normalizes it (names are quoted, generic families stay bare) and it becomes the field's value.
  • Load the fonts installed on this machine with one button (Chromium-based browsers expose the list through queryLocalFonts; where it is unsupported or denied, the button says so and everything else keeps working).
  • Font size for every role, next to its font picker.
  • Collapsed by default to a single "Font settings" row with a chevron disclosure, so the General list stays compact. The current text font is summarised on the collapsed row.
  • The system default is always one click away — the first entry in every list clears the override.

Install

The plugin installs as a profile bundle. Use the Web sidebar's Plugins page, or the plugin_manager tool's install_bundle (it requires danger-full-access). The spec can be a git address, a local path, or a registry name:

  • From GitHub: https://github.com/yiqiuacc/dsh-font-settings.git (the manager runs git ls-remote against GitHub before installing; pnpm's github:yiqiuacc/dsh-font-settings shorthand works too).
  • From a local checkout: link:<absolute path to this directory>.
  • From a registry once published: @styiqiu/dsh-font-settings.

Installing enables the bundle by default. Opening Settings → General then shows one "Font settings" row where the built-in font group used to be.

Where the choice is stored

The plugin owns no storage and no stylesheet. Every read and write goes through the harness theme service (ctx.theme), so the shipped machinery does the rest:

  • Persistence — the settings scope stores each list and size; the profile records them as the ui-theme config row of its cordis.patch.yml.
  • First paint — the harness boot script embeds the stored lists into the served index HTML, so a page never flashes the default font before applying yours.
  • Application — the theme presenter writes --dsh-font-family-<role> onto body as inline styles, and the token sheet composes the interface and code stacks from them.

Because both surfaces read one store, this plugin's choices and the built-in font rows are always the same data. (Once installed, the built-in rows are not rendered — they are shadowed, see below.)

How it works

  • client.js is the whole plugin. It registers one entry in the General section's item slot using the built-in entry's id at a lower priority, which shadows that entry: a list slot renders one row per id and the lowest priority wins. The group replaces the built-in font rows rather than sitting beside them.
  • The theme service is taken through a scoped injection (ctx.inject(['theme'], …)). Where that service is absent, the plugin registers nothing at all: the built-in font settings keep their place and the plugin is simply inert. The outer plugin never waits on the service, so a composition without it still boots.
  • index.js is an empty mount shell (export function apply() {}). A profile bundle needs a mountable Host plugin for the Loader row to exist, and the browser bundle is discovered from that live entry — but this plugin has no Host-side behavior left.
  • No build step and no dependencies: plain ES modules, with React supplied by the client module loader.

Compatibility

  • DeepSeek Harness 0.2.x web (and Desktop, which uses the same web profile template).
  • The local-font button needs a Chromium-based browser. Everything else is engine-neutral.
  • ctx.theme is a pre-stable API: the harness states that public APIs can change, so a harness upgrade may require updating this plugin.

Known limitations

  • The group sits above "Appearance". Shadowing requires a lower slot priority, and a list slot sorts by priority, so the group renders first in the General section. This cannot be avoided while replacing the built-in rows.
  • It depends on the built-in entry id font-size. If a future harness renames that entry, the shadow stops applying and this group renders beside the built-in font rows instead of replacing them — duplicated controls, no crash and no error.
  • The roles are independent. There is no "also replace the monospace font" switch: the code and terminal roles have their own pickers.
  • No separate preview block — each list row is already drawn in its own face.
  • No font-size formatting beyond the harness ranges (text 10–22, code 10–16, terminal 10–20 px); the steppers clamp to them.

Development

There is nothing to build and nothing to install.

  • Edit client.js and reload the page — the client bundle is fetched per page load.
  • Only a change to index.js (the mount shell) needs a server restart.
  • README.zh.md is the Chinese counterpart of this file.

License

MIT