LeslieWylie/dsh-session-search-pro
dsh-session-search-pro
Advanced cross-session full-text search for DeepSeek Harness — search past and current DSH sessions using the built-in sessionQuery service
Install
npx @deepseek-ai/dsh plugin --profile web add github:LeslieWylie/dsh-session-search-proRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-session-search-pro)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from LeslieWylie/dsh-session-search-pro, cleaned of badges and images.
🔍 dsh-session-search-pro
English | 简体中文
Search every DSH session you've ever had — past and current — without leaving the one you're in.
Three agent tools for DeepSeek Harness, built on the runtime's own indexed sessionQuery service instead of scanning session files by hand.
Install
Nothing here is on npm yet, so install straight from GitHub. Add it to your profile's package.json:
// ~/.dsh/profiles/<profile>/package.json
{
"dependencies": {
"dsh-session-search-pro": "github:LeslieWylie/dsh-session-search-pro"
},
"dsh": {
"profile": {
"bundles": ["dsh-session-search-pro"]
}
}
}
Then reinstall and restart the profile:
cd ~/.dsh/profiles/<profile> && pnpm install
dsh --profile <profile>
Pin a tag instead of tracking the default branch with github:LeslieWylie/dsh-session-search-pro#v0.1.0.
Try it without editing your profile
The package ships its own cordis.patch.yml, so once it's installed into the profile's node_modules you can mount it for a single run with the launcher's --patch flag instead of touching dsh.profile.bundles:
cd ~/.dsh/profiles/<profile> && pnpm add github:LeslieWylie/dsh-session-search-pro
dsh --profile <profile> --patch ./node_modules/dsh-session-search-pro/cordis.patch.yml
Why another session-search plugin?
dsh-session-search by Tieboyh takes a different route: it reads session files directly, decompressing and scanning zstd frames itself, which lets it search other runtimes' sessions too — Codex, Claude Code, PI, OpenCode. If you work across several agent CLIs, that is the one you want.
This plugin goes through the harness's own sessionQuery service instead. That
buys the live in-progress session, no file-format assumptions, and no external
binaries — and it means the plugin inherits whatever indexing the deployment has
configured, including none (see
Search on a stock profile).
| Aspect | dsh-session-search (Tieboyh) | dsh-session-search-pro |
|---|---|---|
| Search method | Reads and scans session files directly | Harness sessionQuery — FTS5 index when enabled, bounded scan otherwise |
| Current (in-progress) session | ❌ Not searchable | ✅ Searchable |
| Session file format | Parsed directly (zstd frame scan) | Never touched — harness API only |
| External sources | codex, claude, pi, opencode | DSH only (single runtime) |
| Tool count | 2 tools | 3 tools (search + list + read) |
| Long event text | Capped at 4,000 chars | Capped at 4,000 chars per event |
| Dependencies | ripgrep, node:zlib | None (zero runtime dependencies) |
Benefits
- ✅ Zero runtime dependencies — no ripgrep, no zstd parsing, no local database
- ✅ Works on a stock profile — uses the FTS5 index when the deployment enables it, and falls back to a bounded scan when it does not, instead of returning a configuration error as the search result
- ✅ Current session is searchable — not just sessions that have already ended
- ✅ Fails closed, not half-open — if
sessionQueryisn't available at all, the plugin logs a warning and registers no tools, rather than registering tools that would throw on first use - ✅ Read-only — never writes to a session; no database or cache of its own
- ✅ MIT licensed
…

