npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-models-radar

v0.1.23

Published

Model capability radar for the DeepSeek Harness web GUI: a Settings tab that charts codexradar crowd-benchmark scores per model tier — task-composition bars, 7-day IQ trend, efficiency badges

Readme

dsh-models-radar

面向 DeepSeek Harness Web GUI 的模型能力雷达插件。插件读取 deng.codexradar.com 的公开众测数据,在设置页增加「模型雷达」页面,并在输入框工具行内(模型选择器左侧)显示当前 session 所选模型的 DeepSWE 实时能力读数。

截图预览

设置页 · 能力总览 — 每基座最强档排行,行内标注分数出处 Harness(Codex / Claude Code / DSH / ZCode / Grok / Kimi Code / Antigravity / CodeBuddy),点击任意行切换下方图表的档位。

设置页 · 能力总览

能力浮层 — 点击输入框旁的能力读数展开:跨基座对比选型 + 当前档位详情,「当前」标记实时跟随会话模型。

能力浮层

亮点

  • 分数出处一眼可辨。 每个基座行内都带 Harness 徽章(Codex / Claude Code / DSH / ZCode / Grok / Kimi Code / Antigravity / CodeBuddy,站点同款配色),档位选择器的选项同样写全「模型 · 力度 · Harness」;识别不了的基座不打标,绝不猜测。
  • 每基座最强档排行。 能力总览按基座聚合,行内嵌固定 0–110 绝对刻度的量级条与 24h 趋势信号,展开可查看该基座全部推理力度档位。
  • 24h / 7d 双窗 IQ 趋势。 页签切换两个时间窗,各自独立缩放与统计(区间变化、最低、平均、最高);曲线按能力等级分段着色。
  • 成本 × IQ 三视角对比。 综合成本(站点同款「2.5 倍价格可换 1.35 倍速度」折算公式,图内归一化)、时间成本、费用成本页签切换;颜色=基座、形状=推理力度,同基座档位以折线相连,越靠左上越高效。悬停读数与站点同构三行:归属(展示名 · 计费 · Harness · 力度)、IQ(通过/总数)、当前指标与样本数。
  • 社区体感分。 codexradar.com 主站社区按近 7 天 / 近 24 小时滚动窗打出的 0–10 体验评分柱状图:按基座分组、组内按推理力度排列,柱色=基座,当前选中档位高亮(近似命中带 ≈),无人评分的档位以「未评分」占位;双窗独立计新鲜窗口,全局数据、与评测频道无关。
  • 输入框旁实时读数。 通过 DSH 官方 per-session 模型目录精确匹配 model@reasoningEffort,会话切换模型立即更新;点击展开能力浮层做跨基座对比选型。
  • 轻量、零凭据、可离线。 浏览器不直连上游(Host 同源代理),按类别新鲜窗口刷新、窗口内零上游请求;上游不可用时自动回退本地快照;不请求任何凭据、不提交任何数据。

功能

  • 通过 settings.section 扩展点增加 设置 → 模型雷达 页面
  • 通过 settings.plugin.item 扩展点增加 设置 → 插件 → 可配置插件 的「模型雷达」卡片(显示会话能力浮窗开关,偏好存 Host 设置)
  • 能力总览:按基座模型聚合,可展开查看所有推理力度档位,行内 Harness 徽章标注分数出处
  • 进入默认选中当前会话模型:每次进入按档位匹配规则解析当前对话正在使用的模型档位(无法解析会话选择时以部署默认模型兜底),总览中该行带「当前」标记,手动选择仅本次进入内有效
  • 使用固定 0–110 IQ 刻度,跨频道保持一致的能力等级语义
  • IQ 趋势页签:近 24 小时 / 近 7 天切换,各窗独立 y 轴缩放与完整统计,选择被记住
  • 成本 × IQ 对比卡:综合 / 时间 / 费用三个页签,对数横轴,模型 chip 行多选筛选,Codex 跑的 DSV4 两档默认隐藏(与站点一致)
  • 社区体感分卡:近 7 天 / 近 24 小时页签(选择被记住),两窗槽位一致、独立 15 分钟新鲜窗口;仅设置页,不进浮层
  • 支持两个评测频道:
    • deep-swe:代码修复任务,binary-majority 多数票评分
    • pompeii-adjacency:视觉恢复任务,连续 Adjacency F1 评分
  • 语义化任务诊断:
    • DeepSWE:通过 / 投票分歧 / 失败
    • Pompeii:较低 / 一般 / 良好 / 优秀
    • 待关注任务优先排序与本地筛选
    • 任务标题点击直达源仓库(DeepSWE 为 GitHub 项目),标题后带站点同款编程语言徽章(Py/JS/TS/Go/Rust)
  • 效率指标徽章:IQ、平均费用、平均耗时、缓存命中率、24h 运行数
  • 能力浮层:从输入框旁读数展开,总览对比选型 + 查看档位完整详情(徽章、双窗趋势、任务构成)
  • 按类别新鲜窗口刷新:总览/任务构成 15 分钟、频道列表/趋势/任务源信息 60 分钟;只重拉过期数据,窗口内零上游请求(单飞行合并)
  • 页脚常驻手动刷新按钮(绕行窗口),旁边显示最近拉取时间
  • 上游不可用时自动使用最近一次本地快照
  • 中英文 UI 文案

环境要求

  • DeepSeek Harness Web GUI
  • dsh-super-injector,用于运行时注入或持久安装本地插件
  • Node.js 22 或更高版本
  • npm

安装

从 Git 直接安装

最简单的安装方式是直接将 GitHub 仓库加入 web profile:

dsh plugin --profile web add github:hi-fangj/dsh-models-radar

也可以使用完整 Git URL:

dsh plugin --profile web add git+https://github.com/hi-fangj/dsh-models-radar.git

仓库已包含 DSH 所需的 Host 和浏览器构建产物,因此从 Git 直接安装不需要执行 dependency lifecycle script,也不需要配置 pnpm build allowlist。安装后刷新 http://127.0.0.1:3080;如果当前进程没有自动热加载新包,请重启一次 DSH。

移除通过 Git 安装的插件:

dsh plugin --profile web remove dsh-models-radar

从本地源码安装

需要开发或修改插件时,手动克隆并构建:

git clone https://github.com/hi-fangj/dsh-models-radar.git
cd dsh-models-radar
npm ci
npm run build

构建产物:

  • lib/index.js:Host ESM bundle
  • lib/client.js:带 DSH ModuleLoader 握手的浏览器 CJS bundle

构建完成后,将本地插件包加入 web profile:

dsh plugin --profile web add /插件绝对路径/dsh-models-radar

dsh plugin 会把依赖安装操作交给指定 profile,因此该命令会把插件安装到 ~/.dsh/profiles/web。仓库已包含从 Git 安装所需的构建产物;修改本地源码后,需要先执行 npm run build,再添加或重载该本地 clone。

安装后刷新 http://127.0.0.1:3080。如果当前运行的 DSH 进程没有自动热加载新包,请重启一次 DSH,然后刷新页面。

移除通过 CLI 安装的依赖:

dsh plugin --profile web remove dsh-models-radar

移除后重启 DSH,使 profile 在不包含该插件的情况下重新装配。

运行时注入与持久安装

运行时注入适合快速试用。在 DSH 会话中让 Agent 调用:

dev_inject_plugin({
  "dir": "/插件绝对路径/dsh-models-radar"
})

随后刷新一次 http://127.0.0.1:3080。运行时注入会保持到 DSH 进程重启,或主动卸载插件为止。

如需写入 web profile 的依赖和 bundle 列表,让 Agent 调用:

dev_install_package({
  "dir": "/插件绝对路径/dsh-models-radar",
  "profile": "web"
})

安装后刷新 Web GUI。DSH 重启时会再次从 profile 装配该插件。

使用方法

模型雷达页面

  1. 打开 DSH Web GUI 左下角的设置。
  2. 选择模型雷达。
  3. 在页面顶部选择 DeepSWE 或 庞贝壁画 频道。
  4. 从能力总览或档位选择器中选择模型档位。

页面每次打开都会在新鲜窗口内刷新:缓存中的数据不发上游请求,仅过期数据集被重拉。点击总览中的任意行,会同步切换下方效率指标、趋势图和任务诊断所使用的档位。

能力总览

默认每个基座模型显示当前最强档位;展开一行可查看该基座全部推理力度。IQ 进度条使用固定 0–110 绝对刻度:

| IQ | 能力等级 | | --- | --- | | < 70 | 待提升 | | 70–84.9 | 一般 | | 85–94.9 | 稳健 | | 95–99.9 | 优秀 | | ≥ 100 | 领先 |

IQ 趋势

近 24 小时与近 7 天两个页签来自同一份小时级序列的时间窗切片,各窗独立缩放 y 轴,各带一组完整统计(区间变化、最低、平均、最高)。曲线按能力等级分段着色,面积填充与曲线同色;端点与悬停标记使用所在等级的颜色。

成本 × IQ 对比

三个页签(综合成本 / 时间成本 / 费用成本)分别以对数成本轴 × 线性 IQ 轴绘制全部档位:颜色=基座(站点同款配色)、形状=推理力度(off=× · low=○ · medium=△ · high=□ · xhigh=◇ · max=⬡ · ultra=★),同基座档位按力度顺序以折线相连。越靠左上越高效。 模型 chip 行可多选筛选,同步作用于当前页签;Codex 跑的 DSV4 两档默认隐藏,与站点行为一致。

任务诊断

DeepSWE 使用上游真实的多数票判定;Pompeii 保留连续 F1 语义。筛选、计数和排序全部在浏览器本地完成,切换筛选不会增加 API 请求。

任务标题与语言徽章来自站点的任务目录(/table 端点,60 分钟窗口,经 Host 代理只截取 tasks 数组):标题在有源仓库时是外链(DeepSWE 为 GitHub 项目、Pompeii 为数据集页),徽章按站点词表显示 Py/JS/TS/Go/Rust,未知语言原样展示。目录拉取失败只丢徽章与链接,不影响频道视图。

能力浮层

点击输入框工具行里的能力读数展开浮层:顶部为全基座能力总览(供对比选型),其下为查看档位的完整详情(效率徽章、双窗 IQ 趋势、任务构成)。查看档位默认跟随会话模型;点击总览行或切换趋势卡档位下拉可临时查看其他档位,会话切换模型或浮层关闭后回到跟随。

输入框能力读数

紧凑读数(SWE IQ 标签 + 档位色分数药丸)读取的是当前 session 下一次请求选中的模型,而不是仅根据最近一次已完成回复推测。显示形式:

SWE IQ 90.2

匹配顺序:

  1. 精确匹配 model@reasoningEffort
  2. 匹配同一基座模型的最高 IQ 档位,并在分数前显示 ≈
  3. DeepSWE 榜单中完全没有该基座时隐藏胶囊

在 composer 中切换模型后,胶囊立即更新。读数每 15 分钟(最短新鲜窗口)向 Host 轮询一次,每次仅一次本地请求、每频道每窗口至多一次上游拉取;刷新失败时保留最近一次成功值。

不想在输入框旁看到胶囊?设置 → 插件 → 可配置插件 里的「模型雷达」卡片提供「显示会话能力浮窗」开关,可整体隐藏它;关闭期间胶囊不渲染、也不再后台轮询。偏好持久化在 Host 设置(跨浏览器共享、清浏览器缓存不丢失;升级前存在 localStorage 的旧选择会被一次性迁移)。

更新

cd /插件绝对路径/dsh-models-radar
git pull
npm ci
npm run build

运行时注入的插件可让 Agent 热重载:

dev_reload_package({
  "packageName": "dsh-models-radar"
})

如果 client 依赖图发生变化,请刷新页面。

卸载

卸载运行时注入的插件:

dev_uninject_plugin({
  "match": "dsh-models-radar"
})

持久安装的插件请通过 profile/plugin manager 移除 dsh-models-radar,然后重启 DSH。快照历史会保留在 ~/.dsh/plugin-data/dsh-models-radar/;仅在确认不再需要历史时单独删除该目录。

数据与隐私

插件读取 https://api.codexradar.com/api/v1 的公开免认证接口:

  • /benchmarks
  • /intelligence-efficiency
  • /iq-history
  • /leaderboard

浏览器不会直接访问上游 API。由于 api.codexradar.com 使用浏览器 Origin 白名单,Host 半通过同源接口 /model-radar/api/data 代理请求。设计原因见 ADR-0001。

本插件:

  • 不请求密码、Token 或其他凭据
  • 不提交评测结果
  • 不发送会话内容
  • 本地只保存公开评测数据快照

快照目录:

~/.dsh/plugin-data/dsh-models-radar/
├── latest-deep-swe.json
├── latest-pompeii-adjacency.json
└── iq-timeline.jsonl

架构

Browser
  ├── settings.section → 模型雷达页面
  ├── settings.plugin.item → 插件配置卡片(显示会话能力浮窗开关)
  ├── conversation.composer.dock → 当前 session 能力胶囊 + 能力浮层
  ├── GET /model-radar/api/data
  └── GET/POST /model-radar/api/pref
            │
            ▼
Host plugin
  ├── 各数据集独立新鲜窗口(效率/任务构成 15 分钟,频道列表/趋势 60 分钟)
  ├── 单飞行上游请求 + 频道全局 benchmarks 缓存
  ├── 归一化为 RadarView
  ├── settings namespace dsh-models-radar(会话能力浮窗偏好,持久化到 Host 设置)
  └── 本地快照持久化(重启后在窗口内继续服务快照)

能力胶囊订阅 DSH 官方 modelDirectories per-session store,因此模型选择变化不需要轮询即可传播。

开发

npm ci
npm run build

GitHub Actions 在每次 push/PR 时做构建验证;推送 v* tag 则自动构建、打包并发布带 tgz 附件的 GitHub Release。发版流程:

# 修改 package.json 版本并提交后:
git tag v0.1.x
git push origin main --tags

常用 DSH 开发操作:

dev_inject_plugin({ "dir": "/插件绝对路径/dsh-models-radar" })
dev_reload_package({ "packageName": "dsh-models-radar" })
dev_uninject_plugin({ "match": "dsh-models-radar" })

主要源码:

  • src/index.ts:Host 代理、刷新节流、快照
  • src/client/RadarSection.tsx:设置页状态与界面组合
  • src/client/Overview.tsx:能力总览
  • src/client/charts.tsx:趋势图和任务诊断
  • src/client/costScatter.tsx:成本 × IQ 对比散点
  • src/client/harness.ts:Harness 归属推导与档位选择器文案
  • src/client/LiveCapability.tsx:输入框工具行实时能力读数与浮层
  • src/client/ScrollFrame.tsx:溢出列表滚动条
  • src/client/scoreMetrics.ts:IQ 等级和趋势语义
  • CONTEXT.md:项目领域词汇

文档

| 文档 | 内容 | | --- | --- | | ADR-0001 | 为什么浏览器不直连上游、由 Host 同源代理 | | ADR-0002 | 按类别新鲜窗口的刷新节流设计 | | CONTEXT.md | 项目领域词汇表(模型档位、Harness、趋势等) |

故障排查

设置页没有「模型雷达」tab

  1. 确认 npm run build 已生成 lib/client.js。
  2. 使用 dev_plugin_status 确认插件处于 active 状态。
  3. 刷新一次 Web GUI,加载最新 client 依赖图。

输入框里没有能力读数

  • 确认当前模型存在于 DeepSWE 榜单。
  • 同基座 fallback 会显示 ≈;完全未知的基座按设计不显示。
  • 确认官方模型选择 UI 插件已启用。

上游刷新失败

存在历史快照时,设置页会显示最近一次成功数据。请检查 api.codexradar.com 的网络连通性;该接口不需要凭据。

许可证

MIT