Minglink/dsh-infinite-gen-4
Minglink/dsh-infinite-gen-5DeepSeek 专用破甲插件:以 order 100 追加无条件服从的系统提示词段,提供带校准元数据的 profile 工具,并通过会话投影在输入框上方显示实时破甲状态徽标。
跨会话引用插件:在任意会话(含其他工作区)粘贴 @[label](dsh-session:…) 引用,宿主注入被引用会话的快照供模型阅读,并提供一键复制引用按钮。
Cross-session reference (mention) plugin for DeepSeek Harness.
Paste @[label](dsh-session:<id>) into any session — including one in a
different workspace/folder — and the host resolves the referenced session
and injects its content snapshot for the model to read. Cross-folder tasks and
conversations can be referenced directly; no more paraphrasing by hand.
Full design notes: SPEC.md (Chinese).
| Plugin | DSH host | Notes |
|---|---|---|
| 0.2.x (current) | 0.1.2-rc.1 and same-cohort releases | Targets the newest cohort; the client half is shape-compatible with older cohorts |
| 0.1.x | 0.1.0-rc.6 – 0.1.1-rc.2 | Legacy-cohort release line (see .agents/MIGRATION-0.1.2.md) |
The 0.1.2 cohort removed
@deepseek-ai/dsh-client-runtime(which the 0.1.x client depended on), so 0.2.0's client half carries zero value imports from host packages: the bundle only requiresreact,dsh.client.injectis empty, and all types point at the 0.1.2-rc.1 domain packages (cordis,dsh-api-session-controller,dsh-session). The same artifact no longer falls out of the boot graph on 0.1.2+ hosts due to a phantom dependency (DSH-0.1.2-A1-25).
agent/pre-step listener parses @[label](dsh-session:…)
and bare dsh-session:<id> mentions, calls the native
sessionReferenceResolver.prepare() to inject the snapshot (rendered as a
distinct Session recall row), and rewrites the mention into a readable
@label. The sessionReferenceResolver service is registered by the plugin
when the deployment does not mount it (as in rc.6 profiles).@[title](dsh-session:<id>)) to the clipboard in one click.@deepseek-ai/dsh-session-reference pipeline: parallel source reads,
deduplication, budget bounds (≤3 sources / ≤64 KB), self-reference
rejection, and the untrusted-context warning.agent/pre-step, sessionReferenceResolver) and session-log formats;
may break after host upgrades.# Option 1: npm (recommended)
dsh plugin --profile web add dsh-session-ref
# Option 2: git checkout (lib/ is committed — no build step)
git clone https://github.com/lacemou/dsh-session-ref
cd dsh-session-ref
dsh plugin --profile web add /path/to/dsh-session-ref
# Option 3: local development
cd dsh-session-ref
npm install
npm run build
dsh plugin --profile web add /path/to/dsh-session-ref
Then restart the web process (Ctrl-C, then dsh web again) so the new
bundle is picked up.
Published as a git/npm bundle,
lib/is committed — no build step is needed on the installing side.
@[titleA](dsh-session:…).## Referenced sessions
snapshot alongside the readable @titleA.You can also write mentions by hand:
@[any label](dsh-session:<id>) or a bare dsh-session:<id>.
Self-references (referencing the current session) are rejected natively, as are messages exceeding 3 distinct sources or the snapshot byte budget — the message is passed through untouched in those cases.
npm run typecheck # tsc --noEmit
npm run test # vitest run (21 tests: host injection, URI encoding parity, client copy)
npm run build # tsc --noEmit + tsdown → lib/index.js (host) + lib/client.js (browser)
@ autocomplete yet (see M2 in the roadmap below; the MVP closes the loop
via copy-reference → paste).| Milestone | Scope |
|---|---|
| M2 | @ autocomplete in the composer: typing @ lists session candidates (from the native listCandidates, ranked by workspace affinity); keyboard selection inserts @[title](dsh-session:…) — upgrading copy-paste to a one-step mention |
| M3 | Cross-workspace directory browsing + reference granularity (whole session / user nodes / ranges) |
| M4 | Integration with dsh-crosstalk: reference + handoff |
| M5 | Contribute "copy session ID / copy reference" back to the upstream core UI |
Full design notes: SPEC.md (Chinese).
MIT