dsh-mindmap:在 DSH 側欄打開、編輯並導出主流思維導圖格式

前言

在 DeepSeek Harness(DSH)裏做方案拆解或文檔結構整理時,思維導圖文件往往散落在工作區樹裏:點開 .mm、.opml 或 .xmind,默認側欄未必有合適的預覽與編輯入口,只能換到外部軟件,或在對話裏手工複述節點層級。對需要在 Harness 內對照文件改結構的開發者來說,缺少一個與文件樹集成的導圖視圖會增加來回切換的成本。

下面介紹社區插件 dsh-mindmap(維護者 LoongYun):它在 DSH 右側邊欄註冊獨立標籤頁,支持多種導圖格式的打開、編輯與導出,併爲智能體提供讀寫字面大綱的工具,避免在對話中傳遞整段 XML。

這是什麼

dsh-mindmap 是 DSH 的客戶端類插件,在 Harness 右側邊欄打開、編輯並導出 XMind、FreeMind、OPML、KityMinder、VYM 等思維導圖。源碼與說明見 GitHub:LoongYun/dsh-mindmap;社區目錄頁爲 skillhub.cn/plugins/LoongYun/dsh-mindmap。npm 包名爲 @jeffreylong/dsh-mindmap(當前資料中的版本爲 0.2.1),許可證 MIT。

DSH 生態奉行「一切皆插件」;SkillHub 等目錄由社區維護,與 DeepSeek / 幻方無官方從屬關係。安裝前請自行審閱倉庫源碼與許可證。插件隨當前 DSH 進程與會話沙箱策略運行,寫入範圍受 workspace-write 或完全訪問等策略約束。

支持的格式與能力

README 用下表概括各擴展名的能力(以資料原文爲準):

格式 打開 編輯並保存 導出 .mm
.xmind(XMind 8 / Zen) 支持 只讀 支持
.mm(FreeMind) 支持 支持 支持
.opml 支持 支持 支持
.km(KityMinder) 支持 支持 支持
.vym(VYM) 支持 支持 支持

對 .xmind,查看器讀取歸檔內的 content.json(XMind Zen / XMind 8)或 content.xml,保留主題層級、備註與摺疊狀態;主題、關係線、附件等高級內容不渲染,導出爲 .mm 時僅保留結構。因 XMind 只讀,側欄提供 Convert to editable .mm:在同級目錄生成 .mm(覆蓋前會詢問)並打開編輯。

未支持的格式包括 .mmap、.mindnode、.emmx。文本類文件超過 8 MiB、節點數超過 20,000、或 XMind 單條內容超過 24 MiB 時會被拒絕加載;超過約 4,000 節點的大圖仍渲染爲單張 SVG,交互可能偏慢。

安裝與啓用

推薦從 npm 安裝。在 DSH 中打開 Plugins,選擇 Add plugin(部分構建標爲 Install bundle),輸入:

@jeffreylong/dsh-mindmap

資料強調:勿安裝裸名 dsh-mindmap,那是無關包。安裝後插件行顯示爲 dsh-mindmap,內部 id 爲 jeffreylong-dsh-mindmap。選擇 Enable now 後重新加載 Harness 窗口。

若私有 npm 鏡像未代理 npmjs.org,可在配置中指定:

@jeffreylong:registry=https://registry.npmjs.org/

也可在終端爲指定 profile 安裝:

dsh plugin --profile desktop add @jeffreylong/dsh-mindmap

隨後在 Plugins 頁面啓用 dsh-mindmap。安裝或更新 bundle 後若 .mm 仍被其他編輯器搶佔側欄,按 README 建議可重啓 DSH 一次(客戶端注入列表在啓動時讀取)。插件無構建步驟,DSH 直接以瀏覽器模塊加載 client.js。

典型用法

在側欄中編輯

  1. 在工作區文件樹中單擊 .mm、.opml、.km、.vym 或 .xmind,在右側邊欄打開。
  2. 雙擊主題改名;Tab 添加子節點,Enter 添加兄弟節點,F2 重命名,Delete 刪除。
  3. 右鍵主題可新建子/兄弟節點、重命名、摺疊、刪除。
  4. 底部浮動條提供撤銷/重做、全部摺疊、縮放、適應窗口、版式、保存、轉換與導出等操作。版式面板中的結構(右、平衡、下、左)與連線樣式(曲線、直線、折線)僅爲視圖偏好,不寫入文件。
  5. ⌘S 或保存按鈕寫入可編輯格式;.xmind 無保存按鈕,需用 Convert to editable .mm 或 Export to .mm(下載)。保存會覆蓋已有可編輯文件;僅 XMind 轉 .mm 會在原文件旁新建,且覆蓋前需確認。

默認界面語言爲中文,左下角有 EN / 中 切換,並顯示節點數、只讀提示與未保存狀態。查看器不監聽外部文件變更;智能體改圖後需關閉再打開標籤頁才能看到更新。

智能體工具

Bundle 在 Host 側註冊兩個工具,便於在不搬動原始 XML 的前提下讀寫導圖:

  • mindmap_outline({ path, includeNotes?, maxDepth? }):返回帶穩定 id 的縮進大綱及文件版本,例如:
[n1] DSH Mind Map
  [n2] Formats
    [n3] XMind — read-only preview
  • mindmap_apply({ path, baseVersion, ops }):按節點級操作原子寫入;baseVersion 須來自 mindmap_outline,文件已變更時不寫入並提示重讀。操作示例:
[
  { "action": "add", "parent": "n2", "text": "New topic" },
  { "action": "rename", "id": "n3", "text": "Renamed" },
  { "action": "move", "id": "n5", "parent": "n2", "index": 0 },
  { "action": "remove", "id": "n11" }
]

路徑可爲工作區相對或絕對路徑。.xmind 可讀不可寫,需先轉爲 .mm。

實現要點(便於排錯)

客戶端註冊 sidebar.right.pane.tab 類型,並通過比 dsh-resource://file/** 更長的擴展名 glob 優先於 dsh-better-sidebar 的編輯器打開上述擴展名,同時仍可與其共存。文件經 ctx.remote.workspaceFiles.readBytes 讀取;渲染爲手寫 SVG,無第三方渲染器、無打包步驟。保存經 Host 路由 POST /dsh-mindmap/save(連接隔離、擴展名白名單、請求體 8 MiB、樂觀版本衝突返回 409);路由不可達時查看器回退爲下載文件。

適用場景與注意

  • 適合:在 DSH 工作區內直接維護 FreeMind / OPML / KityMinder / VYM 導圖;只讀瀏覽 XMind 並導出或轉爲 .mm;讓智能體用 mindmap_outline / mindmap_apply 批量改結構。
  • 注意:XMind 高級樣式與富內容在導出 .mm 時會丟失;側欄很窄時 Fit 會整體縮小,需放大與平移查看細節。插件權限等同當前 DSH 會話,安裝前請覈對 倉庫 源碼與 MIT 許可證。

結尾

dsh-mindmap 把常見思維導圖格式收進 Harness 右側邊欄,並補上面向智能體的大綱讀寫接口,減少「開外部軟件」和「在對話裏手打樹形結構」兩種 workaround。需要安裝名、格式矩陣與快捷鍵時以 README 爲準;社區索引見 SkillHub 目錄頁,源碼與 issue 見 GitHub。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜