dsh-details-panel
English | 中文
A DSH Web GUI plugin family repo: double-click a background-job row or a subagent catalog row in the session header, and the right-hand details panel shows that entry's content — the job's command plus its live process output (a non-consuming rolling tail, Hermes-style), or the child's task description plus its final report.
What it does
| Entry | Input | Output |
|---|---|---|
| Background job row | Command (kind + label) |
Live lifecycle (status dot, producer detail, ticking elapsed time) + the job's process text: the registry's rolling outputTail while it runs, the settled final-output text afterwards |
| Subagent row | Delegation description with mode and live activity | Latest subagent-report text; running → 运行中…; settled → summary → 暂无报告; window-truncated → the child's own transcript tail fetched through the same wire path child navigation uses |
Presentation is rendered like an opened file (syntax-highlighted block with copy). The output tail is display-only by construction: the shell seam gained a non-consuming peekOutput, the jobs seam gained JobHooks.peekOutput / JobSnapshot.outputTail, and the local registry sweeps those peeks on its own throttle into a tail-truncated window — so the panel and the carrier see live stream output without ever consuming a byte of the model's job_output cursor.
Repository layout
packages/dsh-details-panel/ The plugin: node no-op half + browser half that
registers conversation.details.job / .subagent
core-patches/ Porting guide for the harness entry-point patch
set the plugin targets (seams, not presentation)
Prerequisite
The plugin targets a DeepSeek Harness build that carries the details-panel entry points. The harness is pre-release; apply the porting guide in core-patches/ to a source checkout (the changes are small, mechanical, and fully specified there), then install this plugin for the presentation. On such a host, leave the core ui-jobs / ui-subagent seat registrations out — one registration per seat.
Install
dsh plugin --profile web add link:<repo>/packages/dsh-details-panel
Restart dsh web after host-seam changes; rebuild the bundle (pnpm --filter @linxin666/dsh-details-panel build) and refresh the page after client changes.
Interactions
- Job rows: double-click (or Enter/Space on the focused row) opens the panel; single click stays inert.
- Subagent rows: single click still navigates into the child transcript after one 250 ms double-click window; a double click cancels the pending navigation and opens the details panel instead.
- Keyboard activation navigates immediately (there is no keyboard double click).
Known limitations
- Stream-job tails are bounded (registry default: 16 000 chars, 500 ms sweep) and display-only.
- Producers without a non-consuming source (terminal sends, background subagent tasks) show the lifecycle without process text.
- The subagent transcript-tail read costs one history RPC only when the loaded window holds no report.
License
MIT
No comments yet. Be the first to write one.