DeepSeek Harness 插件集合

前言

DeepSeek Harness(DSH)的架構強調模塊化和可擴展性。當需要在開發環境中集成多個獨立插件時,開發者通常面臨配置繁瑣、依賴衝突以及維護成本高的問題。dsh-plugins 倉庫提供了一個主入口,將一系列獨立維護的插件聚合管理,並提供了統一的安裝和配置機制。

倉庫定位

dsh-plugins 是 DeepSeek Harness 插件的主倉庫,由用戶 leonardoxr 維護。它協調一個包含多種功能的插件集合,旨在解決開發者在使用 DSH 時遇到的工具鏈割裂問題。

核心功能

該倉庫包含以下核心能力:

  1. 聊天標題與配置:提供語義化、可配置的聊天標題(通過 dsh-auto-chat-titles)。
  2. 側邊欄與擴展:提供側邊欄工作臺和擴展 API(通過 dsh-better-sidebar)。
  3. 使用統計:提供 Claude/Codex 使用界面以及對話統計行(通過 dsh-claude-usage, dsh-codex-usage, dsh-status-bar-config)。
  4. 編碼工具:提供 LSP、ast-grep 和版本化編輯工具(通過 dsh-coding-tools)。
  5. 更新檢測:提供 Claude Code / Codex CLI 的更新檢測和一鍵更新功能(通過 dsh-harness-updater)。
  6. 交互與預覽:支持內聯圖片預覽、剪貼板複製、配置文件插件管理(通過 dsh-image-preview, dsh-plugin-manager)。
  7. 工作區集成:提供只讀工作區/會話 API、通知功能以及工作區 Git 集成(通過 dsh-companion, dsh-workspace-git)。
  8. 移動端支持:提供 DSH web 服務器的原生桌面和移動外殼(通過 dsh-native)。
  9. 代理委派:支持複雜路由的子代理委派(通過 dsh-routed-subagent)。

安裝與啓用

倉庫提供了 dsh-all-in-one 聚合包,可以通過一條命令安裝所有插件。

dsh plugin --profile <name> add dsh-all-in-one

也可以使用 GitHub Release 的 tarball 直接掛載特定版本:

dsh plugin --profile <name> add https://github.com/leonardoxr/dsh-plugins/releases/download/v<version>/dsh-all-in-one-<version>.tgz

典型用法

1. 側邊欄擴展開發

如果使用 dsh-better-sidebar 插件,插件宿主代碼需要注入服務並註冊視圖。示例代碼如下:

inject = ['betterSidebar'];

// 註冊邏輯建議包裹在 ctx.effect() 中以確保 HMR 安全
ctx.effect(() => {
  ctx.betterSidebar.registerTab({
    id: 'my-plugin-tab',
    title: 'My Tab',
    view: MyViewComponent
  });

  return () => {
    ctx.betterSidebar.unregisterTab('my-plugin-tab');
  };
});

2. 插件管理

使用 dsh-plugin-manager 可以通過配置文件對已掛載的插件進行管理。

3. Git 集成

dsh-workspace-git 插件提供工作區級別的 Git 操作支持。

注意事項

  1. 安裝衝突:插件通過 cordis.patch.yml 機制掛載。切勿同時掛載獨立捆綁包和聚合套件,這會導致啓動失敗(報錯 “duplicate loader entry id”)。
  2. 退出選擇:每個插件的退出選擇在聚合中會被保留。
  3. 歷史隔離:此倉庫協調插件集合,但不合並它們的歷史。插件目錄是獨立的 Git 倉庫,可以使用 git -C <plugin> 進行操作。
  4. 開發規範:代碼更改需遵循每個插件的貢獻規則;僅文檔的集合更改可以在此進行。
  5. 運行權限:插件以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證。

總結

dsh-plugins 倉庫通過子模塊和聚合包的形式,爲 DeepSeek Harness 用戶提供了一套標準化的工具集。它將分散的功能整合,降低了配置難度,同時保持了各插件的獨立開發和維護能力。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜