Gancaozi/dsh-details-panel--packages-dsh-details-panel ↗★ 0
@linxin666/dsh-details-panel
DSH web GUI plugin: right-hand details-panel bodies for background jobs and subagent catalog entries — the live non-consuming rolling output tail (Hermes-style) and the transcript-tail report enrichment, with double-click entry points documented in core-patches/.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Gancaozi/dsh-details-panel#21426dbe9231f55cb5e07372baacbd3244e6a74d&path:packages/dsh-details-panel说明文档
阅读完整 README ↗@linxin666/dsh-details-panel
English | 中文
DSH Web GUI 插件:后台任务行与子代理目录行的右侧详情面板正文。
- 后台任务 —— 输入区显示命令;输出区显示实时生命周期(状态点、生产者
detail、每秒推进的耗时),并以「打开文件」的样式展示任务的实时进程文本:运行期间是注册表非消费式滚动的outputTail,生产方交付结果后则是落定的最终输出文本。该尾部在构造上就是纯展示——绝不触碰模型的消费式job_output游标(Hermes 式双通道)。 - 子代理 —— 输入区显示 child 的任务描述及其模式与实时活动状态;输出区依次显示父转录中匹配
senderSessionId的最新subagent-report文本、运行中状态、落定摘要与空态提示。当已加载的父窗口把两个持久来源都截断时,正文经注入的readChildHistory回调读取 child 自己的转录尾部(与 child 导航相同的 wire 路径),并展示最终助手消息。
两个席位都经 slots.inject 注册,因此在未声明详情面板入口的 harness 上插件保持休眠。
前置依赖
harness 必须携带详情面板入口补丁集——chatDetails 打开详情服务、SelectionTarget 的 jobId/subagentId 字段、conversation.details.job / conversation.details.subagent 席位声明、头部行双击手势、jobs/shell 输出尾部 seam,以及 sessions.readChildHistory。迁移指南见仓库的 core-patches/ 目录。在此类主机上,请勿同时注册核心 ui-jobs/ui-subagent 的席位正文——每个席位只允许一个注册。
安装
从本仓库安装:
dsh plugin --profile web add link:/packages/dsh-details-panel
bundle 补丁(cordis.patch.yml)插入裸行 ui-dsh-details-panel;package.json 里的 dsh.client 清单把浏览器半部发布到 /plugins/@linxin666/dsh-details-panel/client.js。host 侧 seam 变更后需重启 dsh web;客户端 bundle 重建后刷新页面即可。
构建
pnpm install
pnpm --filter @linxin666/dsh-details-panel build
已知限制
- 流任务尾部受注册表展示上限约束(默认 16 000 字符,尾部截断),并按注册表节流扫描(默认 500 ms)——它是展示通道,不是完整流。
- 没有非消费源的生产方(终端发送、后台子代理任务)只显示生命周期,不带进程文本。
- 仅当已加载的父窗口没有报告时,子代理转录尾部读取才会付出一次历史 RPC;不在任何已加载目录中的 child 仍显示未找到提示。
License
MIT