前言¶
在使用 DeepSeek Harness (DSH) 进行多智能体开发时,原始的会话日志通常以平铺的 JSON 或列表形式呈现。当涉及子 Agent 调用、工具链路和长时间轮次时,开发者难以直观地把握执行流的时间顺序与层级关系。dsh-seelog 插件将当前的 Session Log 转换为可浏览的拓扑图,以可视化的方式还原智能体的执行过程。
这是什么¶
dsh-seelog 是一个面向 DeepSeek Harness 的外部 Web 插件,由开发者 lhwu1 维护。它不修改 DSH 的源码或会话格式,而是通过“bundle”方式加载,按需读取当前会话的日志,并将其转化为具有时间维度的拓扑结构。插件旨在解决多智能体场景下逻辑流不清晰、难以快速定位特定事件的问题。
核心功能¶
插件提供了一套完整的可视化与交互机制:
-
中文语义节点映射
将输入、模型回复、工具调用、轮次、失败事件及子 Agent 映射为中文语义节点,而非原始 JSON 字段。未知工具会显示为“工具调用”或“MCP 工具调用”,便于快速识别。 -
统一时间坐标
将子 Agent 与主 Agent 放在同一时间坐标轴上。子 Agent 从主线中实际启动的位置分叉,执行完毕后汇回主线。这种设计避免了平铺列表造成的父子关系混淆。 -
导航与交互
- 固定时间概览尺:位于主图顶部,映射整个已捕获会话。青色窗口指示当前主图可见范围,点击刻度或轨道位置可平滑跳转。
- 节点检查器:点击节点或中文标签后,右侧检查器显示语义名称、类别、状态、时间及日志序号。展开后可查看完整 JSON 及相邻事件。
- 主执行线与绳结:紫色粗线表示根会话主线,节点以菱形绳结连接标签卡片,拖动视图时标签随之移动。
-
性能与限制
为防止大日志导致浏览器卡顿,插件设定了绘制限制:每条轨道最多绘制 400 个交互节点。
安装与启用¶
安装过程依赖 Node.js 环境。以 Windows 路径为例,步骤如下:
- 进入插件目录,安装依赖并验证构建:
cd D:\harness-lh-int8\dsh-seelog
npm install
npm run validate
- 将外部插件链接到运行 Web UI 的 DSH profile:
dsh plugin --profile web add D:\harness-lh-int8\dsh-seelog
dsh --profile web --dump-config
- 重启该 profile,标签栏中会出现
会话图。
典型用法¶
安装并重启后,在任意会话页面进行以下操作:
-
打开视图
切换到会话图标签,插件自动读取当前日志并生成拓扑图。 -
浏览执行过程
- 概览尺导航:点击顶部时间刻度,主图会跳转到对应时间段。
- 主图操作:鼠标滚轮水平滚动,按住左键拖动平移。松开拖动后,插件会后台请求一次当前日志,将新增事件纳入图中,页面不会刷新挤占画布。
- 查看详情:点击主线、子 Agent 轨道或中文标签,右侧检查器会加载该节点的语义信息和原始日志。
适用场景与注意¶
- 适用场景:适合需要分析多智能体协作流程、调试工具调用失败原因、或梳理复杂会话逻辑的开发者。
- 隐私与数据:插件仅读取当前会话的轻量语义字段(不包含模型正文、提示词或工具参数)。只有点击节点后,浏览器才会请求该事件及相邻两条原始日志。
- 数据持久化:不保存浏览器本地快照历史。离开或刷新页面后,需重新进入视图或拖动视图以按需读取日志。
- 配置限制:默认配置下(
cordis.patch.yml),插件最多读取 128 个谱系会话,每个会话最多 20,000 条日志事件。
结语¶
dsh-seelog 通过拓扑视图将复杂的智能体执行过程具象化。对于习惯于图形化调试的开发者,它能显著提升排查问题的效率。更多细节可查阅其 GitHub 仓库 或 社区目录。