
Security News
Deno Goes the Way of the Dinosaur
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.
DeepSeek Harness 的 HUD 状态栏插件:在输入区下方常驻显示会话实时信息(状态 / 上下文占用 / 令牌用量 / 轮次步数 / 计时 / 用时),模拟 pi-agent-hud 的显示体验。
DeepSeek Harness(DSH)的 HUD 状态栏插件:在 Web GUI 输入框下方常驻显示当前会话的实时信息,模拟 pi-agent-hud 的显示体验。
状态 · 上下文占用 · 令牌 · 计时 · 模型 · 路径 · 使用统计 · 费用 · 上一次会话
分两行呈现,均位于输入框下方的 conversation.composer.dock 状态栏位。
第一行(实时信息栏)
| 区段 | 说明 | 数据源 |
|---|---|---|
| 状态 | 空闲 / 思考中 / 输出中(彩色呼吸圆点) | useSession(running / partial) |
| 上下文 | 占用百分比 + 进度条(≥75% 黄、≥90% 红)+ 已用/窗口 | contextPressure 投影 |
| 令牌 | ↑输入 ↓输出 + 缓存命中率 | tokenUsage 投影 |
| 会话 | N 轮 · M 步 | sessionStats 投影 |
| 计时 | LLM 耗时 / 工具耗时 / 平均 TTFT | sessionStats 投影 |
| 用时 | 当前回合实时已用时长(运行中每秒刷新) | turnTimings |
第二行(明细:模型 / 路径 / 使用统计 / 费用 / 上一次会话)
| 区段 | 说明 | 数据源 |
|---|---|---|
| 模型 | 当前会话模型名 | ctx.modelDirectories(可选服务,按会话订阅共享 store) |
| 路径 | 当前会话工作目录(cwd,悬停显示完整路径) | useSessions → byId[current].cwd |
| 使用统计 | 输入 X · 输出 Y(悬停显示未缓存/缓存读/缓存写分桶) | tokenUsage 投影 |
| 费用 | 估算费用(单价 × 令牌量,按模型定价) | tokenUsage 投影 × pricing.ts 价格表 |
| 上一次会话 | 最近一个非当前会话:标题 + 令牌 + 相对时间 | useSessions → SessionListState.ids |
所有令牌/计时/轮次数字都来自 Host 计算的「全日志持久投影」(sessionStats / tokenUsage / contextPressure),翻页与压缩(compaction)都不会改变它们。
DSH 只提供令牌用量、不提供计费数据,因此「费用」是本插件按 单价 × 令牌量 估算的,单价表在 src/client/pricing.ts 中可编辑(默认人民币,单位 = 每百万 token):
deepseek-chat / deepseek-v3:输入 ¥2 · 缓存读 ¥0.5 · 输出 ¥8deepseek-reasoner / deepseek-r1:输入 ¥4 · 缓存读 ¥1 · 输出 ¥16deepseek-v4:占位价,请按你的部署实际单价修改deepseek-chat 单价货币前缀 CURRENCY 与价格表都在 pricing.ts 顶部,改完 pnpm build 即可。模型名取自 ctx.modelDirectories(与输入框的模型选择器共用同一份目录),因此费用会按实际模型计价;若 ui-model-selection 被组合移除,则模型段与按模型计价退化为默认单价。
package.json 的 dsh.client 清单 + exports["./client"] 让 modules 节点半边把它扫进 window.__DSH_BOOT__,浏览器半边经 ctx.slots.register 把组件挂到 conversation.composer.dock。ctx.slots.inject('conversation.composer.dock', …):等待该槽位被声明后再注册,槽位塌缩时随之卸载。useSession / useSessions / useProjection)、可选服务 ctx.modelDirectories(经 useSyncExternalStore 订阅其 store)与类型级导入,无任何 @deepseek-ai 值级跨包导入。pnpm install
pnpm build # 产出 lib/index.js(host 半)与 lib/client.js(浏览器半)
pnpm typecheck # 可选:类型检查
从本地仓库(开发):
dsh plugin --profile web add link:$(pwd)
发布到 npm 后:
dsh plugin --profile web add dsh-hud
安装后重启 dsh web 生效。
也可以手动把 dsh-hud 加入该 profile 的 dsh.profile.bundles(等价于 dsh plugin add 的效果)。
pricing.ts,本插件不做账单级精确计算。tokenUsage 投影(若该会话未被打开过、投影尚未拉取,则令牌段隐藏)。MIT
FAQs
DeepSeek Harness 的 HUD 状态栏插件:在输入区下方常驻显示会话实时信息(状态 / 上下文占用 / 令牌用量 / 轮次步数 / 计时 / 用时),模拟 pi-agent-hud 的显示体验。
The npm package dsh-hud receives a total of 52 weekly downloads. As such, dsh-hud popularity was classified as not popular.
We found that dsh-hud demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.

Security News
Anthropic’s free OSS Scanner uses Mythos and other Claude models to find open source vulnerabilities and send maintainers reports with proposed fixes.

Security News
On Front Lines’ Early Adopters: CISO podcast, Andrew Becherer shares lessons from Datadog, weighs the long-term costs of AI-built tools, and explains how founders can actually gain a CISO’s trust.