前言¶
在 DeepSeek Harness (DSH) Web 界面中,開發者通常需要更直觀的命令行交互能力。官方 UI 目前缺乏原生的終端視圖,導致在 Web 環境下進行 Shell 操作時體驗受限。Relay DSH Terminal Plugin 通過插件系統,在 DSH Web UI 的底部提供了一個基於 xterm 的終端面板,解決了這一缺失。
插件簡介¶
Relay DSH Terminal Plugin 是一個提供程序無關的交互式終端底部視圖插件,專爲 DeepSeek Harness Workbench 設計。該插件由用戶 yangbobo2021 維護,開源協議爲 MIT。
它的核心作用是:爲官方 DSH Web UI 增加一個基於瀏覽器的終端顯示層,包括有界的歷史記錄滾動,並提供一個公共的提供程序註冊表,用於連接底層的執行後端。
核心功能¶
該插件提供以下能力:
1. 在官方 DSH Web UI 底部添加基於 xterm 的終端面板。
2. 提供瀏覽器終端顯示界面和有界的歷史記錄滾動。
3. 提供公共的提供程序註冊表,用於執行後端。
4. 支持版本化的 ctx.relayTerminalProviders 註冊表。
5. 提供提供程序無關的進程啓動(spawn)、輸入、調整大小(resize)、輸出和終止(termination)連接邏輯。
6. 與共享的 Workbench shell 進行組合集成。
安裝與啓用¶
該插件依賴 Workbench 插件作爲容器,安裝前需確保 Workbench 已就緒。安裝命令如下:
pnpm dlx @deepseek-ai/dsh@0.1.2-rc.1 plugin --profile web add relay-dsh-plugin-workbench@latest relay-dsh-plugin-terminal@latest
安裝後,重啓 DSH Web 進程以使插件生效。
典型用法¶
- 添加終端面板:通過上述安裝命令,DSH Web 將在 Workbench 底部面板中加載 Terminal 視圖。
- 配置執行後端:爲了啓動實時 Shell,需要安裝一個兼容的執行後端插件(例如
relay-dsh-plugin-codex)。 - 交互操作:在 DSH Web 的 Workbench 面板中切換到 Terminal 視圖,即可開始輸入命令。
適用場景與注意¶
適用場景:
- 需要在官方 DSH Web 中添加終端面板的開發者。
- 希望使用兼容插件(如 Codex)作爲終端傳輸通道的用戶。
- 需要開發新的後端插件,並通過 ctx.relayTerminalProviders 註冊表貢獻終端會話的開發者。
注意事項:
- 提供程序依賴:該插件本身不生成 Shell,必須安裝另一個插件來註冊終端提供程序才能看到實時 Shell。
- 權限配置:如果使用 Codex 提供程序,每個用戶操作的終端必須顯式請求 sandboxPolicy: { type: "dangerFullAccess" },否則啓動失敗。
- 安全風險:終端訪問等同於 DSH 主機用戶的命令執行權限。請僅通過受信任的訪問渠道開放此能力,切勿將其暴露爲 Agent 工具。
總結¶
Relay DSH Terminal Plugin 通過插件化架構填補了 DSH Web UI 在終端交互上的空白。它通過提供程序無關的設計,使得終端功能可以靈活接入不同的執行後端,爲開發者提供了更貼近本地環境的 Web 交互體驗。
- GitHub: https://github.com/yangbobo2021/relay-dsh-plugin-terminal
- Catalog: https://www.skillhub.cn/plugins/yangbobo2021/relay-dsh-plugin-terminal