前言¶
DeepSeek Harness(dsh)把模型、工具、會話和界面都做成插件,官方倉庫的說法是「一切皆插件」。這意味着你不必改核心代碼,也能給當前進程疊一層新能力。社區裏已經出現不少側邊欄、主題和終端界面插件;其中一類更極端:直接把 Web 頁面改成另一種應用。
dsh-mc-launcher 就屬於這一類。它把版本清單、文件下載、微軟賬號登錄和 Java 遊戲進程都放進 dsh 宿主裏跑,瀏覽器裏則給出啓動器界面。需要說明的是:本文引用的插件目錄(deepseek-harness-plugin.com)是獨立的社區站點,與 DeepSeek / 幻方沒有官方從屬關係,也不是官方應用商店;條目只指向維護者倉庫,安裝前仍要自己覈對源碼。
下面按目錄頁與 GitHub 倉庫交叉覈實後的信息,說明這個插件是什麼、怎麼裝、怎麼用。
這是什麼¶
dsh-mc-launcher 是一款界面增強類的 bundle 插件,由 hellosky983 維護,倉庫許可證爲 MIT,主要語言是 JavaScript。截至 2026-08-18,目錄頁與 GitHub 上的星標均爲 4;package.json 中的版本號是 0.1.0。倉庫創建於 2026-08-14,本文寫作時 main 分支最新提交爲 df3d7fd(2026-08-16)。
一句話定位:在 DeepSeek Harness 裏提供 Minecraft 啓動器能力——宿主進程負責清單、下載、登錄和啓動,界面以插件形式掛到 Web UI 上。遊戲目錄默認是 ~/.minecraft,目錄結構與官方啓動器相同,已有版本、存檔和資源可以直接複用。
項目在界面和文檔裏都標了 UNOFFICIAL。它不是 Mojang / Microsoft 的產品,也不分發遊戲本體:client jar、libraries 和 assets 都從 Mojang 官方源拉取(README 列出的域名包括 launchermeta.mojang.com、piston-meta.mojang.com、resources.download.minecraft.net)。未購買 Minecraft 的賬號不能靠這個插件繞過驗證;倉庫明確不提供離線模式。
核心功能¶
對照目錄頁、README 和倉庫裏的 index.js,當前能力可以分成四塊。
1. 啓動器本體。 從官方版本清單讀取 release / snapshot / 遠古版本,已安裝的會做標記。安裝時下載 client jar、libraries(natives 優先用依賴裏的 adm-zip 解壓,不行再回退到系統 unzip)和 assets;已存在且大小匹配的文件會跳過。啓動時按版本 JSON 組裝 Java 命令,展開 ${natives_directory}、${classpath} 等佔位符。Java 運行時優先探測官方啓動器放在 ~/.minecraft/runtime/**/bin/java 的副本,其次才用 PATH 裏的 java。界面還可以看遊戲日誌、停止進程,以及改內存、分辨率、Java 路徑。
2. 微軟賬號登錄。 默認走設備碼流程(device code → Xbox Live → XSTS → Minecraft services)。瀏覽器授權碼(PKCE)需要額外配置回調地址,README 把它標成高級備選。登錄必須填寫你自己在 Azure 註冊的應用 client id,不能借用別人的。賬號 token 只寫在本機 ~/.dsh-mc/account.json,文件權限 600;README 寫明無遙測、無第三方統計。
3. 雙界面。 目錄頁和 package.json 的描述強調:bundle 可以佔據頁面的 root slot,做成全屏啓動器。README 的操作說明更細:默認是聊天界面裏的「Minecraft」標籤頁(uiMode 默認 tab),和 AI 會話共存;也可以在設置裏改成全屏(fullscreen,需重啓生效)。標籤頁還可以關掉,只保留 mc_* 工具、不顯示啓動器頁。另有五套主題預設(森林 / 石板 / 海洋 / 末地 / 熔岩)和自定義強調色。
4. 交給 agent 的工具。 宿主把啓動器和遊戲數據暴露成工具,源碼裏已註冊的名稱包括:mc_list_versions、mc_install、mc_launch、mc_kill、mc_logs、mc_status、mc_analyze_crash、mc_world_info、mc_mods、mc_version_advice,以及目標列表相關的 mc_set_goals / mc_goals / mc_complete_goal。進階方向有兩條:一條是 mc_screenshot + mc_see + mc_control(X11 截屏、DashScope 的 Qwen-VL 看圖、xdotool 模擬鍵鼠);另一條是 mc_bot_*(用 Mineflayer 經局域網協議連進世界,讀位置/揹包/血量等並做移動、挖掘、放置)。後兩條依賴額外環境,不是「裝完就能在所有系統上用」的默認路徑。
安裝與啓用¶
目錄頁給出的安裝命令如下,在已經裝好 dsh CLI 的終端裏執行:
dsh plugin add github:hellosky983/dsh-mc-launcher
插件會以當前 dsh 進程的權限運行,安裝時可能執行代碼。安裝前請閱讀倉庫源碼和 MIT 許可證。若需要可復現安裝,目錄頁建議固定 commit。本文寫作時 main 的提交是:
dsh plugin add github:hellosky983/dsh-mc-launcher#df3d7fd1216de03ed8c3cb4fe192963801467fc5
環境方面,README 寫的是:Node.js 18+、全局 dsh CLI(文檔按 v0.1.0-rc.6 記錄)、DSH 宿主,以及啓動遊戲所需的 Java。平臺聲明爲 Linux / macOS / Windows。兼容性備註寫明:2026-08-14 在獨立 profile 和 web profile 上實測過「列出版本 / 安裝 1.21.11 / 啓動進入世界」;同時也寫了結論可能隨 dsh 主線變化而失效,要以你本機實測爲準。Minecraft 1.21 及以上通常需要 Java 21+。
README 另外提供了兩種本地接入方式,適合不想直接 plugin add、或希望和現有聊天實例隔離的情況。
方式 A:克隆倉庫,在已有 profile 的 package.json 裏把依賴寫成 link: 路徑,並把 dsh-mc-launcher 加進 dsh.profile.bundles,然後在該 profile 目錄執行 pnpm install 並重啓 dsh。
方式 B:建一個獨立 profile(README 示例端口 39970),用單獨的 DSH_HOME 啓動:
git clone https://github.com/hellosky983/dsh-mc-launcher.git
cd dsh-mc-launcher
# 按 README 在 <項目>/dsh-home/profiles/minecraft/package.json 聲明 bundles 後:
cd <項目>/dsh-home/profiles/minecraft && pnpm install
DSH_HOME=<項目>/dsh-home dsh --profile minecraft --port 39970
瀏覽器打開 http://127.0.0.1:39970 即爲該實例的啓動器頁。獨立實例的會話、設置和憑證不與聊天用的 profile 混用。
卸載時從 profile 的 dependencies 和 dsh.profile.bundles 兩處刪掉 dsh-mc-launcher,再 pnpm install 並重啓。可選刪除 ~/.dsh-mc/(設置和賬號);~/.minecraft/ 不會被卸載步驟清掉。
典型用法¶
裝好之後,先處理登錄。倉庫要求使用你自己註冊的 Azure 應用:
- 打開 Azure 門戶 → App registrations → New registration。Supported account types 選「Accounts in any organizational directory and personal Microsoft accounts」。
- 進入新應用 → Authentication,勾選 Allow public client flows 並保存。
- 複製 Application (client) ID,填進啓動器的「設置 → Microsoft client id」。
- 點 Sign in,按提示在瀏覽器打開鏈接並輸入設備碼。
首次使用會走中文界面上的四步引導:配置 client id → 登錄 → 選版本安裝 → 開始遊戲。未登錄時點 PLAY 會直接喚起登錄。如果報 no Azure client id configured,就是還沒填 client id;AADSTS700016 通常表示這個 client id 在你的微軟目錄裏不存在,需要換成自己註冊的那一個。
默認界面是標籤頁:先開一個會話,頂部會出現「Minecraft」,點進去就是啓動器。也可以在聊天裏直接讓 agent 調工具,例如 README 給的說法是「幫我安裝 1.21.11 並啓動」——對應 mc_list_versions / mc_install / mc_launch。崩潰時可以用「遊戲起不來了」一類描述,走 mc_analyze_crash 讀 crash-reports/ 和 logs/latest.log。
常用配置寫在 ~/.dsh-mc/settings.json,README 列出的默認值包括:
| 配置項 | 含義 | 默認 |
|---|---|---|
gameDir |
遊戲目錄 | ~/.minecraft |
javaPath |
Java 可執行文件,空則自動探測 | 自動 |
memoryMb |
JVM 堆內存 | 2048 |
clientId |
自有 Azure 應用 ID | 空(登錄必需) |
width / height |
窗口分辨率 | 854×480 |
uiMode |
tab 或 fullscreen |
tab |
showTab |
是否在會話裏顯示 Minecraft 標籤 | true |
若要用視覺控制迴路(mc_screenshot / mc_see / mc_control),README 額外要求:配置 DASHSCOPE_API_KEY(或在設置裏填 DashScope key)、Linux X11 以及 xdotool 與 ffmpeg(Debian/Ubuntu 示例爲 sudo apt install xdotool ffmpeg),遊戲建議窗口模式。mc_control 會聚焦遊戲窗口並模擬鍵鼠,執行期間不要同時操作電腦。局域網機器人模式則要先在遊戲內「對局域網開放」,再 mc_bot_connect;依賴 mineflayer 與 mineflayer-pathfinder,這兩項已寫在插件的 dependencies 裏。
適用場景與注意事項¶
比較適合已經在本機跑 dsh Web UI、同時有正版 Minecraft 賬號、希望把「裝版本 / 啓動 / 看崩潰日誌」接到同一個 agent 會話裏的人。如果你只是要一個日常啓動器,官方啓動器或其它獨立啓動器更直接;這個插件的價值在於啓動器跑在 dsh 進程裏,並且把操作暴露成工具。
使用前需要接受幾條邊界:
- 插件與當前 dsh 進程同權限,可以讀寫
~/.minecraft/、寫入~/.dsh-mc/、訪問 Mojang / 微軟登錄域名,並拉起 Java 子進程。視覺和鍵鼠相關工具還會調用本機的xdotool/ffmpeg。只安裝你審查過源碼的版本,並儘量固定 commit。 - 必須用自己購買的微軟賬號登錄,沒有離線模式。首次使用會彈出 EULA 同意確認。項目聲明不用於規避付費、分發盜版或冒充官方。
- Microsoft 登錄用的是你自己的 Azure client id,這是微軟應用條款的要求,不是可選項。
mc_see會把截圖發到dashscope.aliyuncs.com;不配 key 就不要走這條路徑。mc_bot_*連的是本機局域網端口,需要你主動開放 LAN。- README 的兼容性結論綁定在 dsh
0.1.0-rc.6的一次實測上。宿主升級後,bundle 的 slot、工具註冊或 Java 探測都可能變化。
小結¶
dsh-mc-launcher 做的事情很具體:把 Minecraft 啓動器做成 dsh 的一層 bundle,清單、下載、設備碼登錄和遊戲進程都在宿主裏完成,界面可以是標籤頁也可以全屏佔據頁面。它是 MIT 開源的社區插件,和 Mojang Studios / Microsoft 無關聯,也不是 DeepSeek 官方應用。
目錄頁:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-mc-launcher/
GitHub:https://github.com/hellosky983/dsh-mc-launcher