前言¶
在 DeepSeek Harness(DSH)裏做資料整理、離線觀看或備份時,經常需要把 YouTube、嗶哩嗶哩、X 等鏈接落到本機文件。直接在終端拼 yt-dlp 參數、自己處理 ffmpeg 和隊列,對日常使用者成本偏高;純 Web 下載站又往往不經過本機、也難以和 Harness 對話聯動。
dsh-video-downloader(維護者 Raymond-Hear)是 DSH 社區目錄中的聯網工具類插件:側欄提供「視頻下載」頁面,貼鏈接後由本機 yt-dlp 解析並下載視頻、音頻、字幕或封面,並在同一界面管理隊列與進度。它本質是 yt-dlp 的圖形前端,解析與落盤仍在你的電腦上完成。
這是什麼¶
- 名稱:dsh-video-downloader(界面顯示「視頻下載器」)
- 倉庫:https://github.com/Raymond-Hear/dsh-video-downloader
- 當前版本(package.json):1.3.0,許可證 MIT
- 定位:貼鏈接 → 解析預覽 → 選模式與畫質 → 入隊下載;支持 YouTube、嗶哩嗶哩、X、TikTok 及 yt-dlp 覆蓋的上千站點(完整列表可用
yt-dlp --list-extractors查看)
README 明確說明:僅供個人學習與備份;項目不託管、不分發內容,請遵守當地法律與平臺服務條款。
核心功能¶
本機依賴與一鍵安裝¶
插件會按順序探測 yt-dlp:插件 bin/ 單文件 → 系統 yt-dlp → python3 -m yt_dlp 等,一般無需手動配 PATH。未安裝時可在頁面一鍵安裝對應系統的官方單文件版(Windows / macOS / Linux);GitHub 超時會嘗試鏡像,再不行退回 pip install。
ffmpeg 用於高清合併、MP3、字幕轉 srt、內嵌字幕、封面轉 jpg。缺 ffmpeg 時不會整頁報錯,會降級到可下載形態並在任務行說明;也可從 PyPI 的 imageio-ffmpeg 靜態構建一鍵裝進插件 bin/,無需 Homebrew 或 sudo。
默認保存目錄爲 ~/Downloads/YT-DLP,可在頁面底部修改。Cookies 支持上傳 cookies.txt,或讀取 Edge / Firefox 的 Cookie(會員、年齡/地區限制等場景常用)。
面板用法¶
界面爲單列卡片(鏈接 → 解析 → 模式/畫質 → 開始)加下載隊列表格。解析後可看標題、UP 主、時長、播放量、封面、可選清晰度與字幕數量;封面支持頁面內試播(臨時直鏈,不落盤)。
四種下載模式:視頻(最佳及 2160p~360p)、僅音頻(MP3)、僅字幕(srt)、僅封面(jpg)。高級選項包括時間片段、播放列表範圍、跳過已下載、代理、限速、併發 1–3、完成後自動打開等;隊列支持暫停/繼續(斷點續傳)、取消、失敗重試,進度含速度與剩餘時間。
對話中的 Agent 工具¶
除面板外,插件向 Agent 註冊 4 個工具,與面板共用同一隊列:
| 工具 | 作用 |
|---|---|
video_probe |
解析鏈接:標題、作者、時長、清晰度、字幕數、是否直播 |
video_download |
加入隊列(video / audio / subs / thumb),立即返回任務編號 |
video_jobs |
查詢進度、成品路徑、錯誤原因 |
video_control |
cancel / pause / resume |
示例說法(README 原文):
幫我把這個視頻的字幕下下來,然後讀一遍整理成中文要點:https://www.youtube.com/watch?v=…
把這個視頻下成 720p,下完告訴我文件在哪。
設計要點:video_download 只返回「任務已創建」,避免長下載導致工具超時;cookies 不走工具參數,使用本機已存憑據。
安裝與啓用¶
安裝需要 Harness 的 danger-full-access 權限,按提示批准一次即可。
方式一(推薦):在 DSH 對話裏發送:
幫我安裝這個插件:https://github.com/Raymond-Hear/dsh-video-downloader
Agent 會調用 plugin_manager 的 install_bundle,將倉庫作爲安裝源裝入當前 profile 並默認啓用。也可使用 github:Raymond-Hear/dsh-video-downloader。裝好後側欄點「視頻下載」;在 設置 → 插件 中應能看到「視頻下載器」。
方式二:若當前 Harness 不接受 git 地址安裝,需先克隆倉庫到本地,再讓 Agent 對克隆目錄的絕對路徑執行 install_bundle,或在插件管理頁選擇該目錄安裝(README 給出的克隆命令見倉庫說明)。
npm 包:維護者發佈並去掉 package.json 中 "private": true 後,可安裝包名 dsh-video-downloader(以倉庫發佈狀態爲準)。
首次打開:無 yt-dlp 時頂部有一鍵安裝;無 ffmpeg 時有黃色提示與一鍵安裝。更新可點頁腳版本號比對 GitHub Release;卸載在插件管理器移除 bundle,已下載文件與 %LOCALAPPDATA%\dsh-ytdlp\(macOS/Linux:~/.local/share/dsh-ytdlp/)中的記錄不會自動刪除。
典型用法¶
- 側欄打開「視頻下載」,粘貼公開視頻鏈接,等待解析。
- 選擇模式(如 1080p 視頻、僅 MP3、僅 srt 字幕)與是否需要播放列表、內嵌字幕等,點擊開始下載。
- 在隊列表格查看進度;需要時在對話中說「暫停剛纔的任務」或調用
video_jobs查路徑。
公開內容在 README 已驗證場景中,YouTube、X、嗶哩嗶哩在無 cookie 下可解析;僅字幕連續測試可能觸發 YouTube 429,宜間隔重試。macOS / Linux 的完整迴歸以 README「已驗證的環境與場景」爲準,勿把未驗證組合當作支持承諾。
適用場景與注意¶
適合:已在用 DSH、希望在本機用 yt-dlp 統一下載多平臺視頻/音頻/字幕,並希望在對話裏讓 Agent _probe、入隊、查進度的人。
注意:
- 插件以當前 DSH 進程權限運行,安裝前請自行查看源碼與 MIT 許可證,確認可接受其讀寫本機下載目錄、cookies 與
dsh-ytdlp狀態目錄等行爲。 - 下載能力來自 yt-dlp(Unlicense);站點解析問題更適合向 yt-dlp 反饋。勿稱本插件爲 yt-dlp「官方」產品。
- DSH 社區插件目錄(SkillHub 條目)爲社區站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-video-downloader 把 yt-dlp 的常用參數和隊列收進 DSH 側欄與 Agent 工具,減少在本機反覆敲命令的成本,同時保留「數據不出本機、憑據不進對話參數」的邊界。需要安裝或細節時,以倉庫 README 爲準。