DSH 插件介紹:Agent Shell 與 Shell 抽屜

前言

DeepSeek Harness (DSH) 作爲插件宿主,爲開發者提供了擴展能力。在開發智能體或調試流程時,直接執行 Shell 命令是常見需求。DSH 本身不提供原生終端,傳統的做法往往需要通過外部工具或手動記錄。dsh-agent-shell 插件通過註冊工具並構建 UI 抽屜,解決了命令執行與結果展示分離的問題。

插件介紹

這是由 PastSheep 維護的一個客戶端插件。它爲 DSH 提供了 bash 和 cmd 命令執行工具,並將外部 pwsh 的執行過程通過迴環 RPC 通道實時推送到右側的 Shell 抽屜。該插件不依賴複雜的構建流程,直接通過 npm 或 file 協議加載即可使用。

核心功能

1. Bash / Cmd 工具

插件註冊了兩個工具:
* bash:使用 Git Bash (D:\Program Files\Git\bin\bash.exe) 執行命令,支持 POSIX 語法。配置項包括 workdir(工作目錄)、timeoutMs(超時時間)和 maxOutputBytes(輸出字節上限)。超出字節上限的輸出會被截斷並寫入溢出文件。
* cmd:調用 cmd.exe /d /s /c 執行命令。
* pwsh 觀察:通過監聽 tools/result 事件,將外部 pwsh 工具的執行記錄統一推送到抽屜中。

2. Shell 抽屜

插件通過前端代碼在 DSH 右側掛載一個抽屜組件。該抽屜默認摺疊,每條執行記錄包含退出碼、耗時、stdout 和 stderr。
* 用戶可以通過 shell_drawer 工具控制抽屜狀態(list, open, close, toggle, remove, clear)。
* 前端通過輪詢 /agent-shell RPC 通道獲取增量記錄。

3. 架構與通信

  • Node 半:在 lib/index.js 中註冊工具,建立 /agent-shell RPC 通道,並維護一個內存環形緩衝區(最多 200 條記錄)。
  • 瀏覽器半:在 lib/client.js 中通過 slots.inject('shell.overlay') 掛載。它會優先嚐試註冊進 dockPanels(需要配合 dsh-right-drawer),如果找不到則降級爲獨立覆蓋層。
  • 通信機制:使用 connection.rpc.call('/agent-shell', ...),僅限本機 loopback 權限提供記錄流。

安裝與啓用

在安裝此插件前,需要確保宿主環境已安裝 dsh-right-drawer。

  1. 安裝依賴的抽屜宿主:
    dsh plugin --profile web add @deepseek-ai/dsh-right-drawer
  1. 安裝插件:
    dsh plugin --profile web add @deepseek-ai/dsh-agent-shell
  1. 重啓 DeepSeek Harness。安裝後,右側會出現一個豎排的「Shell」標籤,點擊展開抽屜即可使用。

  2. 卸載:

    dsh plugin --profile web remove @deepseek-ai/dsh-agent-shell

典型用法

執行 Bash 命令

在 DSH 對話中直接調用 bash 工具:

// 示例:在指定目錄執行命令
{
  "tool": "bash",
  "arguments": {
    "workdir": "C:/project",
    "command": "ls -la"
  }
}

執行 Cmd 命令

使用 Windows 原生命令:

{
  "tool": "cmd",
  "arguments": {
    "command": "dir /s"
  }
}

控制 Shell 抽屜

通過工具手動操作抽屜內容:

// 查看列表
{
  "tool": "shell_drawer",
  "arguments": { "action": "list" }
}
// 展開指定 ID 的記錄
{
  "tool": "shell_drawer",
  "arguments": { "action": "open", "id": 1 }
}

注意事項

  • 依賴檢查:插件依賴 @deepseek-ai/dsh-tools 及相關 UI 插件,確保版本兼容。
  • 權限與安全:插件以當前 dsh 進程的權限運行 Shell 命令,請確保在使用前檢查源碼與許可證。
  • 環境要求:bash 工具依賴系統已安裝 Git Bash;cmd 工具依賴 Windows 環境。

總結

dsh-agent-shell 插件爲 DeepSeek Harness 提供了輕量級的命令執行能力與可視化的結果反饋機制。通過迴環 RPC 和環形緩衝設計,它實現了本地命令流的無縫接入。對於需要在 DSH 中進行自動化測試或調試的開發者,這是一個實用的工具集。

插件目錄:https://www.skillhub.cn/plugins/PastSheep/dsh-agent-shell
源碼倉庫:https://github.com/PastSheep/dsh-agent-shell

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

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

小夜