Caelum Orbis(dsh-orbis):DSH 常驻 3D Agent 状态 HUD 与执行可视化

前言

在 DeepSeek Harness(DSH)里跑 Agent 时,任务是否在推进、工具是否在执行、长时间无输出是正常停顿还是异常,往往只能盯着对话流或反复点开侧栏。社区插件 Caelum Orbis(包名 dsh-orbis,仓库 mycherish/dsh-orbis)把 Host 侧会话事件折叠成只读快照,在 Web GUI 上提供常驻进度 HUD、悬浮 3D 能量球和可展开的 Workspace,不调用 LLM、不读推理正文。下面按定位、能力、安装与使用说明展开。

这是什么

Caelum Orbis(环枢)由 mycherish 维护,分类为客户端插件:浏览器端覆盖层 + Host 侧事件管线,面向 DSH Web 界面。当前资料中的版本为 2.1.13,许可证 MIT;要求 DSH >=0.2.2-rc.1 <0.3.0-0,Node ^22.19.0 || >=24.0.0。

它解决的是「不用打开额外面板也能看见 Agent 在干什么」:对话区右侧浮出约 470px 宽的玻璃 HUD,展示任务标题、阶段、最近活动、当前状态与真实计数;需要细节时再打开 Workspace,查看 3D 能量球、活动记录与执行时间线。所有展示来自 DSH 真实事件,插件只读、不执行工具、不写会话、不落库,也不修改 DSH 源码。

核心功能

Always-on HUD(v2)

HUD 宽 min(470px, 92vw),贴在对话区右侧(top: 118px),不挡底部输入;视口 ≤720px 时改为顶部浮动。标题栏含 Logo、名称、状态胶囊,以及打开 Workspace、固定、收起的控制。

任务区左侧为与 Workspace 共用的 WebGL 能量球(96px),右侧为任务标题(来自 session/title,缺省为「当前任务处理中」)、阶段与当前动作。运行信息标明时长与「纯事件模式 · 0 额外 Token」。最近活动最多 5 条,按成功 / 执行中 / 模型处理 / 等待 / 失败着色。当前状态用一句话描述;静默时给出基于单调时钟的真实秒数(例如已连续 45 秒无新活动),文档明确不会用「卡死」一类措辞。若 Agent 通过 todo/write 写了计划,才显示「下一步」区块。底部只展示已观察到的活动数、工具次数与运行时长。

显示模式有三种(2.1.10 起区分清楚):

模式 常驻形态 说明
自动展开 活跃时完整卡片,空闲收成 76px 能量球 使用 WebGL
始终紧凑 一行胶囊(状态 + 任务名) 仅 SVG,省 WebGL 上下文
仅能量球 右下角 76px 球 使用 WebGL

用户手动收起后,自动模式不会再次自动弹开;📌 固定后空闲也不自动折叠(手动收起优先)。

十一状态能量球

Host 用 13 族活动分类与 11 态状态机,把 turn/start、step/start、tool/call、assistant-stream 增量、approval/asked 等映射为 idle、starting、thinking、preparing、executing、responding、waiting、quiet、completed、interrupted、error。球体为真实 3D(内层 GLSL 能量材质、玻璃壳、轨道与粒子),状态切换为插值动画。

三条与误判相关的规则值得记住:agent/status: running 不等同于「思考中」,最多升到 starting;长耗时工具执行期间保持 executing,静默单独用 quietLevel 上报;completed / interrupted / error 为带时限保持态后回落。静默分档自 30 秒起算,避免普通推理停顿被标成「安静」。

Workspace 工作空间

展开后约为 780×600(最大 94vw×88vh)的深色磨砂玻璃面板:左侧大能量球与图例,右侧最多 40 条实时活动(工具 / 文件 / 审批 / Agent),底部为执行时间线与统计(轮次、步数、工具、帧率等)。设置项包括总开关、上述三种显示模式、活动列表、30/60 FPS、粒子密度、轨道与光效、减少动态、后台暂停等。

架构与安全(使用侧结论)

Host 监听会话事件,经白名单化、分类、关联与状态机生成 OrbitSnapshot,经 GET /api/orbis/state 与 GET /api/orbis/events(SSE,轮询兜底)推到浏览器。浏览器通过 shell.overlay 挂载 HUD、Launcher 与 Workspace。

隐私上,传到前端的字段经 redactor 白名单处理:不包含 rawArguments、reasoningText、fileContent 等;路径只保留 basename 并截断;流式帧仅读 chunk.type。插件不新增遥测、不访问第三方域、无写接口。卸载时路由与 SSE 会清理;总开关关闭可连同渲染器一起释放。

性能方面,默认 30 FPS(可选 60),HUD 为纯 DOM;标签页隐藏或 Workspace 关闭时会暂停对应 WebGL 循环。

安装与启用

Desktop 配置下,在终端执行官方安装命令:

dsh plugin --profile desktop add dsh-orbis

若 Harness 由 dsh web 启动,把 desktop 换成 web:

dsh plugin --profile web add dsh-orbis

安装完成后刷新一次 Harness 页面(浏览器对每个页面代次通常只加载一次插件资源)。

也可在 GUI 中:设置 → 插件 → 添加插件 → 安装第三方插件,包名填写 dsh-orbis。GitHub tag、离线包、本地 link: 开发安装及卸载方式见仓库 README「开发」下的安装 / 卸载小节。

插件目录页:SkillHub — mycherish/dsh-orbis。

典型用法

  1. 按上一节安装并刷新页面,确认右侧或右下角出现 HUD / 能量球(取决于显示模式)。
  2. 发起一轮 Agent 任务,观察 HUD 中阶段、最近 5 条活动与底部计数是否随工具调用变化;长命令执行时应保持「执行中」而非误判为静默。
  3. 点击标题栏 ··· 或点击悬浮球,打开 Workspace,核对活动列表、时间线与 SSE 连接状态。
  4. 在 Workspace 或设置中切换「自动展开 / 始终紧凑 / 仅能量球」,按机器性能调节帧率与粒子密度;不需要时关闭总开关以释放渲染器。

未在资料中出现的 CLI 子命令或配置文件名,本文不另行编造;以仓库 README 为准。

适用场景与注意

适合长期在本机或内网 DSH Web 上调试 Agent、需要一眼看到轮次、工具与审批状态、又希望零额外 Token 的开发者。不适合把它当作审计日志或远程运维面板:缓冲与展示有上限(如最近 40 条活动),且刻意不暴露参数与文件全文。

DSH 生态主张「一切皆插件」;SkillHub 等为社区目录,与 DeepSeek / 幻方无官方从属关系。安装第三方插件前,应自行查看 GitHub 源码 与 MIT 许可证;插件随当前 DSH 进程权限运行,Host 会挂钩会话事件——若环境对只读 API 或 SSE 有安全策略,需自行评估。

结尾

Caelum Orbis 把 DSH 已有事件流做成常驻 HUD 与 3D 状态可视化,强调只读、白名单与可独立停用。需要安装命令与架构细节时,以 GitHub 仓库 README 为准;浏览插件元信息可访问 SkillHub 目录页。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye