前言

DSH(DeepSeek Harness)采用插件化架构,允许开发者通过配置文件和插件扩展功能。在视觉体验上,开发者可能需要更符合习惯的界面配色。One Dark Pro 是一款在 VSCode 端广泛使用的主题,本插件旨在将 One Dark Pro 的配色方案引入 DSH 环境,并将原本有限的外观选项扩展为浅色、深色、跟随系统、One Dark Pro 四宫格选择。

插件定位

  • 名称:theheartfickle/dsh-one-dark-pro
  • 维护者:TheHeartFickle
  • 类别:趣味换装
  • 功能:注册 One Dark Pro 配色,持久化外观偏好设置。
  • 许可证:MIT

安装与启用

安装该插件需要手动修改 profile 的 package.json 并重启 host。

  1. 在插件仓库目录执行依赖安装命令:
    pnpm install
  1. 在 DSH profile 的 package.json 中添加依赖与 bundles 配置。注意 link: 需指向本插件在磁盘上的绝对路径:
    {
      "dependencies": {
        "@the-heart-fickle/dsh-one-dark-pro": "link:<本插件绝对路径>"
      },
      "dsh": {
        "profile": {
          "bundles": [
            "...",
            "@the-heart-fickle/dsh-one-dark-pro"
          ]
        }
      }
    }
  1. 执行上述配置后,重启 dsh web。由于 host 半边包含核心逻辑代码,必须重启 host 才能生效。

典型用法

安装并重启后,外观设置已集成 One Dark Pro 选项。

  1. 打开 设置 → 常规 → 外观。
  2. 在主题列表中点选「One Dark Pro」应用。
  3. 随后可点击「浅色」、「深色」、「跟随系统」进行快速切换。
  4. 选中的主题偏好会被持久化保存至 DSH host 的 ~/.dsh/settings.yaml 文件中,具体字段为 dsh-one-dark-pro.preference,重启后保持。

技术说明

  • Host 半边(lib/index.js):
    • 注册 dsh-one-dark-pro settings 命名空间。
    • 暴露 /api/one-dark-pro/preference 路由,用于处理主题偏好请求。
  • Client 半边(lib/client.js):
    • 注册 One Dark Pro 主题。
    • 使用 priority: -1 覆盖 shadow 自带的 settings.general.item[appearance] 行。
    • 将主题渲染为四宫格,固定尺寸,选中态使用品牌色边框。
    • 监听 theme/change 事件以刷新界面。
  • 图标设计:One Dark Pro 的图标取自官方 icon.svg,表现为三条 3D 轨道带路径加上实心原子核圆点(24px)。

注意事项

  • 本插件以 DSH 进程的权限运行,安装前建议检查源码与许可证。
  • 插件的 cordis.patch.yml 会通过 dsh.bundle.patch 自动应用,无需在 profile 的 cordis.patch.yml 中手动添加挂载行。
  • 安装后务必重启 dsh web,否则 host 半边的路由注册与命名空间配置无法生效。

总结

dsh-one-dark-pro 为 DSH 环境带来了 One Dark Pro 配色,并丰富了外观切换的交互方式。通过持久化配置,开发者可以稳定地使用自己喜欢的视觉风格。