zn-dk/dsh-session-explorer
Session message-level full-text search browser: FTS5 trigram search by message (user/assistant/system injection/tool, can be filtered by type), fork/continuation session results automatically deduplicated, read-only context preview automatically scrolls to position, one-click jump to real session, incremental/full index rebuild + health check, Chinese and English bilingual host locale
Message-level full-text search across sessions for the DSH Web UI. Search targets a specific message kind (user / assistant / steering / tool) with user, assistant and system-injected text weighted highest and tool name, arguments and error summary lower; results are deduplicated across fork and continued sessions (grouped by seq/kind/text, keeping the session with a non-empty title and latest index time). A read-only preview shows the focused hit plus a surrounding context window that auto-centres and jumps to the real session in one click. A searchable session-overview panel adds CSS-grid cards with metadata, first/latest message summaries, main/subagent filtering and sorting, plus incremental or full index rebuilds with a health check and corrupted-session classification. Full zh/en i18n follows the host locale service.
Install
dsh plugin --profile web add dsh-session-explorerREADME install from npm (recommended); a build-from-source path is documented (pnpm install, pnpm pack, then dsh plugin --profile web add ./dsh-session-explorer-*.tgz). After installation, restart dsh web; the "Session Explorer" entry appears in the sidebar tool area and the index lives at ~/.dsh/storages/session-explorer.sqlite (auto-created and indexed on first use). npm package dsh-session-explorer 0.5.0 (registry-verified 2026-09-10; publisher zn-dk).
Compatibility
DSH Web plugin; the host side uses node:sqlite (development tests require Node >= 22.5). The FTS5 trigram index supports arbitrary substrings without Chinese tokenization, and queries shorter than 3 characters fall back to LIKE matching. The SQLite derived index checks application_id and user_version and is written with 0600 permissions.
Details
- Repo: zn-dk/dsh-session-explorer
- Category: Plugin Markets & Managers
- Stars: 1
- Version: npm dsh-session-explorer 0.5.0 (registry-verified 2026-09-10)
- Last push: 2026-09-02
- First seen: 2026-08-24
Recent updates
README documents the rebuild story (incremental mode fast-diffs via engine revision tokens with O(1) skip, re-flushes changed sessions by content fingerprint and removes ghost sessions; full mode resets the database and rebuilds session by session, with an integrity/readability health check recommending a mode) and known limitations: full tool-result body search is deferred to V2, session deletion has no engine API so index cleanup covers only the plugin's own database, and the timeline canvas entry is hidden since 0.2.0 pending an upstream rendering fix.
FAQ
- How do I install dsh-session-explorer?
- Run: dsh plugin --profile web add dsh-session-explorer, then restart dsh web — the "Session Explorer" entry appears in the sidebar tool area.
- Where is the search index stored?
- At ~/.dsh/storages/session-explorer.sqlite, auto-created and indexed on first use; the panel can rebuild it incrementally (fast diff) or fully, with a health check.
- Are fork or continued sessions duplicated in results?
- No — because fork/continuation sessions share parent history, results are grouped by (seq, kind, text) and the plugin keeps the session with a non-empty title and the latest index time.