DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

EaveBounty /

EaveBounty/dsh-plugin-graph

Verified

Plugin graph · DeepSeek Harness sidebar panel: installed-plugin relationship graph, skill usage stats and token cache-cost analysis.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHubProject homepage
READMESource: main@6fc09747

中文 | English

dsh-plugin-graph(插件图谱)

DeepSeek Harness 已装插件关系图谱 —— 侧边栏展开面板:插件关系图 + 技能使用 + Token 缓存成本分析。

展示页(安装命令、三个视图说明、FAQ):https://eavebounty.github.io/dsh-plugin-graph/

English at a glance. See which installed plugins depend on each other in an interactive graph, check how many times each skill was loaded, and read your prompt cache hit rate next to how much money it saves. Everything is computed from local DSH session logs; no extra service and no upload.

license node npm

功能

一个 DSH Web 插件:侧边栏底部「插件图谱」按钮,点击展开(不跳页)浮动面板,含三个视图。

插件关系图谱

这张图证明什么:37 个已装插件按依赖/对等依赖/同类/同项目四种线型连成一张力导向网,点节点即看状态、版本、依赖清单与周下载量。

1. 图谱 — 已装插件网络图(Obsidian 关系网风格:打开时节点弹性炸开、可拖拽/平移/滚轮锚点缩放)

  • 球大小 = 调用/使用频次(log 缩放)
  • 颜色 = 类型(皮肤/主题、用量/统计、插件市场、架构/绘图、技能、核心…)
  • 亮暗 = 启用状态:启用且非依赖 → 亮;核心/依赖 → 暗灰;已装未启用 → 暗色
  • 线型:实线=依赖、点线=对等依赖、虚点线=同类、长虚线=同项目
  • 点击节点 → 详情(状态/版本/来源/分类/频次/下载量/描述/邻居)

技能使用

这张图证明什么:每个 skill 的加载次数、会话数、重复加载会话数、累计读取 tokens、平均耗时都是真实调用统计(不是估算),重复加载那一列直接指向缓存浪费。

2. 技能 — 技能目录(.dsh/skills)全部技能:加载次数、会话数、重复加载会话数、累计读取量(tokens)、平均耗时、是否已收录。

缓存分析

这张图证明什么:16 个会话、缓存命中率 97.5%、估算成本 ¥19.925、缓存节省 ¥222.253(模型 deepseek-v4-flash),下方是按优先级排列的减 Token 策略表。

3. 缓存分析 — 实时会话投影 + 历史日志扫描:输入/缓存命中/命中率/节省占比/估算成本(¥)/节省(¥)、按模型维度、今日/本周/本月周期统计(北京时间)、减 Token 策略(按优先级量化 tokens 与 ¥)。成本按 DeepSeek v4 官方价高峰/空闲分时估算(北京时间 09-12/14-18 为高峰)。

要求

  • DeepSeek Harness(web profile)
  • Node.js ≥ 22.2(node:zlib 的 zstd 支持)

安装

# 从 npm 安装(企业 scope 包,公开)
dsh plugin --profile web add @eave_bounty/dsh-graph-usage

# 从 GitHub 安装(仓库名不变,直装不受改名影响)
dsh plugin --profile web add EaveBounty/dsh-plugin-graph

# 或从本地源码目录
dsh plugin --profile web add <path-to>/dsh-plugin-graph

重启 dsh web,侧边栏底部出现「插件图谱」按钮。

包名说明:npm 发布名为 @eave_bounty/dsh-graph-usage(企业 scope,公开,当前 latest 0.1.0)。dsh plugin 按包的真实 name 对账依赖键与 dsh.profile.bundles,所以 bundles 里请写 @eave_bounty/dsh-graph-usage。客户端 bundle 同时注册 @eave_bounty/dsh-graph-usage、旧名 dsh-graph-usage 与仓库名 dsh-plugin-graph 三个 id,兼容历史命名;但 boot key 必须是真实包名。

数据源与隐私

  • 插件清单/依赖:$DSH_HOME/profiles/<profile>/package.json + 各包 manifest
  • 使用频次/缓存/技能:$DSH_HOME/sessions/**/session.jsonl(.zstd)(有界扫描:单文件 64MB 上限 + zstd 特性检测 + 内存缓存)+ 当前进行中会话的实时投影
  • 市场下载量:api.npmjs.org/downloads/point/last-week/<pkg>(10 分钟缓存,离线降级)

除周下载量外不发起外网请求,不上传任何会话数据;仓库内没有上传逻辑,可直接审阅。

API

GET /api/dsh-plugin-graph → { ok, nodes, links, meta, skills, cache, scannedSessionIds }

局限

  • 插件「使用频次」近似为会话日志中插件 id 的命中次数(多接近 0);技能维度是真实的 skill 工具调用统计。
  • 已完成会话从日志扫描;当前进行中会话由实时投影统计(客户端按 scannedSessionIds 去重,避免重复计数)。
  • 分类/项目分组为内置规则表(lib/index.js / lib/stats.js)。
  • 成本是「按官方单价推算的消耗」,不是账单;以账户实际扣费为准。

架构

  • lib/index.js(381 行)— cordis 宿主:/api/dsh-plugin-graph 端点 + pluginGraphStats 会话投影(token 桶 + 技能调用配对)
  • lib/stats.js(445 行)— 会话日志(zstd)扫描、技能清单、成本/缓存模型
  • lib/client.js(981 行)— React 客户端(window.__ModuleLoader__):图谱力模拟 + 技能/缓存视图
  • cordis.patch.yml — 注册到 bundle 的补丁
  • scripts/preflight.mjs(42 行)— 发布前校验(patch、文件存在、多 id 注册)

说明:lib/client.js 为手写校验的 JSX bundle(无独立构建步骤),修改后直接生效于 web 端。

开发自检

node --check lib/index.js && node --check lib/stats.js && node --check lib/client.js
node scripts/preflight.mjs   # 期望输出 PASS

贡献

欢迎 Issue / PR。请保持 zh/en 文案对等,并在 README.md 追加变更日志。

协议

MIT

变更日志

  • 2026-08-18 修复启动失败:运行时依赖 @deepseek-ai/dsh-home-paths 需随插件本地下发,否则 D 盘 link 加载时无法从 profile node_modules 解析。
  • 2026-08-19 修复启动失败:sessionProjections.register 缺 stateVersion(补 stateVersion: 1);补 view(state) 实现。
  • 2026-08-19 可视化语义重定义:颜色=类型、亮暗=启用状态、球大小=调用频次;移除"市场深浅=下载量"旧规则。
  • 2026-08-19 多代理企业级审评修复:双重计数(scannedSessionIds 去重)、省钱数学 ~30× 虚高修正、关闭侧边栏停止后台轮询、图刷新保留 pan/zoom、session 大文件 64MB 上限 + zstd 特性检测、图/统计内存缓存与去重、过时文案与硬编码中文修复。
  • 2026-08-19 UI/交互优化:未启用对比度提升、标签描边晕环、图例补类型色相;策略表本地化(zh/en 对等 79/79);浮动动画 5s 衰减归零、拖拽不被边界弹回、pointercancel 不误选。
  • 2026-08-19 功能正确性:collectUsage 二值 0/1 缺陷修复(逐会话计数 + 边界匹配防前缀误报);聚合成本改为按模型分别计价后求和。
  • 2026-08-20 截图与改名:README 新增图谱/技能/缓存三视图截图;npm 包改名 dsh-graph-usage(规避 erduotong 同名占用,同步 cordis.patch.yml 的 name 与文档;GitHub-only 直装不变)。
  • 2026-08-20 定价成熟化:成本改为高峰/空闲分时计价(北京时间 09-12/14-18 高峰)+ 2026-08-17 前历史价 + 按会话逐条计价;支持 prices/priceSchedule 覆盖(buildStats/getStats 可传入)。
  • 2026-08-20 周期统计:新增今日/本周/本月(北京时间天桶)成本与 token 统计,缓存分析视图展示。
  • 2026-08-20 修复客户端加载失败「bundle client.js 未注册 dsh-plugin-graph」:profile 以 dsh-plugin-graph 为 boot key 安装(旧名遗留),而客户端模块表按 boot key 校验、bundle 原注册 dsh-graph-usage。最终方案为多 id 注册:lib/client.js 用共享 factory 同时注册规范名 @eave_bounty/dsh-graph-usage 与旧名 dsh-graph-usage、dsh-plugin-graph;scripts/preflight.mjs 校验全部注册。
  • 2026-08-20 首次发布 npm:包名 @eave_bounty/dsh-graph-usage@0.1.0(企业 scope,公开 --access public);publishConfig 加 access: public;cordis.patch.yml 的 name 同步为 scoped 名;profile boot key 改为 @eave_bounty/dsh-graph-usage。
  • 2026-11-01 新增 docs/ 展示页(中文默认 + 英文)与 README.en.md;README 顶部补展示页链接、数据源与隐私说明、开发自检命令;npm 安装命令置顶。
—/ 5

No ratings yet

Verified DSH bundle

Commit 6fc0974745f5

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout