前言¶
DSH(DeepSeek Harness)的理念是「一切皆插件」。对智能体开发者来说,插件多了以后,问题不只是装哪个,而是当前 DSH 进程里有哪些插件、哪些工具在跑、哪个插件可以安全卸载。
jelly-000/dsh-3d-plugin-graph 是一个 web 客户端插件。它读取当前 Cordis runtime,把插件拓扑渲染成可旋转、缩放、拖拽的 3D 图。节点、边和状态来自运行时;无可用来源时才会使用 offline demo fallback。插件目录是独立站点,不是 DeepSeek / 幻方官方应用商店。
这是什么¶
先交代定位和基本信息:
- 插件名:
jelly-000/dsh-3d-plugin-graph - 维护者:
jelly-000 - 许可证:
MIT - 版本:
0.1.0 - 客户端平台:
web;dsh.client.platform和dshClient.platform均为web - 作用:在 DSH web UI 中提供一个「插件图谱」入口,用于查看实时插件拓扑、工具活动、连接状态,并执行插件启用 / 禁用操作。
核心功能¶
实时运行时数据¶
下面介绍它读取哪些数据。插件从运行中的 Cordis runtime 获取节点、边、服务与工具面:
ctx.loader.entriesctx.reflect.storectx.tools.schemastools/resultevents
当没有可用来源时,它会回退到 offline demo fallback,避免打开后变成空页面。
交互方式¶
图谱支持常见的 3D 操作:
- 拖拽空白区域:
orbit Shift/ 右键拖拽:pan- 滚轮:
zoom,并锚定在光标位置 - 拖拽节点:带物理效果地移动节点
- 标签:支持
label LOD,根据距离和遮挡调整显示
插件操作¶
这个插件不只是看:
- 卸载需要
double confirmation。 - 卸载实现为
entry.update({disabled:true}),后续不会auto re-insertion。 - 服务端 guard 会拒绝核心基础设施(
loader/include/isolate)、图插件自身,以及级联会命中图的卸载操作。 - 重新启用是一次操作。
状态与活动¶
- live tool-execution log
- connection-state pill
- runtime flow effects
前端与可访问性¶
- single-file UI,zero external dependencies,no CDN,no build step
- 支持
prefers-reduced-motion - 支持
focus-visibleoutlines - 使用
aria-liveannouncements - 使用
color-scheme: dark
安全¶
安全姿态包括:
- CSP meta tag
X-Content-Type-Options: nosniff- 对进入
innerHTML的服务端字符串使用esc() - 针对
XSS/prototype-pollution/malformed-state的对抗测试
性能¶
自动化 170-node synthetic load 测试中,mean frame gap ≈ 17 ms。
安装与启用¶
先确认环境:需要一个带 web profile 的 DSH 安装。
然后执行安装命令:
dsh plugin --profile web add https://github.com/jelly-000/dsh-3d-plugin-graph
接着重启 web profile,或让 HMR 生效。本地开发时,也可以把 add 指向目录而不是 URL。
经过上面的步骤,打开 DSH web UI,右下角会出现「插件图谱」浮标。
典型用法¶
打开图谱¶
可以从 DSH web UI 的浮标进入,也可以直接访问:
- 图谱 UI:
http://127.0.0.1:3080/plugins/dsh-3d-plugin-graph/ - Live state JSON:
http://127.0.0.1:3080/plugins/dsh-3d-plugin-graph/state
启用或禁用插件¶
接口形状如下,action 可为 plug 或 unplug:
POST /plugins/dsh-3d-plugin-graph/action
{
"action": "unplug",
"id": "plugin-xxx"
}
启用时把 action 改为 plug。
常用控制¶
- 拖拽空白区域:
orbitcamera Shift/ 右键拖拽:pan- 滚轮:
zoom,锚定在光标处 - 拖拽节点:移动节点
- 单击节点:select 并查看详情
- 双击节点:focus
- 双击空白区域:reset view
R:reset viewEsc:close popup / confirmation- 搜索框:fuzzy plugin search
开发与测试¶
仓库提供以下命令:
npm install
npm run verify
npm run test:ui
npm run test:security
npm run test:perf
这些测试套件可以在没有 live DSH instance 的情况下运行,依赖 mock servers 和 real headless Chrome。
适用场景与注意¶
适合:
- 正在维护 DSH 插件系统的开发者
- 需要查看当前 web profile 中插件运行状态、工具活动和连接状态的人
- 在卸载插件前想确认服务端 guard 和级联影响的场景
注意:
- 插件以当前
dsh进程权限运行。 - 它会读取 runtime 数据,并能执行
plug/unplug,安装前应检查源码、依赖和MIT许可证。 offline demo fallback只保证界面可打开,不代表当前 DSH 真实状态。- 服务端 guard 会拒绝某些卸载请求;如果卸载被拒绝,优先核对目标插件是否属于核心基础设施或会命中图本身。
结尾¶
dsh-3d-plugin-graph 的价值,是把 DSH 插件生态的 live 状态放在一个 3D 界面里:可看节点、可看工具活动、可执行插件操作,并且把安全 guard 放在服务端。