dsh-anatomy:DSH 运行时实时分层架构透视

前言

在 DeepSeek Harness(DSH)里跑插件、服务、工具、会话和 MCP 时,单靠日志往往只能看到离散事件,很难把「谁在调谁、流量落在哪一层」串成一张图。dsh-anatomy 把 DSH 运行时画成从左到右五层、十四个组件域的实时架构图,并把近时段内真实观测到的调用画成连线与沿曲线流动的光点,配合指标、清单、日志与时间线,便于对照排障与理解调用关系。

这是什么

dsh-anatomy 是由 h2298511604-ops 维护的 DSH 插件,包含 Host 与 Client 两部分:在左侧栏增加「架构透视」入口,主区域打开整页 DSH 架构透视 · 实时架构;也可在会话右侧栏以紧凑 tab 查看,无需离开当前会话。

分类上属于客户端类插件(同时依赖 Host 推送运行时快照与事件流)。当前 GitHub 仓库星标为 0;package.json 标明版本 1.1.0、许可证 MIT、Node >= 20。仓库即插件包,Host 与 Client 均为原生模块,文档说明无需单独构建步骤。

核心功能

分层架构与组件域

舞台默认是 组件域视图:左 → 右五层、共 14 个组件域(协议 id 在 Host 快照里仍用 organs 字段)。下表摘自插件 README,职责划分便于对照 DSH 内核概念。

层级 组件域(id) 职责
入口层 Web UI 客户端(skin)、凭据授权(immune) 页面渲染与交互;调用者识别、授权与遥测
推理层 Agent Loop(cortex)、LLM 推理(heart)、子代理/工作流(agents) 会话循环、模型推理与流式生成、子代理与工作流
执行层 工具执行(stomach)、读取搜索(eyes)、写入终端(limbs)、网络/MCP(lungs) 工具管线;读/搜/图;写/终端/子进程;Web 与 MCP
状态层 会话日志(intestines)、上下文/Token(kidneys)、记忆技能(marrow) 日志持久化;上下文压缩与 token 计量;技能、Hindsight、MCP 资源
内核与安全层 Cordis 内核(spine)、沙盒权限(liver) 插件纤维、服务容器、Loader、HMR、Web 宿主;沙盒、权限、审批与工具守卫

节点卡片汇总所属域内的插件、服务、工具数量;点击节点或清单项可在右栏查看详情。舞台底部有 CORDIS 内核 · 插件宿主 带,展示插件(活跃/总数)、服务数、客户端包数、纤维数及节点/连接数量。

真实调用连线与光点

连线只来自真实观测:按近 120s 事件聚合「来源 → 目标」边,无流量时节点仍可见,状态区会提示暂无调用。舞台右上角根据近 15s 是否有事件显示等待数据 / 运行中 / 已连接·空闲 / 已暂停 / 离线等状态,并显示「最近事件:x 秒前」。

有流量的边上用沿曲线移动的 SVG 圆点标示方向(源 → 目标);圆点数量与速度随近 120s 调用量变化,并按类型着色(例如 LLM=橙、工具=青、Session=紫、文件系统=蓝、审批=琥珀、错误=红、插件=品红)。Host 还会基于观测事件补画语义流(如上下文加载、Token 计量、日志落盘、compaction 回写等),文档强调这些同样来自观测而非装饰线。

顶部「视图」开关可在 组件域视图 与 工具调用视图 之间切换:后者左侧为 Top 24 工具卡片,默认只画 Top 8 有流量工具的连线,可用「显示全部连线 / 仅 Top 8」切换。

四个底部视图与右栏详情

整页布局包括:Header(版本/连接/会话过滤/暂停等)、左栏 14 域列表与搜索、中间可平移缩放的舞台、可拖拽调宽的右栏详情,以及底部四个 tab:

  1. 运行指标:events/s、工具与模型 calls/min、Token tokens/s、errors/min、平均耗时;约 60s 滚动窗口的 sparkline 与调用热度排行。
  2. 组件架构:可搜索的插件(含 fiberPhase)、服务、工具、客户端包、模型、MCP 等完整清单。
  3. 调用日志:实时表格,最多渲染最近 200 行,可过滤与自动滚动;高频 token 流不逐条刷屏。
  4. 时间线:近 60s / 近 120s 窗口,按 Session 泳道展示 LLM 与工具调用段。

右栏支持上下游、因果链、调用关系详情,并可跳到调用日志过滤或时间线;工具详情含内置常用工具中文说明(文档写明内置 59 个)及耗时分布等字段(Host 提供时显示)。

首屏与数据流

打开面板时 Host 先推送约 5 KB 的 lite 快照(14 域计数 + 会话摘要),骨架消失后舞台先出;随后约 200 KB 全量快照补全详情与连线。状态区固定显示 「首屏 xxx ms · 详情 xxx ms」;底部四个 tab 等全量帧到达后再延迟一帧挂载,避免拖慢首屏绘制。

安装与启用

任选 README 中的一种方式安装(安装或更新后建议 Ctrl+R 刷新;左侧栏应出现「架构透视」图标,否则确认插件已启用):

社区插件市场(收录后):插件 → 发现 → 搜索 dsh-anatomy → 安装。

GitHub 源码安装:

dsh plugin add github:h2298511604-ops/dsh-anatomy

npm:

dsh plugin add dsh-anatomy

npm 包页面:npmjs.com/package/dsh-anatomy。

文档说明卸载时路由、监听器、定时器与打开的流连接会随 ctx.effect 清理,不留后台定时器。

典型用法

整页架构透视

  1. 点击左侧栏「架构透视」图标(面板 id = anatomy),主区域打开「DSH 架构透视 · 实时架构」。
  2. 再次点击侧栏图标或切换到其他面板即可关闭。
  3. 用 Header 的「会话过滤」选「全部会话」或某一标题会话;选中后舞台连线、指标、工具视图、日志与时间线均只统计该会话,点「×」或选回「全部会话」恢复全量。

会话内紧凑版

不离开当前会话时,可:

  • 在会话 header 工具区点击架构图标(title「在右侧栏打开架构透视」),或
  • 右侧栏 guide 的「+」→「架构透视」。

同一会话再次点击会聚焦该 tab;紧凑版顶部有会话下拉(默认同当前会话)、状态 pill 与「全屏」按钮;舞台缩略图与「全部组件域 · 14」列表可快速点选域并查看最近调用。

排障时常用操作

  1. 在 组件架构 中搜索插件/服务/工具名,点选后在右栏看状态、方法与最近事件。
  2. 在舞台点击有高流量的连线,右栏打开「调用关系详情」,使用「在调用日志中过滤」跳转。
  3. 暂停/继续仅停止圆点动画与重绘,数据仍接收(README 交互说明);需要对照静态结构时可先暂停再截图。

时间窗口需心中有数:舞台连线与多数调用明细按近 120s;运行指标 tab 数值来自 Host 约 60s 滚动窗口。

适用场景与注意

适合:需要可视化理解 DSH 五层架构、核对工具/模型/会话/MCP 实际调用路径、对照指标与日志做运行时观测的开发者。

注意:

  • 插件以当前 DSH 进程权限运行;安装前请查看 GitHub 仓库 源码与 MIT 许可证,自行评估信任边界。
  • 社区目录页 skillhub.cn 插件条目 与 GitHub 为同一生态内的分发与源码入口;DSH 理念是「一切皆插件」,该目录为社区站点,与 DeepSeek / 幻方无文档所述的官方从属关系。
  • 需 Node >= 20;客户端通过 dsh.client 注入 UI 槽位、locale 与 theme(见 package.json 的 dsh.client.inject)。

结尾

dsh-anatomy 把 DSH 运行时收成一张可交互的分层架构图:十四组件域、真实调用连线、四视图观测与会话过滤,并区分 lite/全量快照以兼顾首屏速度。若要安装或提 issue,可从插件目录页与仓库入手:

  • 目录页:https://www.skillhub.cn/plugins/h2298511604-ops/dsh-anatomy
  • GitHub:https://github.com/h2298511604-ops/dsh-anatomy
羽毛球分组比赛记分
小程序二维码

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

Xiaoye