前言¶
做結構生物學分析的人,常用流程是:讓智能體在對話裏給出一段分析,再把結構扔進 PyMOL / Mol* 查看結果。結果是圖片和結論分居兩個窗口,標註和測量要來回手工搬運。dsh-mol-structure 這個插件想解決的問題是:讓智能體在 DSH 右側邊欄內嵌一個完整的本地 Mol* v5 查看器,直接加載、渲染、標註 PDB/mmCIF 結構,並把結果留在對話旁邊。也就是說,智能體不再只回文字,它展示的畫面和我說的結構是同一個視圖。
下面介紹這個插件:誰維護、能不能裝、怎麼用。
這是什麼¶
masterchiefm/dsh-mol-structure,維護者 Masterchiefm,分類爲「客戶端」插件,採用 MIT 許可證。它面向 DeepSeek Harness(DSH)的開發者和使用者:在 dsh 桌面端 / Web 端右側邊欄追加一個「結構視圖」頁籤,內嵌 Mol* 查看器,同時向 agent 暴露 22 個 mol_* 工具,把「加載結構 → 建場景 → 測量和標註 → 導出或截圖」整條鏈路放進對話裏。
核心功能¶
右側邊欄 3D 視圖¶
右側邊欄出現「結構視圖」頁籤,內嵌完整的 Mol* 查看器。有兩種模式可選:簡潔 agent 畫布,或完整 Mol* 界面。切換頁籤後場景常駐,不會因爲切走就丟掉已加載的結構。
Agent 工具¶
插件提供 22 個 mol_* 工具,覆蓋完整流程:
- 加載結構:
mol_load - 建場景 / 換表徵:
mol_scene、mol_style - 註冊可回放視圖:
mol_panel_define - 測量與氫鍵標註:
mol_measure、mol_hbonds、mol_structconn - Cα 疊合:
mol_align - 狀態存取與導出:
mol_state、mol_export - 截圖:
mol_screenshot - 其餘還包括
mol_status、mol_select、mol_panel等
對話裏直接說「加載 6w5c」或「看一眼 PAM 口袋」即可驅動對應工具。
結構分析¶
mol_load 之後插件會做幾件事:清點鏈組成、統計界面殘基接觸,並自動註冊「總覽」和「界面特寫」兩個視圖。外觀默認走出版級規範:蛋白爲半透明 surface(alpha 0.45)加不透明 cartoon,DNA/RNA 爲 cartoon,互作特寫處的側鏈以 stick 突出,距離線加標籤標註。
雙向感知¶
視圖不是單向的。在 3D 視圖裏點擊殘基,這次點擊會回報給 agent(mol_status / mol_select 可以讀到)。另外本機任意程序也能經 POST /api/mol-structure/command,用同一套命令詞彙驅動查看器。
有一點需要寫明:插件無法強制展開 dsh 的右側邊欄,那是宿主 UI 狀態,插件沒有 API 碰它,只能請求切換到「結構視圖」頁籤。所以凡是涉及結構展示或分析的請求,agent 應該在 mol_load 等 3D 操作之前主動調用 mol_panel 打開右側邊欄結構視圖頁籤,讓用戶立即看到畫面,而不是隻彙報文字結果。
安裝與啓用¶
方式 A:讓 dsh 裏的 agent 安裝(推薦)¶
在任一已打開的 dsh 會話裏對 agent 說:
請安裝插件 https://github.com/Masterchiefm/dsh-mol-structure
agent 會調用 plugin_manager(install_bundle,target = 倉庫目錄的絕對路徑,真實目錄、不要符號鏈接),自動完成 profile 依賴登記、cordis.patch.yml 掛載與 client 半身註冊。裝完重啓應用或新開一個會話,右側邊欄就會出現「結構視圖」卡片。
方式 B:桌面端手動安裝¶
在設置 → 插件 → 本地路徑安裝,指向本地已有的插件目錄;或者手動放置:
- 把 package(含
dist/)複製到%DSH_HOME%\profiles\desktop\node_modules\dsh-mol-structure\ - 在 profile 的
package.jsondependencies里加"dsh-mol-structure": "*" - 在
dsh.profile.bundles裏追加"dsh-mol-structure"
注意不要在 profile 的 cordis.patch.yml 裏再加條目,bundle 自己的 cordis.patch.yml(一行 insert,id 爲 mol-structure)會自動生效。
純 Web profile 源碼安裝¶
dsh plugin --profile web add github:Masterchiefm/dsh-mol-structure
安裝後自檢¶
按下面三步確認安裝成功:
- 右側邊欄出現「結構視圖」卡片,對 agent 說「打開結構視圖」;右側欄被收起時在 UI 裏手動展開。
- 對 agent 說「加載 4oo8」,
mol_load返回鏈清單並自動註冊總覽 / 界面視圖。 - 在 3D 視圖點擊一個殘基,agent 用
mol_status能讀到這次點擊。
典型用法:SaCas9–sgRNA–目標 DNA¶
README 給出的可復現示例是 PDB 4OO8(Nishimasu et al. 2015,本地文件 dist/structures/4oo8.cif):Staphylococcus aureus Cas9(SaCas9)– sgRNA – 目標 DNA 三元複合物。鏈組成爲 A = SaCas9(aa 3–1366)、B = sgRNA(97 nt)、C = 目標 DNA TS(0–20,PAM 端),D/E/F 是晶體內第二個複合物副本。
對 agent 說「加載 4oo8 並看看它怎麼識別 DNA」,可以復現三段視圖:
- 總覽:蛋白半透明 surface 罩住 slate cartoon,sgRNA(紅)與目標 DNA(青)爲 cartoon,中央通道構象一目瞭然。
- PAM 識別特寫:PI 域 S1106–I1110 環讀 PAM 端鹼基,K1107/S1109 側鏈 stick 貼住 PAM 端磷酸骨架,距離線標註接觸。
- seed 異源雙鏈特寫:sgRNA 5′ 段與目標 DNA 形成異源雙鏈,REC lobe 正電槽殘基(R75/Y72/R403 等)側鏈 stick 夾住雙鏈骨架,穩定 R 環構象。
agent 會把每個視角註冊成 mol_panel_define 可回放面板,控制卡可以一鍵重現。README 中的截圖是真實 dsh 窗口截圖,由 node tools/capture-readme.mjs 無頭生成,可以重新截。
檢查更新與插件內自升級¶
v0.5.0 起插件自帶更新通道,默認開啓自動檢測(每 6 小時),可在設置 → General →「結構視圖:自動檢查更新」改爲每天 / 每週 / 關閉。發現新版本時,已打開的設置頁會顯示更新橫幅,SSE 會向瀏覽器半身推送一次 update 提醒;也可以點「檢查更新」立即查詢,或點「立即更新並重載」一鍵完成下載 → SHA-256 校驗 → 備份 → 原子換文件 → 熱重載,失敗自動回滾。開發者也可以直接調 HTTP 接口:
GET /api/mol-structure/update
POST /api/mol-structure/update/check
POST /api/mol-structure/update/apply
更新源固定爲 GitHub 倉庫 Masterchiefm/dsh-mol-structure 的 feed/manifest.json(raw.githubusercontent.com + jsDelivr 鏡像,可變分支先釘到完整 commit SHA)。清單裏每個文件帶 size + SHA-256,下載後逐一校驗,任何字節不符即拒絕安裝並回滾。發新版流程:改代碼 → bump package.json 與 index.js 版本 → npm run build(改了 src/ 時)→ npm run manifest → 提交併推送(含 feed/manifest.json)。
適用場景與注意¶
適合需要在對話裏反覆查看和分析 PDB / mmCIF 結構的開發者與研究人員:尤其是想讓 agent 直接給出標註好的畫面、而不是事後再手工貼圖的人;以及想由本機程序通過 HTTP 接口驅動同一個查看器的集成場景。
幾點提示:
- 插件以當前 dsh 進程的權限運行,安裝前應先檢查源碼與許可證(MIT)。README 的安裝由社區倉庫維護,與 DeepSeek / 幻方無官方從屬關係,請自行判斷來源。
- 插件聲明 Node 版本要求爲
>=20,Mol* 依賴版本爲^5.13.1。 - 右側邊欄的展開狀態由宿主 UI 控制,插件只能請求切換頁籤,無法替用戶展開側欄。
小結¶
dsh-mol-structure 的價值在於把結構查看從「另一個窗口的工具」搬進了對話本身:agent 能加載、渲染、標註結構,用戶點擊也能回到 agent。對於常做結構分析的 DSH 用戶,值得一試。
目錄頁:https://www.skillhub.cn/plugins/Masterchiefm/dsh-mol-structure
GitHub:https://github.com/Masterchiefm/dsh-mol-structure