DSH trace waterfall
A DeepSeek Harness plugin that replaces the trajectory view with a trace waterfall inspired by Kobra. The presentation is independently implemented; no Kobra code or assets are included.
- Turn rows show model, tool, waiting, handoff, and failed activity as one segmented bar.
- A three-lane overview (input / model / tools) supports drag-to-zoom; long idle gaps collapse into axis breaks, and any turn can be focused.
- Model bars split time to first token from decoding.
- Click a row or bar for an anchored summary, then open full details for complete input, output, timing, and metadata.
Screenshots





Install
Requires Node 24.9+ and pnpm 11 on PATH (dsh plugin uses pnpm; pnpm 10 fails with ERR_PNPM_ADDING_TO_ROOT). Targets DSH 0.2.1-rc.3; DSH's plugin APIs are pre-stable.
Install from GitHub:
dsh plugin --profile web add github:greatv/dsh-trace-waterfall
The bundle's cordis.patch.yml disables ui-trajectory and adds trace-waterfall. The view ID stays trajectory, so existing view preferences and tool-inspection links keep working. Restart DSH Web or reload the browser after installing.
To update to the latest commit, run the same add command again.
To restore DSH's original trace:
dsh plugin --profile web remove dsh-trace-waterfall
Do not enable both trajectory providers at once; they own the same view.
Develop
Requires a built DeepSeek Harness checkout:
npm ci
npm run link:dsh -- <path-to-deepseek-harness>
npm run build
npm test
link:dsh links the DSH packages and generates TypeScript paths; rerun it after reinstalling dependencies or switching checkouts.
The built lib/ is committed so that GitHub installs need no build step. Run npm run build and commit lib/ together with source changes.
To install your working copy instead of the GitHub version, run dsh plugin --profile web add . from the repository root.
To try the plugin without installing it, run from the DSH checkout:
pnpm dsh --patch <path-to-this-repository>/cordis.source.patch.yml --no-open
For a preview with deterministic test data:
node scripts/build-preview.mjs
python3 -m http.server 3468 --bind 127.0.0.1 --directory dist/preview
Usage
- Zoom: drag across the overview to select a range; double-click to reset. The target icon on a turn focuses it.
- Search: Ctrl/Cmd+F. Matches in names, arguments, prompts, and outputs are highlighted.
- Errors only: lists failed operations with their parent context. A recovered failure adds an error badge to its turn instead of marking the whole turn red.
- Escape closes the summary or details, or clears filters.
Notes
- Total tokens = uncached input + cache-read input + cache-write input + output, matching the DSH status bar. Cache hit rate is cache-read input divided by all input.
- Idle gaps longer than 60 seconds are compressed; recorded durations are unchanged.
- Independent child-agent sessions are not merged into the parent trace.
- Cost is not shown, since recorded traces carry no authoritative pricing.
- The plugin is presentation-only: it adds no tools, changes no agent behavior, and sends no telemetry.
License
The adapter modules derive from DSH's MIT-licensed trajectory implementation. See THIRD_PARTY_NOTICES.md.
No comments yet. Be the first to write one.