返回插件市场

dsh-dock

界面与体验

wycto/dsh-dock

DeepSeek Harness 功能中枢,通过管理面板统一注册和开关小功能,如模型余额、Token 用量记录和任务动画。

  • ai-agents
  • cordis
  • dsh
  • dsh-plugin
GitHub Stars
3GitHub
浏览量
0DSH Plugin Hub
Forks
0GitHub
开放问题
0GitHub Issues
Manifest 版本
0.9.2dsh-dock
最近推送
2026年9月2日GitHub
许可证
MITJavaScript
插件类型
Host + Client同时运行于 Host 与 Web Client

验证与兼容性

这里展示目录实际采集到的证据;未声明的信息会明确标为未知。

运行时已验证
01精确来源: npm · dsh-dock@0.9.202验证时间: 2026年9月3日03验证版本: 0.1.0-rc.7
当前版本兼容性
已在当前目录版本验证
声明的 Harness 范围
未声明
声明的平台
未声明
适用 Profile
web
构建授权
未检测到需要
权限声明
未声明
外部服务
未声明
遥测声明
未知
未发现已知风险标记

这不是安全背书;安装前仍应查看源码、权限和配置。

查看证据与判定范围

验证仅覆盖标出的来源、版本和 Harness 环境,不代表未来版本仍然兼容。

  • dsh-dock@0.9.2
  • 插件已在隔离环境完成加载检查。

README

查看源文件

dsh-dock · 功能坞

npm version license

DeepSeek Harness 功能坞插件:用一张管理面板,统一注册、开关所有小功能。

模型余额、用量记录、模型设置、图片理解代理……这些散落的小功能,全部收进一个「功能坞」: 每个功能是独立模块,有注册表、有开关、有错误隔离。新功能按模块追加,老功能互不牵连。

功能坞首页总揽


功能一览

功能说明
用量记录记录全部 LLM API 调用:秒级时间筛选、Token/费用统计(峰谷计价 + 官网价目自动同步)、分组汇总、明细检索与 CSV 导出
模型设置编辑各 Provider 模型目录:输入类型(文本/图片 + 标注)与思考强度档位;图片能力可由你手动声明,新增 Provider 自动刷新加载,写回官方配置热生效
模型余额展示所有模型 Provider 账户余额(5 分钟自动刷新)
任务动画19 种任务运行动画(含星际远征、星云潮汐、曲速航道、量子雷达、星座网络、深海脉动、神经电路等)与完成通知(通知音、浏览器系统通知、钉钉/飞书群机器人推送),动画速度随任务活动联动,两组开关独立,配置全部持久化

| 图片理解代理 | 图片识别等(visionproxy);原图候选默认折叠展示,图片能力以你的声明为准 | | 手机接力 | 手机扫码安全接入同一 DSH(反向代理 + 任务/备注同步);局域网电脑直连(0.0.0.0)——另起一个 0.0.0.0 绑定的完整 DSH 子实例,局域网电脑访问到的功能、交互与 127.0.0.1 完全一致(会话记录、工作区文件夹选择等) | | 心跳监视 / 主题信息 | 示例功能(纯 Client) |

会话区随身小控件:启用后,在会话输入区工具行(模型选择器左侧)显示——

  • 模型余额:当前选中 Provider 的账户余额(跟随模型切换实时更新),点击打开功能坞并定位到该 Provider 的余额详情;
  • 用量记录:当前会话的总 Token 与估算花费(10 秒静默刷新),点击打开功能坞并跳转到该会话的用量记录。

会话区余额/用量小控件

勾选「启用」即显示,点芯片跳转;每个功能可在面板页脚或设置页单独设置「会话页显示/隐藏」。

界面

点击侧栏底部「功能坞」按钮,弹出功能面板:左侧导航 = 首页总揽 + 各功能模块,右侧内容区。

用量记录页

面板支持最大化 / 最小化 / 还原、标题栏拖动、右下角缩放。


安装

dsh-dock 是 DeepSeek Harness(dsh)的插件,通过 dsh 插件命令安装:

# 安装 npm 版
dsh plugin --profile web add dsh-dock

# 或安装本地开发版(克隆仓库后)
dsh plugin --profile web add /path/to/dsh-dock

查看 / 卸载:

dsh web --dump-config                     # 查看合成配置(确认 dsh-dock 已加载)
dsh plugin --profile web remove dsh-dock  # 卸载

也可以手动在 cordis.patch.yml 中声明插件后重启 dsh。

要求:DeepSeek Harness 环境(dsh),Node.js 18+。

使用方法

快速上手

  1. 启动 dsh:npx @deepseek-ai/dsh web
  2. 打开浏览器访问 dsh 的 web 界面
  3. 左侧边栏底部找到 「功能坞」 按钮,点击弹出功能面板
  4. 面板左侧是导航:首页总揽 + 各功能模块;右侧是对应内容区

启用 / 停用功能

每个功能有独立开关,两个入口:

  • 弹窗页脚:进入某个功能页,页脚显示「已启用(点击停用)/ 已停用(点击启用)」
  • 设置页:侧栏底部 → 设置 → 功能坞,每个模块卡片上有开关

停用某功能后,其菜单项、首页卡片、会话区小控件一并隐藏。

会话区随身小控件

启用「模型余额」「用量记录」后,会话输入区工具行(模型选择器左侧)会出现两个小芯片:

  • ⛁ 会话用量:显示当前会话的 Token 数与估算费用(10 秒自动刷新)
  • 余额:显示当前选中模型的 Provider 账户余额(跟随模型切换实时更新)

点击芯片直接跳转功能坞对应页。每个功能可在面板页脚或设置页单独设置「会话页显示 / 隐藏」。

各功能使用

用量记录

  1. 打开功能坞 → 用量记录
  2. 使用顶部筛选:时间范围(秒级)、会话、提供商、模型(与提供商联动)、状态、推理强度
  3. 查看 9 张 KPI 卡(调用次数 / Token / 输入 / 缓存命中 / 命中率 / 输出 / 金额 USD / 金额 CNY / 累计耗时)
  4. 「分组汇总」按 无 / 提供商 / 模型 / 状态 / 强度 维度切换
  5. 明细表 15 列可排序,100 行/页,点击「会话 ID」即筛选该会话;行右侧「详情」看单次调用信息
  6. 「CSV 导出」下载当前筛选结果

模型余额

  1. 打开功能坞 → 模型余额
  2. 列表展示全部已配置 Provider 的余额/配额状态(每 5 分钟自动刷新,可手动「刷新」)

任务动画

任务动画设置页:19 种氛围模式、新版双工位桌面伙伴与大小控制

  1. 打开功能坞 → 任务动画,两组开关完全独立、按需组合:

    • 运行动画:任务进行中才出现,8 种氛围模式任选(默认「流光细线」),速度随任务吞吐自动加快(Token 速率驱动):
      • 流光细线:顶部细线流光往返
      • 呼吸光点:状态徽标圆点呼吸
      • 轨道光环:细环绕圆点旋转
      • 环屏巡航:一颗光点沿屏幕边缘巡航整圈
      • 桌面伙伴:CSS 3D 立体的具象人物坐在紧凑双工位前,任务活动越密集动作越快;流级实时同步任务阶段——模型思考时微抬头、单手托下巴,正文输出/写代码时低头键入右侧工位,查资料时转头扫视左侧屏幕;整卡可拖到屏幕任意位置(位置持久化),右下角手柄 / 面板滑块可缩放大小(85%~220%,自动保存)
      • 代码雨:字符列沿屏幕缓落如数据流
      • 星野:细碎星点飘移闪烁,带弯月与流星
      • 极光:屏幕顶部柔光带缓慢呼吸流动
    • 完成通知:任务结束时右上角弹出通知卡片(标题 / 模型 / 耗时 / 回合步骤 / Token / 结果摘要 / 结束原因),可分别开关「完成 / 异常」通知、选择停留时长、开启浏览器系统通知(仅页面后台时推送);提示音 6 种 WebAudio 合成音效可选(完成 / 异常各配一音,可单独试听)
  2. 任务结束动效自动消失,完成瞬间一缕流光掠过;功能坞面板打开时环境动效自动隐藏避免重叠

  3. 钉钉推送(可选):任务结束由宿主直发 markdown 消息到钉钉群机器人(浏览器关着也能推)——填入 Webhook 地址保存,「发送测试消息」验证连通;机器人安全设置选「自定义关键词」填「任务」或「dsh」;推送哪些事件跟随上方「完成 / 异常通知」开关

  4. 飞书推送(可选):与钉钉同款消息以卡片形式推送到飞书群机器人——填入 Webhook 地址(https://open.feishu.cn/open-apis/bot/v2/hook/…)保存,「发送测试消息」验证连通;可与钉钉同时开启

  5. 所有配置(动画开关 / 动画模式 / 桌面伙伴大小 / 通知各项 / 提示音 / 钉钉、飞书 Webhook)经宿主 settings 持久化,重启 dsh 后自动恢复

模型设置

模型设置:Provider 自动刷新、原图候选折叠与用户声明图片能力

  1. 打开功能坞 → 模型设置
  2. 编辑各 Provider 的模型目录:输入类型(文本 / 图片)、思考强度档位;新建 Provider 后进入页面会自动重读目录,顶部和底部都可手动刷新
  3. 是否可直接识图以你勾选的「图片」能力为准;运行时候选仅作辅助提示
  4. 保存后写回官方配置,即时生效(无需重启)

图片理解代理(visionproxy)

  • 用于图片内容识别等场景。原图直发候选默认折叠,模型设置中勾选「图片」输入类型的模型即可走该通道;请按实际 Provider 能力选择,端点不支持时取消该标记即可恢复代理识别。

手机接力

主 DSH 默认只监听 127.0.0.1(官方 CLI 拒绝 --host 0.0.0.0,因为浏览器表层没有登录认证)。「远程访问」在不改主实例绑定的前提下提供带登录的远程入口:

  1. 设置账号密码并开启:功能坞「远程访问」页填账号密码点开启,网关监听 0.0.0.0 的独立端口(默认主端口+1,如主实例 3080 → 网关 3081,可改)——这是唯一的远程入口,主实例保持仅本机,结构上不存在免登录的直连路径。网关与主服务是同一台机器上的两个监听,不能共用一个端口。
  2. 设备登录:任何设备(电脑/手机/平板)访问 http://<电脑IP>:<网关端口>,自动跳转登录页,账号密码登录后使用与本机完全一致的 DSH——同一个实例,会话、正在进行的任务进度、设置实时一致。会话 Cookie 7 天滑动过期;「退出登录」按钮随时注销。
  3. 异地组网:Tailscale/ZeroTier 等虚拟组网内直接用组网 IP 访问同一入口,效果与局域网相同。
  4. 安全机制:密码只存加盐哈希;登录失败按来源 IP 限速(10 分钟 10 次);修改密码后所有设备立即下线;关闭远程访问即停止网关并注销所有会话。工作区目录选择自动为浏览器浏览模式(可跨盘输入路径);远程页面的兼容兜底(crypto.randomUUID)由网关注入。

心跳监视 / 主题信息 | 示例功能(纯 Client) |

会话区随身小控件:启用后,在会话输入区工具行(模型选择器左侧)显示——

  • 模型余额:当前选中 Provider 的账户余额(跟随模型切换实时更新),点击打开功能坞并定位到该 Provider 的余额详情;
  • 用量记录:当前会话的总 Token 与估算花费(10 秒静默刷新),点击打开功能坞并跳转到该会话的用量记录。

会话区余额/用量小控件

勾选「启用」即显示,点芯片跳转;每个功能可在面板页脚或设置页单独设置「会话页显示/隐藏」。

界面

点击侧栏底部「功能坞」按钮,弹出功能面板:左侧导航 = 首页总揽 + 各功能模块,右侧内容区。

用量记录页

面板支持最大化 / 最小化 / 还原、标题栏拖动、右下角缩放。


安装

dsh-dock 是 DeepSeek Harness(dsh)的插件,通过 dsh 插件命令安装:

# 安装 npm 版
dsh plugin --profile web add dsh-dock

# 或安装本地开发版(克隆仓库后)
dsh plugin --profile web add /path/to/dsh-dock

查看 / 卸载:

dsh web --dump-config                     # 查看合成配置(确认 dsh-dock 已加载)
dsh plugin --profile web remove dsh-dock  # 卸载

也可以手动在 cordis.patch.yml 中声明插件后重启 dsh。

要求:DeepSeek Harness 环境(dsh),Node.js 18+。

使用方法

快速上手

  1. 启动 dsh:npx @deepseek-ai/dsh web
  2. 打开浏览器访问 dsh 的 web 界面
  3. 左侧边栏底部找到 「功能坞」 按钮,点击弹出功能面板
  4. 面板左侧是导航:首页总揽 + 各功能模块;右侧是对应内容区

启用 / 停用功能

每个功能有独立开关,两个入口:

  • 弹窗页脚:进入某个功能页,页脚显示「已启用(点击停用)/ 已停用(点击启用)」
  • 设置页:侧栏底部 → 设置 → 功能坞,每个模块卡片上有开关

停用某功能后,其菜单项、首页卡片、会话区小控件一并隐藏。

会话区随身小控件

启用「模型余额」「用量记录」后,会话输入区工具行(模型选择器左侧)会出现两个小芯片:

  • ⛁ 会话用量:显示当前会话的 Token 数与估算费用(10 秒自动刷新)
  • 余额:显示当前选中模型的 Provider 账户余额(跟随模型切换实时更新)

点击芯片直接跳转功能坞对应页。每个功能可在面板页脚或设置页单独设置「会话页显示 / 隐藏」。

各功能使用

用量记录

  1. 打开功能坞 → 用量记录
  2. 使用顶部筛选:时间范围(秒级)、会话、提供商、模型(与提供商联动)、状态、推理强度
  3. 查看 9 张 KPI 卡(调用次数 / Token / 输入 / 缓存命中 / 命中率 / 输出 / 金额 USD / 金额 CNY / 累计耗时)
  4. 「分组汇总」按 无 / 提供商 / 模型 / 状态 / 强度 维度切换
  5. 明细表 15 列可排序,100 行/页,点击「会话 ID」即筛选该会话;行右侧「详情」看单次调用信息
  6. 「CSV 导出」下载当前筛选结果

模型余额

  1. 打开功能坞 → 模型余额
  2. 列表展示全部已配置 Provider 的余额/配额状态(每 5 分钟自动刷新,可手动「刷新」)

任务动画

任务动画设置页:19 种氛围模式、新版双工位桌面伙伴与大小控制

  1. 打开功能坞 → 任务动画,两组开关完全独立、按需组合:

    • 运行动画:任务进行中才出现,8 种氛围模式任选(默认「流光细线」),速度随任务吞吐自动加快(Token 速率驱动):
      • 流光细线:顶部细线流光往返
      • 呼吸光点:状态徽标圆点呼吸
      • 轨道光环:细环绕圆点旋转
      • 环屏巡航:一颗光点沿屏幕边缘巡航整圈
      • 桌面伙伴:CSS 3D 立体的具象人物坐在紧凑双工位前,任务活动越密集动作越快;流级实时同步任务阶段——模型思考时微抬头、单手托下巴,正文输出/写代码时低头键入右侧工位,查资料时转头扫视左侧屏幕;整卡可拖到屏幕任意位置(位置持久化),右下角手柄 / 面板滑块可缩放大小(85%~220%,自动保存)
      • 代码雨:字符列沿屏幕缓落如数据流
      • 星野:细碎星点飘移闪烁,带弯月与流星
      • 极光:屏幕顶部柔光带缓慢呼吸流动
    • 完成通知:任务结束时右上角弹出通知卡片(标题 / 模型 / 耗时 / 回合步骤 / Token / 结果摘要 / 结束原因),可分别开关「完成 / 异常」通知、选择停留时长、开启浏览器系统通知(仅页面后台时推送);提示音 6 种 WebAudio 合成音效可选(完成 / 异常各配一音,可单独试听)
  2. 任务结束动效自动消失,完成瞬间一缕流光掠过;功能坞面板打开时环境动效自动隐藏避免重叠

  3. 钉钉推送(可选):任务结束由宿主直发 markdown 消息到钉钉群机器人(浏览器关着也能推)——填入 Webhook 地址保存,「发送测试消息」验证连通;机器人安全设置选「自定义关键词」填「任务」或「dsh」;推送哪些事件跟随上方「完成 / 异常通知」开关

  4. 飞书推送(可选):与钉钉同款消息以卡片形式推送到飞书群机器人——填入 Webhook 地址(https://open.feishu.cn/open-apis/bot/v2/hook/…)保存,「发送测试消息」验证连通;可与钉钉同时开启

  5. 所有配置(动画开关 / 动画模式 / 桌面伙伴大小 / 通知各项 / 提示音 / 钉钉、飞书 Webhook)经宿主 settings 持久化,重启 dsh 后自动恢复

模型设置

模型设置:Provider 自动刷新、原图候选折叠与用户声明图片能力

  1. 打开功能坞 → 模型设置
  2. 编辑各 Provider 的模型目录:输入类型(文本 / 图片)、思考强度档位;新建 Provider 后进入页面会自动重读目录,顶部和底部都可手动刷新
  3. 是否可直接识图以你勾选的「图片」能力为准;运行时候选仅作辅助提示
  4. 保存后写回官方配置,即时生效(无需重启)

图片理解代理(visionproxy)

  • 用于图片内容识别等场景。原图直发候选默认折叠,模型设置中勾选「图片」输入类型的模型即可走该通道;请按实际 Provider 能力选择,端点不支持时取消该标记即可恢复代理识别。

手机接力

主 DSH 默认只监听 127.0.0.1(官方 CLI 拒绝 --host 0.0.0.0,因为浏览器表层没有登录认证)。「远程访问」提供账号密码登录的网关作为唯一远程入口,主实例保持仅本机:

  1. 账号密码登录网关(唯一远程入口):在功能坞「远程访问」页设置账号密码并点开启,网关监听 0.0.0.0 的独立端口(默认主端口+1,如 3080 → 3081,可改)。所有设备(电脑/手机/平板)访问 http://<电脑IP>:<网关端口>,未登录自动跳转登录页,登录后进入的是同一个 DSH 进程——历史会话、工作区(含浏览式选目录)、正在进行的任务进度、设置实时一致。工作区目录选择钉为浏览器浏览模式(远程设备不能弹本机对话框);远程页面的兼容兜底(crypto.randomUUID)由网关注入。
    • 密码只存加盐哈希;登录失败按来源 IP 限速(10 分钟 10 次);修改密码后所有设备立即下线;关闭远程访问即停止网关并注销所有会话。
    • 旧版「服务器模式(0.0.0.0)」与「扫码令牌接力」已被此方案取代:前者把无认证的 DSH 裸露给局域网,后者双实例任务状态不同步。开启远程访问时会自动清理旧的 0.0.0.0 webserver 补丁行(提示重启后回到仅本机)。

心跳监视 / 主题信息

  • 示例功能,展示纯 Client 功能模块的写法

常见问题

  • 插件会消耗 token 吗:默认不会。用量记录/模型余额/任务动画/模型设置都是被动监听或本地查询,不调用 AI。唯一主动调 AI 的是「图片理解代理」(用视觉模型识图),它默认关闭,需你在模型设置里手动开启才生效;开启后每次识图按所选视觉模型计费。
  • 功能开关刷新后重置:v0.5.0 起功能开关已持久化(浏览器本地存储),刷新/重启后保持。
  • 任务动画/通知不生效:动画路由与配置持久化在宿主进程内,旧宿主需重启 dsh web 加载(面板页会提示「宿主进程是旧版本」)。
  • 用量记录空白:确认 dsh 是较新版本且插件宿主已加载(查看启动日志含 [dsh-dock] host half loaded);旧宿主进程需重启 dsh web 加载新路由。
  • 余额显示「需登录 / 无密钥」:对应 Provider 未在 dsh 凭据中配置可查询余额的密钥,属正常状态提示。

开发:新增一个功能模块

每个功能是一个 features/<id>/ 目录,由两部分组成:

features/<id>/
  host.js        # 宿主半部:注册 RPC 路由 / 定时任务(纯 ESM,零构建)
  view.js(x)     # 客户端视图:渲染面板内容(自带样式,CSS 类名带前缀隔离)

在视图模块导出功能描述符:

export const feature = {
  id: "my-feature",
  name: "我的功能",
  order: 160,              // 菜单排序(首页固定第一,数值越大越靠后)
  accent: "#22c55e",       // 品牌色
  description: "…",
  css: "…",
  View: MyView,            // 面板内容组件,收到 { ctx, feature, params }
  HomeStat: MyStat,        // 可选:首页总揽卡片统计
  Chip: MyChip,            // 可选:会话输入区小控件
  Overlay: MyOverlay,      // 可选:功能全局浮层(功能启用即常驻整页挂载,如任务动效/通知)
};

外壳只做组装:宿主半部在 index.js 注册,客户端在外壳 src/client.jsx 装配。 每个模块可整体拎出单独打包发布(scripts/extract-feature.mjs 生成独立包骨架, 独立包装回后经 dockBridge 注册回功能坞菜单)。

许可

MIT

评论

0
最新优先