Yujm888/dsh-turn-rail
Codex 风格自动隐藏右缘轮次导航:靠边浮现、单轮 tooltip、会话内搜索、长会话 30 轮滚动窗口。
已收录
2
Ui
Bundle 已验证
功能介绍
Codex 风格自动隐藏右缘轮次导航:靠边浮现、单轮 tooltip、会话内搜索、长会话 30 轮滚动窗口。
适合
- 需要在较长 DSH Web 会话中快速预览并跳转到指定轮次的用户。
- 适合通过搜索用户消息来定位内容、比手动滚动更高效的会话。
- 偏好无设置、自动隐藏且不影响模型请求的轻量导航工具的用户。
不适合
- 不适合普通滚动已经足够的短会话。
- 不适合非 Web profile,或缺少 sessionProjections 服务的 Web profile。
- 不适合要求一次看见超过 30 个标记的用户;长会话使用内部滚动的 30 标记窗口。
README
dsh-turn-rail
A Codex-style auto-hiding turn rail for DeepSeek Harness Web.
Minimal by design: no settings, no extra panels, zero runtime dependencies.
The rail lives on the right edge of the conversation. Move the pointer near the edge and it fades in; move away and it fades out. Hover the thin zone around a marker to preview that turn, click anywhere in the wider marker area to jump. Long conversations keep at most 30 visible markers and scroll inside the rail, following the current reading position.
This project is not affiliated with DeepSeek. The interaction pattern is inspired by common turn-navigation rails such as Codex and the DeepSeek web client; the implementation is independent.
Screenshots


Features
- Edge-peek auto-hide — appears when the pointer is within 110 px of the right edge, fades out 120 ms after leaving. Leaving the browser window or switching away follows the same fade timing.
- Layered hit zones — the outer zone only keeps the rail visible; the marker zone is clickable and highlights on hover; only the narrow detail zone around the marker shows the tooltip.
-
Per-turn tooltip — one marker previews one message with time. It fades in
and fades out with the rail, and the native browser
titleis not used. -
Search — the magnifier button opens a pinned search box. Type to filter
user messages, click a result to jump. Close with
Esc, another click on the button, a result click, or a click outside the rail. - 30-marker scrolling window — with more than 30 turns the rail scrolls internally with a hidden scrollbar. It pins to the newest window once when a session opens, then never moves itself again: the rail scroll position is fully user-owned.
- Theme-aware and responsive — markers use DSH CSS variables and scale slightly with viewport size.
- Full-session projection — the host half folds the durable session log so a page reload paints the complete rail without replaying history.
Requirements
- DSH
>= 0.1.0-rc.6 - Web profile with
sessionProjectionsavailable (the shipped web profile has it)
Install
dsh plugin --profile web add dsh-turn-rail
Then restart dsh web and hard-refresh the browser tab.
From a local checkout
dsh plugin --profile web add /path/to/dsh-turn-rail
Remove
dsh plugin --profile web remove dsh-turn-rail
Tuning
All tunables live at the top of lib/client.js:
| Constant | Default | Meaning |
|---|---|---|
EDGE_TRIGGER_PX |
110 |
Show the rail when the pointer is this close to the right edge |
DETAIL_LEFT_PX / DETAIL_RIGHT_PX
|
46 / 10
|
Distance band from the right edge that opens the tooltip |
HIDE_DELAY_MS |
120 |
Wait before the rail starts fading out |
UNMOUNT_AFTER_MS |
200 |
Remove tooltip/search after the fade completes |
MAX_VISIBLE_MARKS |
30 |
Maximum markers visible when the rail scrolls |
MAX_MARK_GAP_PX |
30 |
Maximum center-to-center distance between markers when there are 30 or fewer turns |
SEARCH_LIMIT |
30 |
Maximum search results |
Rail geometry and marker sizes are in the css array in the same file.
Model Experience
None. This is a browser UI plugin; nothing here enters a model request.
License
MIT
常见问题常见问题
在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:Yujm888/dsh-turn-rail。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。
兼容性以页面上展示的 bundle 与 profile 状态为准。如果某个 profile 尚未检测到,请先保持禁用,并在生产启用前阅读仓库文档。
GitHub 链接和 activity 元数据是 release 与维护状态的来源。新版本发布后重新查看本页,确认目录已经观察到最新版本。