前言¶
DeepSeek Harness (DSH) 在渲染助手回覆時使用 Markdown,代碼塊通常只有一個操作入口:複製。當回覆中包含想要執行的命令(如 git 序列、pnpm 腳本、診斷腳本)時,用戶需要複製、切換終端、粘貼並運行,流程割裂。
dsh-run-button 爲這類代碼塊增加了缺失的操作入口。這是一個由 EdwardXiao-bit 維護的客戶端插件(MIT 許可證),它爲 DSH 回覆中的 Shell 代碼塊添加了運行按鈕。點擊後,命令將在宿主機上執行,輸出實時流式傳輸至右下角的浮動 Dock(默認模式)或底部工作臺面板。
插件簡介¶
插件的核心功能是將 Shell 代碼塊從“靜態文本”變爲“可執行命令”。它支持 bash、sh、zsh、powershell、cmd 等多種命令行語言。執行時,命令會繼承當前會話的工作區目錄和沙盒策略,安全性基於用戶發起的請求和迴環 RPC 通道。目前該插件在 GitHub 上有 1 個 Star。
安裝方式¶
插件已發佈在 npm 並收錄於 DSH 社區目錄。
1. 使用 DSH CLI 安裝(推薦)
dsh plugin --profile web add dsh-run-button
此命令會從 npm 註冊表解析依賴,寫入配置並掛載插件。卸載時使用 dsh plugin --profile web remove dsh-run-button。
2. 從源碼安裝
若需從源碼安裝,需手動編輯 profile 配置,因爲單純的 npm install 無法讓 DSH 加載插件:
{
"dependencies": { "dsh-run-button": "^0.1.0" },
"dsh": { "profile": { "bundles": ["dsh-run-button"] } }
}
使用方法¶
- 在 DSH 回覆中找到 Shell 代碼塊,點擊右上角的
▶ Run按鈕執行命令。 - 輸出默認顯示在右下角的浮動 Dock 卡片中。每條運行結果對應一張卡片,支持停止、摺疊或關閉。
- 點擊
cwd按鈕(位於 Run 按鈕旁)可以臨時覆蓋該代碼塊的工作目錄,該目錄會被記住。 - 在運行條中切換輸出模式:
- Dock(默認):浮動卡片堆疊在右下角。
- Panel:每個運行結果生成一個底部工作臺標籤頁(需安裝
dsh-better-sidebar)。 - Off:不顯示輸出,僅保留狀態反饋。
- 長時間運行的命令可通過芯片、Dock 卡片或工作臺標籤頁上的停止按鈕終止。
技術細節與限制¶
- 輸出限制:每個流輸出被限制在 256 KB,防止大文件阻塞。
- 安全性:命令完全按照編寫內容執行,不進行任何插值。RPC 通道爲迴環地址,且需經過連接層認證。
- 依賴關係:Panel 模式依賴可選的
dsh-better-sidebar插件。若該插件未安裝,Panel 模式將自動禁用,默認回退到 Dock 模式。
總結¶
dsh-run-button 將 Shell 代碼塊從“靜態文本”變爲“可執行命令”,顯著提升了在 DSH 對話流中快速驗證命令、執行診斷腳本的效率。
- 插件目錄:https://www.skillhub.cn/plugins/EdwardXiao-bit/dsh-run-button
- GitHub 地址:https://github.com/EdwardXiao-bit/dsh-run-button