← 返回列表
✓ 可直接安装
DSH Web…
自动检查通过:npm 包已发布且 engines 声明满足基线;该结论来自程序自动检查,未经人工实机验证。 · 最近上游提交 2026/8/27 · 已提供中文文档
DSH Web 会话锚点导轨插件:左侧导轨展示当前模型表面全部用户问题,悬浮显示全部锚点名称(与导轨对齐),点击快速跳转。Session anchor rail for DeepSeek Harness Web.
综合分
28.9
GitHub 分
28.9
用户评分
—
★ Stars
2
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add dsh-anchor-railnpm 包 dsh-anchor-rail 已校验归属本仓库,走 npm 安装最省事
信任档位:已验证本站已于 0 天前真实安装成功
- 是什么
- dsh 原生插件 · tool
- 装得上吗
- 本站已真实安装成功(非静态推断)
- 安全吗
- 本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
- 还在维护吗
- 活跃:最近一次提交在 29 天前
档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →
🟢实装验证通过· 2026/9/25
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/21(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查✓ 自动检查通过
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-anchor-rail @ 1.0.4
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/24 04:21:11
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
由 DeepSeek 最新模型翻译生成dsh-anchor-rail
DSH Web 会话锚点导轨插件:长会话快速定位历史问题。
功能
会话锚点导轨
- 会话聊天区左缘一条固定导轨,展示会话全部用户问题锚点(不随滚动移动,整组上下居中)
- 压缩段聚合为一个锚点:连续已压缩的问题折叠成一个虚线分组标记(▸ 已压缩 · N 个问题),长会话压缩再多轮导轨也不会挤爆
- 悬浮导轨(或任意锚点)→ 展示聚合后的全部锚点名称,每个名称与对应锚点垂直对齐(#序号 + 问题文本);移出后自动收起(150ms 宽限)
- 悬浮虚线分组锚点 → 切换为该段已压缩问题的子列表(可滚动、逐条可跳转);悬浮普通锚点则只显示未压缩列表,两者互不干扰
- 密集兜底:当未压缩锚点仍多到名称无法与锚点对齐(间距
安装
方式一:dsh plugin 安装(推荐)
dsh plugin --profile web add dsh-anchor-rail
方式二:profile 本地包
1. 将本仓库放到 ~/.dsh/profiles/web/plugins/dsh-anchor-rail/
2. 在 ~/.dsh/profiles/web/package.json 增加:
"dependencies": {
"dsh-anchor-rail": "link:plugins\\dsh-anchor-rail"
},
"dsh": {
"profile": {
"bundles": [ "...", "dsh-anchor-rail" ]
}
}
3. 在 profile 目录执行 pnpm install
4. 重启 DSH Web 服务
工作原理
- Host 半:sessionQuery.readSession 一次性读取会话的完整原始日志(含被折叠替换的历史事件),只取与页面渲染规则一致的提问事件(user/message + surfaceOp: append + source.kind: 'user',即页面上渲染为 user/steering 气泡的行;压缩检查点与注入上下文均排除),提取 {seq, text} 并按 sessionId + 日志尾部 seq 缓存——只有新消息才重读,其余请求均为缓存命中。原始日志只增不减,因此压缩后锚点不会丢失;压缩检查点(surfaceOp: replace + source: {kind:'plugin', plugin:'compact'})的替换区间用于把历史锚点标记为「已压缩」。通过 /dsh-anchor-rail/anchors 路由提供给客户端。
- Client 半:连续已压缩问题折叠为一个虚线分组展示项(悬浮/点击展开该段的可滚动子列表;普通悬浮只显示未压缩列表);锚点间距 < 24px 时名称面板切换为紧凑滚动列表防重叠。其余锚点按全局序号映射(#N 不因折叠而错位;页面窗口始终是原始日志的连续切片,loadOlder 向前翻页),标记等距分布、上下居中;滚动只扫描已渲染行计算"当前"索引并映射到所属分组;跳转窗口外问题时循环调用会话 loadOlder()(50 条/页)逐页加载直到目标渲染后定位。
结构
- lib/index.js — Host 半:锚点数据路由 + 缓存
- lib/client.js — Client 半(window.__ModuleLoader__ 打包格式):导轨 + 悬浮名称列表
- cordis.patch.yml — bundle 组合层,插入 anchor-rail 行
License
MIT