DSH Plugins Marketplace

DSH Plugins

Plugins

/

dsh-client-ui-board

L

dsh-client-ui-board

Manifest valid

DSH Web Exhibition Board Plugin: Third Tab of the Session View, Multi-Layer Whiteboard + Anchor Point Connections

UI (client)hasBundlePatch

@deepseek-ai/dsh-client-ui-board — DSH Web 展板

为 DeepSeek Harness Web GUI 开发的展板插件, 作为会话视图里与 对话 / 轨迹 并列的第三个标签「展板」。发布为 DSH 客户端插件(dsh.client),支持 GitHub / npm / tarball 分发。

本插件是「展板」,在对话过程中把项目的各层结构(界面层 / 代码层 / 功能层…)用多层白板和连线画成一张可随时查看的思维导图。绑定到当前会话的项目(workspace 路径),同一项目内的所有会话共享同一块展板,方便随时梳理与回顾。

核心模型

  • 盒子(BoardNode)承载文字,属于一个或多个图层(layerIds)。连接线(BoardEdge) 连接两个锚点(Anchor),自带文字和样式。
  • Anchor 要么是节点侧端口({kind:'node', nodeId, side}),要么是 某条连接线上的一点({kind:'edge', edgeId, t}),因此一条连接线可以从另一条 线上分叉/汇入。连接线始终在目标端画出箭头。
  • 图层切换是一个复选框滤镜:元素在任一勾选图层即显示。

模型体验(AI interop)

展板文档就是 src/client/board.model.ts 里的 BoardDocument JSON。 AI 视图标签渲染序列化的 JSON 并提供 Copy;agent 可用文件系统工具 读/写项目级 .dsh-board.json。normalizeDocument 兼容旧版 单 layerId / 纯节点 id 结构(且永不抛错);validateDocument 报告问题。

最小文档:

{
  "version": 1,
  "title": "我的项目",
  "activeLayerId": "L1",
  "layers": [ { "id": "L1", "name": "通用", "color": "#5b86e6" } ],
  "nodes": [
    { "id": "n1", "x": 60, "y": 60, "w": 180, "h": 64, "text": "界面层",
      "layerIds": ["L1"],
      "style": { "fill": "#e6faed", "stroke": "#1fc27e", "textColor": "#1f2733", "shape": "round", "fontSize": 15, "bold": true } }
  ],
  "edges": [
    { "id": "e1",
      "from": { "kind": "node", "nodeId": "n1", "side": "right" },
      "to": { "kind": "node", "nodeId": "n2", "side": "left" },
      "layerIds": ["L1"], "label": "",
      "style": { "color": "#8494a4", "width": 2, "curve": 40, "dashed": false, "arrow": true, "labelColor": "#5f6368" } }
  ]
}

从另一条连接线分叉用 "from": { "kind":"edge","edgeId":"e1","t":0.5 }; 汇入另一条线则在 "to" 上用同样写法。

关键源码

文件作用
src/client/index.ts插件入口,把展板注册进会话视图的 conversation.view 槽位(第三标签)
src/client/BoardView.tsx展板画布组件(绘制盒/线、图层切换、AI 视图)
src/client/board.model.ts数据模型与几何(BoardDocument、锚点/连线、归一化/校验)
src/client/locales.ts国际化的中文/英文文案
src/invariant.ts包级权重伴侣的不可变声明

安装

要求已安装 dsh CLI(dsh --help 存在)。

从 GitHub 安装(推荐)

dsh plugin add github:LaoQianwocao/dsh-client-ui-board

第一次安装若 pnpm 提示需要允许构建脚本,把打印出的包 key 填入 profile 的 pnpm-workspace.yaml 的 allowBuilds,然后重跑 add。

从本地 tarball 安装

pnpm pack
dsh plugin add ./dsh-client-ui-board-*.tgz

手动注册(无 bundle 时的兜底)

在 profile 的 cordis.patch.yml 中插入:

- insert:
    - id: ui-board
      name: '@deepseek-ai/dsh-client-ui-board'

之后无需改动任何官方文件,重启 dsh web 服务并刷新浏览器页面,会话视图即出现「展板」标签。

在 dshfind.com 上被发现

本仓库打上 GitHub topic:dsh-plugin(在仓库 Settings → Topics 添加),即可被 dshfind.com 收录 —— 它索引 topic 为 dsh-plugin 的公开仓库。

结构

  • package.json — 声明 dsh.client(platform: web)与 dsh.bundle(自注册行)
  • cordis.patch.yml — 注册本插件的宿主端行(plugin row)
  • src/ — 源码(board.model.ts / BoardView.tsx / locales.ts / invariant.ts)
  • lib/ — 预构建产物(index.js / invariant.js / client.js / types/)

Comments

Loading…

Similar plugins

dsh-excalidraw-board

by CSlawyer1985

DSH Web GUI 画板插件:右上角一键打开全屏 Excalidraw 白板,直接嵌入官方原站,侧边栏感知不遮挡

Manifest valid

★ 0

MIT

JavaScript

Aug 20, 2026

dsh plugin --profile web add dsh-excalidraw-board

by wwwangzilin

DSH Web 插件:新建会话界面上的角色卡 + 工作区卡选择器(毛玻璃卡片墙 / 横向滚动 / 角色主题色 / 入场动画)

Tools & CapabilitiesManifest valid

★ 0

TypeScript

Sep 18, 2026

dsh plugin --profile web add dsh-role-cards

by anneqaq

DSH 插件:把模型编写的 SVG/HTML 片段渲染成对话中的内联可视化卡片(图表、流程图、时间线、对比表格),沙箱隔离、无网络、无依赖

Manifest valid

★ 0

MIT

JavaScript

Sep 30, 2026

dsh plugin --profile web add dsh-widget

by liceses

DSH 插件:把工作区里写好的 HTML 页展示在对话里,并让用户在页面上的表态快速回到 agent 手里。含四套预设样式。

Manifest valid

★ 4

MIT

JavaScript

Sep 22, 2026

dsh plugin --profile web add dsh-showme-html

by yaodongH

DSH Web 插件:Codex 风格的改动汇总卡片,替换对话末尾的产出 chip 行。

Development & InfrastructureManifest valid

★ 0

MIT

TypeScript

Sep 24, 2026

dsh plugin --profile web add dsh-better-summary

by vlln

DSH 插件:对话节点导航条(右缘节点串快速跳转 user 消息)。官方 bundle 插件,dsh plugin --profile web add 安装

UI & ExperienceManifest valid

★ 51

↓ 213/wk

MIT

TypeScript

Sep 10, 2026

dsh plugin --profile web add @vlln/dsh-navbar