dshbase

Plugin directory / UI & Skins / dsh-chatflow-rail

dsh-chatflow-rail

Verified · install-tested on dsh veritas501

✓ Actively maintained

View on GitHub ↗ ← Back to plugin directory

0Stars
0Forks
0Open issues
—Language
2026-08-16Last push
Cross-platformPlatform

What it does

Conversation-flow navigation rail for the dsh web GUI — one dash per user message with hover previews and smooth jumps, plus a docked "previous message" card.

✅
Our take
Works — verified, early-stage project

Conversation-flow navigation rail for the dsh web GUI — one dash per user message with hover previews and smooth jumps, plus a docked "previous message" card. It installs cleanly and boots without issues in our testing. It's early-stage but functional.

“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

README

dsh-chatflow-rail

中文 | English

A plugin for the dsh web GUI that adds a conversation-flow navigation rail on the left of the chat — one dash per user message, positioned 1:1 against the real content — plus a previous-message card docked at the top.

Screenshots

Previous-message card + rail Hover preview over the rail
Rail and previous-message card Hover preview

Instead of scrolling through a long transcript to find where you were, the rail gives you the whole conversation as a map: a tight cluster of dashes, each one a user message, and hovering fans the cluster out — dashes near the pointer widen and darken with a smooth falloff. Crossing the preview threshold floats a card with #N/M · time and the message content. Click a dash — or anywhere on the rail — and the view eases smoothly to that message, landing below the top card.

When you scroll a user message above the viewport, a native-styled floating card at the top shows 上一消息 #N/M · time with a 3-line preview; click it to jump back. The card is a floating overlay in the shell's click-through layer: the empty state is fully transparent, so the top of the conversation stays clean and nothing is reserved when there is nothing to show. Steering follow-ups (messages sent while a run is active) count as anchors too, and the plugin auto-expands dsh's history window so the rail covers the whole conversation — not just the tail window the transcript renders.

Install

The plugin is a git-hosted bundle whose build script pnpm blocks by default, so first allow it in the web profile's workspace file, then add the package.

# 1. Allow the plugin's build (prepare) script — add to
#    ~/.dsh/profiles/web/pnpm-workspace.yaml:
#      onlyBuiltDependencies:
#        - dsh-chatflow-rail

# 2. Install from the GitHub repo (prepare builds lib/ on install;
#    lib/ is a build artifact and not committed)
dsh plugin --profile web add github:veritas501/dsh-chatflow-rail

# 3. Restart dsh web, then refresh the page
dsh web

Notes:

  • dsh plugin behaves like adding a dependency to your web profile. A bundle plugin is loaded once its full package name appears in the profile's dsh.profile.bundles list (recent dsh builds add it automatically; add it manually if yours does not). The bundle patch applies on the next boot, and the browser picks up the new bundle revision on refresh.
  • Developing the plugin itself? Install from a local checkout instead: pnpm build first, then dsh plugin --profile web add file:/path/to/dsh-chatflow-rail.
  • The rail is drawn by the browser half (dsh.client → lib/client.js); the Node half (lib/index.js) is a no-op so the loader's root-module contract is satisfied.

Development

  • pnpm run build — emits the browser bundle (lib/client.js) and the Node half (lib/index.js) via tsc + tsdown.
  • src/client/model/* — React-free pure logic (geometry, layout, chip selection, smooth scroll, anchor collection, paging); tunables live in src/client/model/constants.ts.
  • src/client/view/* — TSX components and CSS Modules (compiled by lightningcss, injected as style[data-plugin="dsh-chatflow-rail"]).
  • pnpm test — vitest behavior tests for the model layer; pnpm run typecheck — type gate.
  • A --dev dsh web server hot-reloads rebuilt bundles — pnpm run build alone is usually enough to see changes.

License

MIT © veritas501

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-chatflow-rail for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:veritas501/dsh-chatflow-rail

Headless (CLI) profile:

dsh plugin --profile headless add github:veritas501/dsh-chatflow-rail

Test report

Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.

Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in UI & Skins

Browse all 7819 plugins →