插件目录 / Developer / dsh-chat-history
dsh-chat-history
已验证 · 实测可装 ttmouse
功能简介
Developer 类别的 DeepSeek Harness 插件。
可用 — 实测通过,早期项目
Developer 类别的 DeepSeek Harness 插件。 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-chat-history
English | 中文
ChatGPT-style conversation-history rail for the DeepSeek Harness web GUI. A thin strip of horizontal bars sits at the transcript's right edge, one bar per user message; hovering it opens a panel listing every user message, and clicking a row scrolls the transcript to that message. The active bar follows the scroll position until the panel takes over (click-lock), matching the familiar ChatGPT sidebar.
Features
- Rail: one horizontal bar per user message on the transcript's right edge, always visible while the session holds at least two user messages.
- Hover panel: lists every user message as a numbered, single-line preview; click to jump.
- Scroll sync: the active bar tracks the first user message at or below the scrollport's top edge; the highlight follows the reader and pins after a jump.
- Click-lock: while the panel is open, auto-sync pauses; closing the panel resumes following.
- Bar-press jump: pressing the rail itself jumps to the nearest bar, so the gaps between dots still navigate.
- Derived entirely from the session's chat snapshot (
user/steeringnodes), styled with design tokens only.
Requirements
- A DeepSeek Harness web profile (the GUI). The rail registers into the
conversation.session.header.actionsseat — a long-standing session-header action slot that every released@deepseek-ai/dsh-client-ui-conversationships — so the plugin works with any published ui-conversation and needs no upstream slot changes. The rail itself rendersposition: fixedagainst the transcript scrollport, so it does not occupy the header's layout.
Install
In the profile you run the GUI from (e.g. ~/.dsh/profiles/web), add the bundle and install it:
# from the profile directory, from the npm registry
pnpm add @ttmouse/dsh-chat-history
or, as a GitHub-source dependency:
pnpm add @ttmouse/dsh-chat-history@github:ttmouse/dsh-chat-history
or, using the dsh plugin channel once available:
dsh plugin --profile web add @ttmouse/dsh-chat-history
Then list the bundle in dsh.profile.bundles (the dsh plugin add flow does this for you):
{
"dsh": {
"profile": {
"bundles": ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "@ttmouse/dsh-chat-history"]
}
}
}
Restart dsh web and refresh the browser. The rail appears at the right edge of the active conversation.
Development
pnpm install
pnpm build # tsc (lib/types + node half) + tsdown (lib/client.js browser bundle)
pnpm test # vitest, jsdom
The browser bundle is a window.__ModuleLoader__.load handoff with CSS Modules inlined as a plugin-tagged <style>; externals (react, @deepseek-ai/dsh-client-runtime/client, …) resolve through the DSH loader module table.
License
MIT
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-chat-history」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:ttmouse/dsh-chat-history Headless(CLI)profile:
dsh plugin --profile headless add github:ttmouse/dsh-chat-history 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。