Skip to content
dsh.fish
Bundle

dsh-context-dashboard

DSH 会话上下文统计面板:统计每个会话的消息数、轮次、工具调用、字符数与预估 token,生成全量/按项目上下文报告,帮你看清上下文消耗大户。Context usage dashboard for DeepSeek Harness — per-session message/token statistics and context reports (zstd + plaintext logs).

Source
uckkk
stars
1 stars
License
MIT
Updated
Updated 7 days ago

Readme

# dsh-context-dashboard · DSH 会话上下文统计面板

[![npm](https://img.shields.io/npm/v/dsh-context-dashboard)](https://www.npmjs.com/package/dsh-context-dashboard)
[![GitHub](https://img.shields.io/github/stars/uckkk/dsh-context-dashboard)](https://github.com/uckkk/dsh-context-dashboard)
[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)

统计 DeepSeek Harness(DSH)本地会话的上下文消耗:每个会话的消息数、轮次、工具调用、字符数与**预估 token**,并生成全量/按项目的上下文报告。
**Context usage dashboard for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)** — per-session token/message statistics and context reports, so you know exactly where your context budget goes.

支持 **zstd 压缩**(`.jsonl.zstd`,DSH 默认存储格式)与**明文**(`.jsonl`)会话日志。纯 Node 实现,零第三方运行时依赖。

## 功能 Features

| 工具 | 说明 |
|---|---|
| `session_stats` | 每个会话:消息数、用户/助手消息、工具调用、轮次、字符数、预估 token;可按 token/消息数/时间排序 |
| `context_report` | 全局报告:总消息、总预估 token、**Top 消耗会话**、按项目(工作目录)分组汇总 |

## 安装 Install

```sh
dsh plugin --profile web add dsh-context-dashboard
# 或任意 profile:dsh plugin --profile <name> add dsh-context-dashboard
```

## 使用 Usage(agent 工具)

- 「哪个会话消耗的上下文最多?」→ `session_stats`(默认按预估 token 降序)
- 「给我一份全局上下文报告」→ `context_report`
- English: "Which session uses the most context?" → `session_stats`

预估 token = 字符数 ÷ 1.5(中文为主场景的经验值),仅供参考。

## 为什么选它 Why

- **上下文预算管理**:agent 会话越长越贵,先看清再决策(清理/导出/压缩)
- **成本可见**:Token 消耗一目了然

## 配套插件 Companion plugins

- [dsh-session-export](https://github.com/uckkk/dsh-session-export) — 会话导出/备份
- [dsh-session-search](https://github.com/uckkk/dsh-session-search) — 跨会话全文搜索

## License

MIT © istone

Install

dsh plugin --profile web add github:uckkk/dsh-context-dashboard

Profile: web

  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source