
DSH Turn Meta
☆ 0Opt-in per-step turn metadata for DeepSeek Harness — a minimal first-plugin template (dsh-plugin)
Get this plugin
Review the source, then continue to the publisher.
dsh plugin add @deepseek-ai/dsh-turn-meta@latestAbout this plugin
Source snapshot 8/13/2026dsh-turn-meta
English | 中文
Opt-in per-step turn metadata for DeepSeek Harness. Each entering agent step appends one compact, source-attributed header naming the session, the current turn and step, how many real user messages and tool results belong to the open turn, and how many turns preceded it.
[turn-meta] session=<id> turn=<turn> step=<step> user_msgs=<a> tool_results=<b> prior_turns=<p>
The package doubles as a minimal first-plugin template: it exercises the same seams every Harness plugin uses with the smallest surface that still shows them — a named-export function plugin (name / inject / Config / apply), schemastery-validated config, one ctx.on('agent/pre-step', …) hook with { prepend: true }, and a ./invariant companion that owns the durable message shape.
Install into a profile
The plugin is opt-in. Add it to a cordis.patch.yml overlay (or pass as --patch):
- insert:
- id: turn-meta
name: '@deepseek-ai/dsh-turn-meta'
config:
enabled: true
minStep: 1
Or, for a self-contained checkout, symlink the dependencies from your installed dsh profile and run the smoke:
node tests/smoke.mjs
smoke.mjs drives the real TypeScript source (Node ≥ 23 type stripping) against an installed dsh distribution; it needs @deepseek-ai/{cordis,dsh-agent,dsh-llm,dsh-session,schemastery} resolvable from the package's node_modules.
Verification status
- Runtime smoke against an installed dsh distribution: 6/6 assertions pass (injection, exact header text, disabled config, invalid-config load failure, disposal, proposed-message counting).
- Monorepo CI gates (vitest full suite, coverage, typecheck, doc-sync) require the deepseek-harness workspace install; they are expected to pass but have not been run here. The package also lives at
packages/context/turn-metain the harness repo for when external contributions open up.
License
MIT