dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
Tool-call value graph tab for the DeepSeek Harness (dsh) Web UI: cost/duration/error weights over conversation trajectories with one-click next-turn optimization prompts.
A tool-call value graph tab for the DeepSeek Harness (dsh) Web UI.
Agent trajectories bury their own economics: which tool ate the wall time, where calls failed, how many tokens each round burned, which calls repeated themselves verbatim. This plugin adds a Tool Graph (工具图谱) tab to the conversation view ring that folds the session log into one weighted relationship graph:
Everything is folded client-side from the durable session log — deterministic, replay-safe, no extra model calls, no persistence, zero token cost.

This checkout targets Harness 0.2.0-rc.2 and Cordis 4.0.4. Place the repositories at ai/deepseek-harness and ai/dsh-plugins/dsh-ui-tool-graph, and build Harness first; development dependencies link to its built libraries. Build this package, then install its tarball.
pnpm install --ignore-scripts
pnpm run typecheck
pnpm test
pnpm build
pnpm pack
dsh plugin --profile web add ./dsh-ui-tool-graph-0.1.3.tgz
Restart the profile if the Plugin Manager reports that a restart is required. Every conversation gains a 工具图谱 (Tool Graph) tab.
For Desktop, install the generated tarball through Plugins in the running application, enable the bundle, and restart Desktop when requested. Open a conversation and select Tool Graph (工具图谱). A conversation without tool calls displays an empty state. The CLI commands here manage a Web profile, not Desktop's reserved profile.
Uninstall: dsh plugin --profile web remove dsh-ui-tool-graph.
| Metric | Definition |
|---|---|
| Call duration | tool/result time − paired tool/call time (wall clock) |
| Tool wall time | Sum over completed calls in the loaded window |
| Error rate | Error results ÷ completed calls per tool |
| Transition edge | Consecutive call pair within one turn, in log order |
| Average gap | Per-edge mean of result→next-start latency (dominated by model generation wait) |
| Tokens | Provider usage carried by each finalized assistant message, deduplicated per step |
The view target folds incrementally (replace/apply over the event window), so totals cover exactly what the history window holds; page older turns in the Trajectory tab to extend coverage. Result-only records without their loaded call are excluded because the name and start time are unavailable. The plugin registers event definitions and its view through uiConversation and receives its per-session target through the framework-bound useToolGraph hook. Colors follow the application's light and dark theme tokens.
pnpm install
pnpm typecheck # tsc --noEmit (strict)
pnpm test # vitest: folding parity, layout purity, prompts, component behavior
pnpm build # lib/index.js (node half) + lib/client.js (browser bundle)
pnpm pack # installable tarball
The package is a dual-identity bundle: dsh.bundle ships the patch layer, dsh.client declares the web plugin. Runtime imports are limited to the host-shared React, Cordis, Client Store, UI Slots, UI Primitives, and Dockkit modules; feature plugins are accessed through type declarations and injected services.
MIT