ayahunter/dsh-trail
Friendly Trajectory — a new-user-friendly replacement for the DeepSeek Harness Web "轨迹" (Trajectory) tab: the raw event ledger becomes a storyline anyone can read.
catalog 简介 / catalog descriptioncatalog description:DeepSeek Harness Web 轨迹页签的新手友好视图插件(out-of-tree bundle):把事件流变成人人能看懂的故事线
项目介绍Project Overview
dsh-trail 是 DeepSeek Harness Web 端"轨迹"标签页的友好替代方案。它将原始事件日志转化为易读的故事线:每轮一个可折叠卡片,含用户提问、模型思考、工具调用与结果,支持八类筛选与模糊搜索。仅读取会话快照,无 Host 端依赖,卸载后恢复原视图。注意:仅支持 Web GUI 且界面文案为简体中文;轮次分组依据节点顺序推断,极少数情况下可能划分错误。
dsh-trail is a friendly replacement for the "轨迹" (Trajectory) tab in the DeepSeek Harness Web UI. It turns the raw event log into a readable storyline: one collapsible card per round showing the user prompt, model reasoning, tool calls, and outcomes, with eight category filters and fuzzy search. It reads only the session snapshot, adds no Host half, and uninstalling restores the original view. Caveat: Web GUI only with Simplified Chinese-first copy, and round grouping is heuristic based on node order, which may occasionally mis-classify boundaries.
请帮我了解并安装插件:【dsh-trail】【https://github.com/ayahunter/dsh-trail】
把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.
或使用命令行安装(适合开发者)Or use CLI install (for developers)
命令行安装CLI Install
dsh plugin --profile web add dsh-trail dsh-trail-bundle
把 ayahunter/dsh-trail 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-trail
Friendly Trajectory — a new-user-friendly replacement for the DeepSeek Harness Web "轨迹" (Trajectory) tab: the raw event ledger becomes a storyline anyone can read.
中文 · Usage · Development
The built-in trajectory view is a power tool: untranslated jargon with no legend, five
toolbar toggles, a zoomable/draggable timeline, a separate inspector, and an event table
that never answers "what did I ask → what did the AI do → what came back". dsh-trail
replaces that tab with a storyline design — one collapsible card per round,
plain-language tool names, inline argument previews, and guidance for every state. It
reads only the session snapshot, adds no Host half, and uninstalling restores the
original view.
Features
- Turn cards — one card per round: what you asked → what the AI thought → which tools it called → the outcome, with duration, model and token meta when present.
- Plain-language tool labels —
readrenders as 读取文件 (read a file) with a one-line note; unknown tools fall back gracefully. - Inline argument previews — the touched file or command is visible on the row; raw arguments, results, timing and error metadata fold into a Details toggle.
- Category filter — 全部 (all) plus eight row categories, combinable and remembered across sessions.
- Fuzzy search — ignores case, punctuation and full-width forms; multi-word terms match as ordered subsequences.
- Live round — dashed card with status pills (thinking / generating / running tool · elapsed) and a spinner; durations are never fabricated.
- Zero product coupling — renders purely from top-level session snapshot fields; no Host half, no new data endpoints.
Screenshots
The Friendly Trajectory view inside the official Web GUI — turn cards summarize each round, and reasoning, tool arguments and full replies stay folded until expanded:



Install
dsh plugin --profile web add dsh-trail dsh-trail-bundle
Restart the profile and open any session: the 轨迹 tab is now the storyline view. The
bundle disables the shipped ui-trajectory row and mounts this view in its place, so
exactly one 轨迹 tab remains.
To go back to the original view:
dsh plugin --profile web remove dsh-trail dsh-trail-bundle
Update
dsh plugin --profile web update dsh-trail dsh-trail-bundle
Upgrades are never applied automatically; restart the profile afterwards. Two pnpm
behaviors can make an update look stale right after a release: the registry metadata
cache and the 24-hour minimumReleaseAge supply-chain policy for freshly published
versions. If update reports "Already up to date" while npm shows a newer version,
clear the cache (pnpm cache delete dsh-trail) or pin explicitly
(dsh plugin --profile web add dsh-trail@<version> dsh-trail-bundle).
Quick start
Open a conversation and click 轨迹. Read it top-down as a story: expand any folded reasoning or reply with 展开, and open 详情 on a tool row for raw arguments, results, timing and tokens. Use the search box to jump to a file or command, and the category bar to isolate e.g. only 工具 rows — both stay applied while you browse.
Architecture
One repository, two npm packages. dsh-trail is the client plugin: it registers the
conversation.view slot cell id: 'trajectory' and renders purely from top-level
session snapshot selectors (nodes, turnTimings, partial, runningCalls,
hasMore, loadingOlder, openState). dsh-trail-bundle is a patch bundle whose
cordis.patch.yml inserts the plugin row and sets disabled: true on the shipped
ui-trajectory row. Design rationale is documented in the repository's internal
working docs (not shipped with the package).
Known Limitations and Deferred Work
- Web GUI only — the plugin targets the web shell (
react^18 peer dependency); other shells are not validated. - Simplified Chinese-first — the v1 view copy (labels, tool names, guidance) is 简体中文; an English locale is deferred.
- Legacy snapshot fields — the plugin reads compatibility projections
(
nodes/turnTimings/partial/runningCalls/…), tested against dsh 0.1.0-rc.5; it must be upgraded if the product removes those fields. - Round grouping is heuristic —
user/tool-resultnodes carry no turn number, so round boundaries are inferred from node order and may occasionally be drawn wrong. - Not feature-parity with the original view — the timeline overview, duration toggles and batch collapses are removed by design; the essentials fold into Details and search is kept.
Documentation
- docs/usage.md — install, what the view shows, filters and search, uninstall
- docs/development.md — build, test, publish, contribute
License
MIT — see LICENSE.
ruvnet/ruflo
Tencent/WeKnora
freestylefly/awesome-gpt-image-2
EverMind-AI/EverOS
MemTensor/MemOS
zhu1090093659/dsh-web-ui
edison7009/EchoBird