前言¶
DeepSeek Harness (DSH) 是一個以插件爲核心組件的 Web GUI 環境。在開發涉及視覺輸出的智能體時,往往需要在節點畫布中直接生成圖片或視頻。dsh-vidgen-plugin 是爲 DSH 開發的官方風格插件,旨在解決多平臺模型調用、節點化工作流管理以及 Agent 工具集成的問題。
該插件提供了一套完整的視頻與圖片生成解決方案,包括 ComfyUI 風格的節點畫布、多提供者配置管理,以及可直接供 Agent 調用的工具接口。
安裝與啓用¶
插件通過 pnpm link 的方式安裝到當前 DSH Profile 中。
# 1. 克隆倉庫
git clone https://github.com/xsluck/dsh-vidgen-plugin.git
cd dsh-vidgen-plugin
# 2. 進入 DSH Web Profile 目錄
cd ~/.dsh/profiles/web
# 3. 修改 package.json,添加依賴與 Bundle 配置
# 在 dependencies 中添加:
# "dsh-vidgen-plugin": "link:/絕對路徑/到/dsh-vidgen-plugin"
# 在 dsh.profile.bundles 中添加:
# ["dsh-vidgen-plugin"]
# 4. 安裝
pnpm install
# 5. 重啓 DSH
npx @deepseek-ai/dsh web
重啓後,側欄會出現 🎬 入口,設置頁會出現「視頻生成」卡片,Agent 工具列表中會出現三個新工具。
核心功能¶
節點畫布工作室¶
插件在 DSH Web 界面中提供了一個基於節點的畫布工作室,支持以下節點類型:
* 文生圖
* 圖生圖
* 圖源
* 文生視頻
* 圖生視頻
* 關鍵幀
節點連線規則:
* 拖拽右側圓點連接節點。
* 當輸入圖源爲 1 張 時,節點行爲爲圖生圖。
* 當輸入圖源爲 2 張及以上 時,節點行爲爲多圖合成(通過 extra_body.image 數組傳遞)。
關鍵幀:
* 支持 2 到 3 張關鍵幀圖片。
* 實測 3 張關鍵幀可成功出片。
畫布快照:
* 新建畫布會自動存檔。
* 支持手動保存、加載、刪除快照。
* 快照數量限制爲 20 份。
操作:
* 本地圖片上傳限制爲 ≤ 8MB。
* 支持縮放、平移、全屏懸浮以及點擊放大查看。
* 支持單節點運行或「運行全部」。
多提供者設置¶
插件允許爲視頻和圖片生成分別配置獨立的提供者列表,每個列表可包含多個平臺,並支持設爲當前提供者。
配置流程:
* 在設置頁的「視頻生成」卡片中管理提供者。
* 新建、保存、刪除、加載提供者,或測試連接。
* 「獲取模型」功能:通過 apiUrl 和 Key 請求 GET {apiUrl}/models,自動過濾出視頻或圖片模型,並將列表第一個自動填入默認模型。
配置優先級:
用戶提供者 > settings.yaml (dsh-video / dsh-imagegen) > draw-config.json > 系統兜底。
配置文件位置:
~/.dsh/vidgen-config.json (優先) 或系統臨時目錄。
Agent 工具¶
插件暴露了三個 Agent 工具,可直接在 DSH 智能體代碼中調用:
list_video_models:列出當前視頻提供者的可用視頻模型。generate_video:mode='keyframes'+image_urls:關鍵幀模式。image_url:圖生視頻模式。wait=true:啓用輪詢,直到任務完成並返回 mp4 URL。
poll_video_task:根據task_id或video_id查詢任務狀態。
API 兼容¶
插件提供了 OpenAI 風格的接口兼容性,支持 /videos、/images/generations、/models。
視頻輪詢請求會發送至 {base}/agnesapi?video_id=…&model_name=…。
數據與文件位置¶
插件運行產生的數據存儲在以下路徑:
- 配置文件:
~/.dsh/vidgen-config.json - 畫布快照:
~/.dsh/vidgen-snapshots.json - 生成歷史:
~/.dsh/vidgen-history.json - 當前畫布:
~/.dsh/vidgen-graph.json
注意:Base64 編碼僅支持圖生圖鏈路。
開發與結構¶
插件採用官方插件包形式組織,主要包含以下部分:
- Host (
lib/index.js):註冊tools、webServer、settings、shell,暴露 24 個 RPC 和 3 個 Agent 工具,服務端口爲POST /dsh-vidgen/rpc。 - Client (
lib/client.js):掛載側欄入口、設置卡、工作室 overlay 和工具面板 slots。 - Scripts (
scripts/*.js):子進程輔助腳本,負責配置讀寫、畫布快照、歷史記錄、HTTP 請求和清理,無第三方依賴。
開發注意事項:
* 修改 lib/ 或 scripts/ 後必須重啓 DSH 纔會生效。
* 語法檢查命令:npm test。
卸載¶
若需下線插件,請移除 package.json 中的相關配置並重啓:
cd ~/.dsh/profiles/web
# 移除 dependencies 中的 dsh-vidgen-plugin
# 移除 dsh.profile.bundles 中的 dsh-vidgen-plugin
pnpm install
npx @deepseek-ai/dsh web
結語¶
dsh-vidgen-plugin 爲 DSH 環境提供了一套完整的視頻與圖片生成解決方案。它通過節點畫布實現了類似 ComfyUI 的可視化工作流,同時通過 Agent 工具和 OpenAI 兼容接口降低了開發門檻。開發者可以根據自身需求選擇配置提供者或直接通過代碼調用。