前言¶
在 DSH「一切皆插件」的思路下,Agent 可以按場景接入本地工具。對開發者來說,一個具體需求是:電腦裏已經有一批音樂文件,希望 Agent 不只給出播放說明,而是能搜索、播放、暫停、切歌,並在網頁端查看當前播放狀態。dsh-music-plugin 面向這個場景:它給 DeepSeek Harness 增加一個本地音樂開關。
這是什麼¶
syy-shark/dsh-music-plugin 是 DSH 插件,package.json 中的名稱爲 dsh-music-plugin,當前版本爲 0.1.0,許可證爲 MIT,由 syy-shark 維護。
它把本機文件夾裏的歌曲接到 Agent 可用接口上:Agent 可以通過工具調用找歌、播放、暫停、繼續、下一首和查詢狀態。關閉插件後,聲音也會停。
核心功能¶
下面列出已覈實的插件能力:
- 找歌:Agent 可調用
music_search。 - 播放:Agent 可調用
music_play。 - 暫停 / 繼續:Agent 可調用
music_pause/music_resume。 - 下一首:Agent 可調用
music_skip。 - 狀態:Agent 可調用
music_status查詢現在在播什麼。 - 隊列:播放中再點播會排進隊列,不會掐掉當前播放。
- 出聲:使用
afplay;電腦裏有mpv時優先使用mpv,flac更穩。 - 插件複用:其他 DSH 插件可寫
inject: ['music'],然後調用ctx.music.play / pause / search。
安裝與啓用¶
1、先把歌放進本地目錄。默認 libraryDir 爲 ~/Music。
2、安裝插件。資料中給出的命令使用本機路徑:
npx @deepseek-ai/dsh plugin --profile web add /Users/shark/項目/DSH-music-plugin
資料未提供通用倉庫安裝命令;如果不在同一臺機器或同一目錄,需要按實際本地路徑處理。
3、啓動 DSH Web:
npx @deepseek-ai/dsh web
4、打開:
http://127.0.0.1:3080
右側會出現「本地音樂」面板。可以看到歌單,點播放 / 暫停 / 下一首;也可以繼續跟 Agent 說「播放 xxx」。
典型用法¶
- 找歌:對 Agent 說「找一下某首歌」,對應
music_search。 - 播放:對 Agent 說「播放 xxx」,對應
music_play。 - 暫停 / 繼續:對應
music_pause/music_resume。 - 下一首:對應
music_skip。 - 查詢當前:對應
music_status。 - 命中多首:Agent 會列出路徑,需要按準確路徑再播放一次。
- 開發調試:可以用
--patch臨時掛源碼,不寫進配置。
配置¶
配置在 cordis.yml 中,改完重新加載即可:
libraryDir:音樂文件所在文件夾,默認~/Music。backend:可設爲auto/afplay/mpv。extensions:用於識別音樂文件的後綴。
移除¶
npx @deepseek-ai/dsh plugin --profile web remove dsh-music-plugin
版本與依賴¶
package.json 中的相關信息:
name:dsh-music-pluginversion:0.1.0license:MITpeerDependencies:@deepseek-ai/cordis >=4.0.0@deepseek-ai/dsh-tools *@deepseek-ai/schemastery *
適用場景與注意¶
適合需要在 DSH 裏控制本機音樂的開發者:歌曲已經在本機文件夾中,需要 Agent 能直接調用播放控制,或者需要網頁端看到一個簡單的本地音樂面板。
當前未做:網易雲、進度條拖拽、歌詞。
使用注意:
- 插件會以當前
dsh進程權限運行。 - 安裝前應檢查源碼、依賴與許可證。
- 資料中給出的安裝命令是本機路徑,未提供通用倉庫安裝命令。
- 社區目錄是獨立站點,不等同於官方應用商店;不要理解爲與 DeepSeek 或幻方存在官方從屬關係。
相關鏈接¶
- GitHub:https://github.com/syy-shark/dsh-music-plugin
- 目錄頁線索鏈接:https://www.skillhub.cn/plugins/syy-shark/dsh-music-plugin(來自線索,未在已抓取資料中直接出現)