invalidnaaaame / dsh-scroll-timeline

목록에 있음

DSH web plugin: ChatGPT-style scroll timeline on the chat sidebar — magnetic mountain hover, click to jump to user messages. Derived from vlln/dsh-navbar (MIT).

main기타 소스 보기

설치

npx -y @deepseek-ai/dsh plugin --profile web add github:invalidnaaaame/dsh-scroll-timeline

이 설치 명령은 GitHub 저장소 주소에서 생성된 확인되지 않은 시작점입니다.

README

유지 관리자가 작성한 문서 스냅샷입니다.

GitHub에서 보기 ↗
커밋 7d92d59동기화 2026. 8. 18.

dsh-scroll-timeline

A ChatGPT-style scroll timeline for the chat sidebar: a rail of horizontal bar nodes (one per user message) with magnetic mountain hover, hover preview, and click-to-jump.

license

English | 中文

An evenly spaced node rail on the right edge of the sidebar (one horizontal bar per user message) — the peak bar follows your reading position, hovering grows a magnetic "mountain" (design ratios 39/30/21/15/9; base and peak widths are adjustable via CSS variables), a hover preview card (6-line clamp), click-to-jump with smooth scrolling and a brand-blue highlight, full history always visible, and auto-hide when there are fewer than 2 user messages. Form factor: an official bundle plugin (dsh.bundle + dshClient channel, browser-only, empty Node half), 0 patches.

Derived from vlln/dsh-navbar (MIT, spec issue dsh-external/issues#144), with the interaction redesigned: horizontal bar nodes, magnetic mountain hover, sidebar-adjacent positioning, and full history.

Preview

dsh-scroll-timeline (left: reading-position peak bar; right: hover magnetic mountain)

Features

FeatureDescription
Scroll timelineVertical node rail on the right edge of the sidebar, one horizontal bar per user message (3px tall, 14px hit area)
Reading positionPeak bar (39px brand blue) follows the current reading position
Magnetic mountainWhile the pointer is over the rail, the nearest node becomes the peak and neighbors extend in progressively decreasing amounts (39/30/21/15/9)
Hover previewHovering a node shows a message preview card (6-line clamp, aligned with the official HoverCard look, opens to the right)
Click to jumpSmooth-scrolls to the message + brand-blue highlight ring
Full historyAlways shows every historical node; long sessions scroll within the container
Auto-hideHidden with fewer than 2 user messages or outside the chat page

Zero data-channel dependencies: driven only by the official anchor attribute (data-time-hover-root, user rows since 0806); no polling, no routes, no tools.

The base and peak widths can be tuned via CSS variables (on the rail container):

[data-dsh-navbar] {
  --dsh-navbar-base-w: 9px;  /* base width */
  --dsh-navbar-peak-w: 39px; /* peak width (hover/active) */
}

Install

Recommended: one-line git install (build artifacts are committed; git sources don't trigger a build):

dsh plugin --profile web add "github:invalidnaaaame/dsh-scroll-timeline#main"

Or from a local directory (with source): git clone, then cd dsh-scroll-timeline && dsh plugin --profile web add ..

After installing, restart web for it to take effect; the Settings → Plugins panel can disable/enable it.

Usage

Works out of the box; no commands, no tools. The timeline appears on the right edge of the sidebar in the chat (Chat) view; hover to preview, click to jump. Animations are disabled under prefers-reduced-motion.

Development

pnpm install
pnpm run build      # tsdown: client bundle (lib/client.js)
  • client: src/client/index.ts (self-rendered DOM + official anchor contract, no React dependency)
  • Node half: src/index.mjs (empty apply; the bundle mount carrier)

License

MIT. Derived from vlln/dsh-navbar (MIT, Copyright (c) 2026 Sam Gao (vlln)); see LICENSE.

프로젝트 파일 및 신호

표시된 항목은 디렉터리 스냅샷에서 감지된 공개 저장소 신호입니다.

문서감지됨

저장소 정보

언어
TypeScript
라이선스
MIT
마지막 업데이트
2026. 8. 14. 오후 9:26

신중하게 설치하기

소스 코드, 권한, 수명 주기 스크립트, 의존성 및 네트워크 접근을 검토하고 신뢰하지 않는 플러그인은 격리 환경에서 테스트하세요.