dshbase

Plugin directory / Knowledge / dsh-context-proxy

dsh-context-proxy

Verified · install-tested on dsh EvilIrving

✓ Actively maintained Builds on 8 official DSH packages

View on GitHub ↗ ← Back to plugin directory

1Stars
0Forks
0Open issues
—Language
2026-08-14Last push
Cross-platformPlatform

What it does

On-demand context retrieval for DeepSeek Harness: context_query / context_slice / context_grep tools.

✅
Our take
Works — verified, early-stage project

On-demand context retrieval for DeepSeek Harness: context_query / context_slice / context_grep tools. It installs cleanly and boots without issues in our testing. It's early-stage but functional.

“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

README

dsh-context-proxy

Thin on-demand context-retrieval layer for the DeepSeek Harness.

Awesome DSH Plugin

Automatic truncation, spill-to-disk, compaction, and token metering are already
owned by output-retention, spill-policy, compaction-basic, and
session-query. This package adds only the missing piece: three model-facing
tools that read already-persisted history back on demand.

Install

dsh plugin --profile <name> add github:EvilIrving/dsh-context-proxy

Or, from a checkout:

dsh plugin --profile <name> add ./dsh-context-proxy

The bundle patch inserts one plugin row (dsh-context-proxy). sessionQuery
and subprocess are optional backends (ctx.get): without a sessionQuery
backend each tool degrades to an isError result instead of waiting forever.

Tools

Tool Backing seam Returns
context_query sessionQuery.filterEvents lightweight { seq, type, text } matches by seq/type/surface/text
context_slice sessionQuery.readEvent one event plus a bounded before/after window
context_grep subprocess (packaged rg) or sessionQuery.filterEvents matches with { text, citation }

Citations are replay-safe: context_query/context_slice cite session:<seq>
(rebuildable from the canonical log), and context_grep cites either a spill
path (path:line, fast local path) or session:<seq> (semantic-text fallback
when no spill path is supplied or available).

Config

export interface Config {
  readWindowDefault: number  // default before/after for context_slice (default 0)
  grepMaxBytes: number       // rg stdout in-memory cap (default 1 MiB)
  rgGraceMs: number          // rg termination grace (default 5000)
}

Dependencies

  • sessionQuery and subprocess are optional services read via
    ctx.get(...). A missing sessionQuery backend degrades each tool to an
    isError result (session query backend unavailable) instead of leaving the
    plugin waiting forever; the same applies to subprocess for context_grep
    with an explicit path.
  • tools is a hard dependency (inject).
  • The packaged ripgrep binary comes from @vscode/ripgrep — the same mechanism
    dsh-tool-fs-search uses — so no system rg install is required and no
    shell layer exists between the argv vector and ripgrep.

Model Experience

Request context and condition

What the model sees

Three tool schemas (context_query, context_slice, context_grep) are
registered into the agent's tool set. Each result is a compact JSON object of
matches/items plus citations; no prose is returned for the model to parse ids
out of.

Token effect

Zero-direct effect until a tool is invoked; each invocation's cost is bounded
by the query/slice window and the grepMaxBytes cap.

KV Cache effect

Append-only: tool results append to the surface; they never rewrite earlier
request tokens.

Known Limitations and Deferred Work

  • context_grep line parse is path:line:text — a spill path containing a
    newline (not expressible in the durable locator) would confuse the parser;
    absolute spill paths never contain one.
  • Fallback text scan is literal, not regex — when no spill path is
    supplied, context_grep falls back to sessionQuery's literal,
    case-insensitive, whitespace-flexible scan, not a regex search.
  • Bundle writing is not sandboxed — nothing here writes files; retrieval
    only reads through the seams.

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-context-proxy for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:EvilIrving/dsh-context-proxy

Headless (CLI) profile:

dsh plugin --profile headless add github:EvilIrving/dsh-context-proxy

Test report

Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.

Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in Knowledge

Browse all 7819 plugins →