DeepSeek Harness Plugin

jermaine123123/agent-context-editor#deepseek-harness

Stars ★ 1 Category UI Enhancements Added 2026-08-19

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/messageuser;
  • reasoning and answer blocks from one turn → one ai record with separate #reasoning and #answer editable units;
  • tool/call + tool/result by callId → one tool record.

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.

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →