zhaoyuntao-wl/dsh-plugin-thread

Session memory with lineage for DeepSeek Harness: the full event stream lands in SQLite and is queried back through a native filesystem-style tool.

Thread is a deep-integration session-memory plugin for DeepSeek Harness that uses the base's native channels end to end. The README lists: lossless capture (subscribing to session/event, with the full event stream landing in dual SQLite databases via idempotent append), structural delivery with three triggers (a first-turn anchor, a re-anchor after every compaction and a cross-agent state delta at each turn boundary), a native query_session_memory tool registered into the model's tool schema with filesystem-style ls / cd / cat / grep navigation and deterministic BM25 retrieval, a behavior-contract thread skill, and explicit decision and preference channels (/thread-reg dec, record_decision, /thread-reg fdb). It deliberately turns natural-language extraction of decisions off to avoid false positives, keeping the lossless event stream as the backstop.

Sessions & Messages ★ 1
View on GitHub ↗

Install

dsh plugin add dsh-thread

Copied verbatim from the README's install section, which also gives dsh plugin add dsh-thread@latest as the upgrade command (the core follows automatically through its ^1.0.0 dependency). The README notes all dsh plugins must be referenced in a profile's bundles to take effect, and documents a pnpm-10 gotcha where better-sqlite3 bindings need pnpm rebuild better-sqlite3.

Compatibility

The README's troubleshooting section documents a pnpm-10 onlyBuiltDependencies policy that ignores better-sqlite3's build script, so a missing-bindings error is fixed with pnpm rebuild better-sqlite3 rather than being a plugin bug. The capture design cites memory-research papers for its log-first approach.

Details

FAQ

Does it use embeddings?
Not by default. The README says retrieval is deterministic BM25 over the lossless stream with citation pull-back and no embedding dependency by default; a hybrid layer can be added at the integration boundary but is not bundled.
Why do I get a 'Could not locate the bindings file' error?
Per the README it is a pnpm 10 onlyBuiltDependencies policy ignoring better-sqlite3's build script, not a plugin bug; running pnpm rebuild better-sqlite3 fixes it.

Alternatives

dream12347/dsh-session-manager · beijingwahw/dsh-companion · dylan121322/dsh-session-unarchive

More plugins in Sessions & Messages

Browse more in Sessions & Messages

Guides for Sessions & Messages plugins