sandbase-harness
sandbaseai
Local-first, self-hosted AI agent runtime and MCP bridge with sandboxed sessions, memory, credentials, audit/replay, and a local Console.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:Jimmy0123-ux/dsh-token-pet
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
English guide · 简体中文
DeepSeek Harness Desktop 的悬浮桌面宠物、运行状态反馈与 Token / 上下文可视化插件。
DSH Token Pet 将当前请求、工具调用、上下文压缩、会话归档和提示词增强等真实 DSH 事件转化为一个常驻桌面的 Q 版角色。12 个正式逐帧动作让用户无需打开日志,就能看到系统此刻处于空闲、工作、压缩、工具完成/失败或提示词生成等状态。
它不只是动画挂件:可拖动、可缩放的三标签浮窗会展示实时上下文占用、当前模型与 Token 分类、跨会话 Lifetime Ledger、服务商/模型累计、本地时区小时趋势和索引维护状态;提示词增强抽屉支持用户主动触发、预览编辑、覆盖/追加、复制、撤回和直接提交到 DSH composer。面板只读取持久化快照,历史同步由后台增量索引维护,避免打开界面时扫描全部会话。
当前发布版本:0.4.1 · Node.js >=22.19
本版修复了局部设置事件会重置其他偏好(主题 / 成本开关 / 提示音)的问题,并新增界面截图与英文文档同步。0.4.0 新增深色 / 浅色主题切换、可视化价格编辑器、成本估算改为默认关闭(可主动开启),并修复了客户端按钮文字被宿主深色样式覆盖看不清、以及皮肤 ZIP 导入导致的客户端加载失败。更早版本新增成本估算与月预算、近 7/30 日趋势、会话排行、用量数据导出、皮肤 ZIP 客户端导入与 3 套新配色皮肤、提示音主题与音量、完整中英双语界面与响应式浮窗布局。
截图由插件真实组件在 Chrome 中渲染生成(示例数据,不含任何真实会话内容)。

| 总览 | 模型 | 设置 |
|---|---|---|
![]() |
![]() |
![]() |
提示词增强抽屉:

| 宠物与浮窗 | 总览 | 设置 |
|---|---|---|
![]() |
![]() |
![]() |
在浮窗 设置 → 外观 → 界面主题,或 DSH 设置 → 用量小宠物 中:
在浮窗 设置 → 语言与通知,或 DSH 设置 → 用量小宠物 中:
新版浮窗将当前上下文/会话与终身账本明确分区;模型排行和趋势使用自适应卡片,长模型名可换行,窄宽度下标题栏使用带提示的图标按钮,正文统一滚动。
| 功能 | 界面位置 / 效果 |
|---|---|
| 当前运行状态 | 宠物右上角状态牌:空闲、工作中、工具完成、提示生成中等 |
| 上下文占用 | 宠物下方显示 上下文 xx% |
| 当前会话数据 | 浮窗“总览”中的当前上下文、轮次、步数与模型耗时 |
| Lifetime Ledger | 浮窗“总览”中的终身用量账本与模型排行 |
| 界面主题 | 设置 → 外观:深色(默认)/ 浅色,切换即时生效 |
| 本日趋势 | 按本地时区聚合的小时趋势折线图;支持切换近 7 日 / 近 30 日按日视图 |
| 成本估算 | 默认关闭;开启后浮窗“总览”显示成本卡片与月预算进度,模型页显示每模型估算成本 |
| 价格表编辑 | 设置 → 成本与预算:表格逐行编辑模型价格,支持添加 / 删除 / 保存 / 恢复默认 |
| 会话排行 | 浮窗“总览”:最耗 Token 的 5 个会话(来自持久化索引快照) |
| 模型明细 | 浮窗“模型”页,按服务商与模型展示累计用量与估算成本 |
| 设置与维护 | 浮窗“设置”页,包含尺寸、动画速度、主题、低性能模式、索引维护和动作预览 |
| 皮肤 | 内置 4 套配色;可导入本地皮肤 ZIP(客户端校验与解包,存入 IndexedDB) |
| 导出 | 设置页导出 JSON / CSV 用量统计 |
| 提示词增强 | 独立抽屉:预览、编辑、覆盖、追加、复制、撤回和直接发送 |
claude-* 前缀与 * 兜底;Shift 可自由缩放;Prompt Optimizer 规则,直接接入现有增强流程,不增加模式选择;规则只改写提示词,不执行原任务;agentDefaultModel;{{prompt}} 占位符;inputActions 写入并提交,不伪造 HTTP 请求;

| 动作 | 中文状态 | 触发场景 | 预览 |
|---|---|---|---|
idle |
空闲 | 无任务时持续播放 | ![]() |
working |
工作中 | 请求运行、会话执行 | ![]() |
eating |
压缩中 | 上下文压缩开始 | ![]() |
digesting |
整理中 | 上下文压缩完成后的整理阶段 | ![]() |
warning |
上下文预警 | 上下文接近阈值或提示异常 | ![]() |
evolve |
状态更新 | 压力档位发生变化时的庆祝动作 | ![]() |
click |
打招呼 | 用户点击宠物 | ![]() |
archive |
已归档 | 会话归档或移除 | ![]() |
tool-success |
工具完成 | 工具调用成功 | ![]() |
tool-failure |
工具失败 | 工具调用失败 | ![]() |
prompt-enhancing |
提示生成中 | 提示词增强请求执行中 | ![]() |
prompt-ready |
提示已就绪 | 增强结果返回 | ![]() |
重要:这是一个 Web 界面插件,必须在 DSH 的 Web 界面里才能显示宠物。你只需要把它装到正在运行的 DSH 网页版/桌面版即可,不需要额外执行
dsh web。
如果你已经打开 DSH 的网页版或桌面版:
dsh-token-pet;不需要执行任何命令行,也不需要 dsh web。
仅当你是用命令行从零启动 DSH 时才需要:
# 网页版:先装,再启动
dsh plugin --profile web add dsh-token-pet
dsh web
# DSH Desktop 桌面版
dsh plugin --profile desktop add dsh-token-pet
桌面版安装后重启桌面应用即可,不需要 dsh web。
# npm
dsh plugin --profile web add dsh-token-pet # 网页版
dsh plugin --profile desktop add dsh-token-pet # 桌面版
# 源码 link
git clone https://github.com/Jimmy0123-ux/dsh-token-pet.git
Set-Location dsh-token-pet
npm install
npm run build
dsh plugin --profile web add link:<本项目绝对路径> # 网页版
dsh plugin --profile desktop add link:<本项目绝对路径> # 桌面版
# 或已下载的 tgz
dsh plugin --profile web add C:\path\to\dsh-token-pet-0.2.0.tgz
安装后需要重启对应 DSH(或刷新 Web 页面),宿主与客户端更新才会生效。
这条提示表示插件被安装到了一个没有 Web UI 宿主(@deepseek-ai/dsh-web-app)的 profile。请检查:
确认目标 profile 是 web(网页版)或 desktop(桌面版);
用以下命令确认 profile 组合里包含 Web UI 宿主:
dsh --profile <name> --dump-config
如果在错误的 profile 中安装过,先移除再装到正确 profile:
dsh plugin --profile <错误profile> remove dsh-token-pet
dsh plugin --profile web add dsh-token-pet
完成后重启 DSH,再刷新页面。
宿主代码或客户端代码更新后建议完整重启对应 DSH。推荐使用 npm;开发调试使用源码 link。
npm install
npm run typecheck
npm test
node scripts/qpet-asset-audit.mjs
# 可选:仅在本地保留 Review/h3-actions 生产源时运行
python scripts/check-strip-stability.py
npm run build
npm pack --dry-run --json
当前主要门禁:
lib/index.js # DSH 宿主插件
client/client.js # 自包含 Web 客户端 bundle
发布包只包含 lib、client/client.js、文档和配置;生成源、Review 视频、ZIP、逐帧素材与 node_modules 不进入 npm 发布包。
src/index.ts 宿主路由、索引与后台协调器
src/client/index.ts 浮窗挂载、状态桥接和客户端请求
src/client/pet.tsx 宠物 HUD 与状态展示
src/client/pet-action-player.tsx 双缓冲逐帧播放器
src/client/pet-action-sheets.generated.ts 内嵌 WebP 条带注册表
assets/pet/action-sheets/ 可选宿主条带文件
docs/ 产品、制作与开发文档
scripts/ 生成、审计和稳定性脚本
tests/ host / client / persistence 回归测试
size=120、DPR≤2 时使用 540px 源 cell 降采样显示;size≤320 不超过源分辨率;src;README媒体可通过以下命令重新生成:
python scripts/build-readme-media.py
项目代码以 MIT License 发布。仓库内宠物运行时素材随本插件公开分发;若要在其他项目中单独复用美术素材,请先联系项目作者确认授权。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: desktop-pet、token-usage。