n0pe-sled/context-before-user ↗★ 0

dsh-context-before-user

Order DSH-injected user-role context before the current human message 适合关注上下文注入顺序一致性的用户;仅调整消息拼接顺序,不改变工具与历史内容本身。

Package
dsh-context-before-user
Compatibility
Unverified
Harness peer range
0.1.1-rc.2
Cordis peer range
4.0.1
Version
0.1.0
Last updated
Sep 13, 2026

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:n0pe-sled/context-before-user

dsh-context-before-user

Host-only DeepSeek Harness plugin that keeps injected user-role context ahead of the current human turn. At the public agent/pre-step waterfall it awaits the normal DSH injectors, then stable-partitions the entering messages:

The resulting provider-visible order is:

system: assembled system prompt
...conversation history...
user: runtime-context snapshot
user: workspace instructions and skill catalog/instructions
user: current human request

The partition uses trusted provenance: messages with source.kind === "user" stay in their original order at the end, and all other step messages stay in their original order before them. Skill catalogs remain durable user-role context turns. The system prompt is neither copied nor wrapped in a ``; it remains solely in request/header.system and the provider's system slot.

The plugin uses agent/pre-step because loop-built llm/stream requests are deep-frozen. Reordering here remains model-visible and logged, preserving exact request reconstruction.

Existing durable history is never rewritten. The plugin fixes newly entering step messages, so start a fresh session when validating the complete initial transcript order.

Install

dsh plugin --profile web add ./context-before-user

Restart the profile after installation.

Verify

npm test

For an end-to-end check, export a harmless test session and confirm that the runtime snapshot and skill catalog remain separate user-role messages before the actual human request, and that the assembled system prompt appears only in the request header/system slot.