request-frame-preview
Manifest validPreview and download the exact request frame (system prompt + tools_list + wire messages) that DeepSeek Harness sends to the model
request-frame-preview
Preview and download the exact request frame that DeepSeek Harness sends to
the model for a session: the full system prompt, the tool declarations
(tools), and the wire message array (system → user / assistant /
tool-result in order), rebuilt from the session log.
A small DSH plugin with a host half (one read-only HTTP endpoint) and a browser half (a "请求预览 / Request preview" button in the session header).
Install
dsh plugin --profile web add request-frame-preview
or from a local checkout:
dsh plugin --profile web add /path/to/request-frame-preview
Restart dsh web (or let the plugin market restart it) so the bundle is
loaded. A 请求预览 button then appears in the session header utilities,
next to the built-in "Session log" button.
What it does
Click the button to open an overlay showing, top to bottom:
- ① system prompt — message
#0of the wire array (collapsed by default). - ② tools — the tool declarations carried by the request, one
toolrow each; click a row to see its parameters. - ③ messages — the wire message array from
#1on, withuser,assistant,tool-resultchips,tool_call_ids, reasoning content andtool_callsexpanded inline.
下载 JSON / Download JSON saves the whole frame (config + system + tools
with full parameter schemas + messages) as dsh-request-<sessionId>.json.
How the data is produced
- Live session first:
requestHeader()andderiveMessages()— the very same folds the agent loop reads when it builds each request. - Cold session fallback:
sessionQuery.readSession+readSurfacefrom the durable log. - Wire expansion mirrors the DeepSeek chat-completions adapter's text path:
the system prompt becomes message
#0; eachtool-resultblock becomes its ownrole: "tool"message; assistant text, reasoning andtool_callsare split into their wire fields.
Layout
package.json dsh.bundle.patch -> ./cordis.patch.yml; dsh.client.platform web
cordis.patch.yml inserts the plugin row into the profile layer stack
lib/index.js host half: registers GET /request-frame-preview/api
lib/client.js browser half (window.__ModuleLoader__ bundle)
Security notes
- The endpoint is read-only (
GET/HEAD) and serves no state mutation. - Cross-origin requests are rejected when an
Originheader is present and does not matchHost; requests withoutOrigin(curl,<a download>) are allowed, mirroringdshmarket's GET route convention. - This is a debugging aid: it exposes the session's full system prompt, tool schemas and message contents to anyone who can reach the endpoint. The host endpoint is not a security boundary.
Compatibility
Versions
| Latest version | Published | Size |
|---|---|---|
| 0.1.0 | — | — |
| 0.1.1 | — | — |
Comments
Loading…
Similar plugins
Prompt, reasoning and response translation for DeepSeek Harness.
★ 0
MIT
TypeScript
dsh plugin --profile web add dsh-prompt-translationby Sama05
Frosted-glass download progress overlay for DeepSeek Harness (DSH)
★ 4
MIT
JavaScript
Oct 28, 2026
dsh plugin --profile web add @local/dsh-download-progressby NonchalantLudens
Project directory preview for the DeepSeek Harness web GUI — details-panel file tree + read-only file preview via a fenced /dirpreview command
★ 0
JavaScript
Aug 26, 2026
dsh plugin --profile web add dsh-side-dirby CoachLeong
DeepSeek Harness plugin: desktop notifications when the model starts, finishes, or needs your input (approval / question / plan review).
★ 0
MIT
TypeScript
Aug 16, 2026
dsh plugin --profile web add dsh-notifyby baldovinmarques391-design
Turn desktop operation into discrete tool calls that each return the frames captured around the call.
★ 0
MIT
JavaScript
Oct 3, 2026
dsh plugin --profile web add dsh-computer-controlby XuezuoYS
这是一个适用于 Deepseek Harness 的插件,向用户提供 GUI 下自定义且区分模型的发送 Prompt 注入功能。
★ 0
MIT
JavaScript
Oct 24, 2026
dsh plugin --profile web add dsh-prompt-inject