Searchable and reversible management view for DeepSeek Harness reasoning and answer units, with type filters, batch actions, and sidecar-persisted hide state that preserves the original Session.
Install
# from a prebuilt release tarball
dsh plugin --profile web add "https://github.com/jermaine123123/agent-context-editor/releases/download/v0.1.0-alpha.1/context-editor-deepseek-harness-0.1.1.tgz"
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:jermaine123123/agent-context-editor#path:/adapters/deepseek-harness
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time. Only install sources you trust, and pin a commit (github:owner/repo#sha).
README
Agent Context Editor adds a searchable, hideable, and reversible management view for long DeepSeek Harness conversations while preserving the original Session. Long-running Coding Agent sessions accumulate reasoning, older answers, and tool output; this adapter keeps those records available while providing search, type filters, batch selection, hide, restore, and undo in a separate view.
This adapter targets the official DeepSeek Harness Developer Preview commit
47f943859bef60e4160492346772ded9b24f765a0 and installs as one bundle. The
package adds a Context Editor tab beside the normal Chat view for the same
Session; it never creates a second conversation.
Version 0.1.1 supports independent reasoning and answer units: each can
be searched, selected, hidden, restored and persisted separately. The original
Harness Session log and model input are not rewritten. View state is kept in
the context_editor storage-domain sidecar, and hiding currently does not
reduce token usage.
The browser view resolves navigator.languages when it opens: zh-* locales
use Chinese labels and all other locales use English. Only editor controls and
status messages are translated; Session content remains unchanged.
Install the tarball
From this directory, create the package and install the resulting file into a Harness profile:
node ./scripts/build-core.mjs
node ./scripts/build-client.mjs
npm pack --ignore-scripts
dsh plugin --profile <profile> add ./context-editor-deepseek-harness-0.1.1.tgz
On Windows, dsh may not be on PATH even when Harness is installed. Use
the profile's bundled launcher explicitly from PowerShell:
$env:DSH_HOME = '<harness-root>\.dsh'
& '<harness-root>\node_modules\.bin\dsh.cmd' plugin --profile web add '<package-path>\context-editor-deepseek-harness-0.1.1.tgz'
If the launcher reports that pnpm is missing, add the Harness-provided pnpm
directory to PATH for that PowerShell process, or install pnpm before running
the official dsh plugin command. For a same-version replacement, remove the
existing package from the profile before adding the new tarball so pnpm does
not retain an old hard-linked copy.
The supported acceptance command is the official dsh plugin --profile <profile> add <package> flow. During local iteration, a profile may instead
use the package's cordis.patch.yml through the Harness --patch option.
Host boundary
The Host reads complete persisted Session history and projects:
user/message→user;- reasoning and answer blocks from one turn → one
airecord with separate#reasoningand#answereditable units; tool/call+tool/resultbycallId→ onetoolrecord.
Stream chunks, system/request headers, summaries and compaction events do not
become editable records in this phase. Reasoning and answer units can be
selected and hidden independently; old record-level view events remain
compatible. Hide/restore/reset/undo events are
stored in the context_editor storage-domain sidecar, fenced by Session
createdAt/cwd. Session event logs and model input are never rewritten.
Current scope
Search, literal match counts, navigation, filters, placeholders, selection, Shift-selection, persistence and CAS/revision handling are included. While a Session is running the Host remains readable/searchable, while mutations are rejected until the settled log can be projected again. Context exclusion, Tool Output replacement, summaries, token budgets and request rewriting are deliberately deferred to the next phase.
The generated core-runtime.js is bundled from the canonical Core sources in
packages/context-editor-core. Rebuild it after changing Core and run the root
verification command before publishing.
Links
More in this category
zhu1090093659/dsh-web-ui#packages/dsh-web-ui-all★ 4634
Plugin and skin collection for the DSH Web UI: task board, Git graph, right-side panel, remote mobile UI, pet, live token stats, and a skin center.
omdsh-dev/DSH-better-sidebar★ 2203
Full sidebar workbench with file rendering and editing, terminal, Git, and subagents; third-party plugins can register new tabs.
ccch1mneyyy/dsh-TUI★ 1996
Claude Code-style full-screen terminal UI: pixel-whale header, live status line, and streaming thought expansion.
omdsh-dev/dsh-at-file★ 391
Codex-style `@file` mentions: search workspace files in the composer and attach their contents to prompts.
omdsh-dev/dsh-genui★ 223
Interactive UI components rendered inline in replies: layout, charts, forms, quizzes, mermaid, 3D scenes, and an action event loop back to the model.
huiliyi37/dsh-tianshu-tui★ 215
A terminal UI (TUI) for DeepSeek Harness.