All plugins

DSH / BUNDLE / BUNDLES

dsh-acp-enhanced

v0.9.1grunmin / dsh-acp-enhancedbd77b57c42

InstallableBundlesBundles & other modulesCommunity · Topic auto-analysis

Overview

dsh-acp-enhanced

Enhanced ACP server for DeepSeek Harness: block-level streaming, usage/stat telemetry (cache hit rate, token speed, input/output tokens, context length, turns, tool timing), model & reasoning-effort switching, and permission-preset control over the ACP wire (Zed-friendly)

README / EN

Package documentation

Registry summary

Enhanced ACP server for DeepSeek Harness: block-level streaming, usage/stat telemetry (cache hit rate, token speed, input/output tokens, context length, turns, tool timing), model & reasoning-effort switching, and permission-preset control over the ACP wire (Zed-friendly)

dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.

Read the full README on GitHub

LIMITATIONS

Known limitations

Audio attachments are not supported (audio capability is not advertised), text streams at block granularity by default (`streamDeltas: true` opts into token-level streaming, see Features), one in-flight prompt per session. MCP supports stdio and streamable HTTP (legacy SSE / `acp` transports are not advertised). `session/fork` / `session/resume` are not implemented (capabilities undeclared, compliant clients will not call them). `session/delete` is not advertised either: the harness declares no public persistence delete, so persisted sessions are never removed by the bridge (see [Compatibility](#compatibility)). Multi-root workspaces are advertised and all roots are visible to the model, but dsh's sandbox policy resolves **one writable root per session** (the primary `cwd`, i.e. `session.header.cwd`) and the local sandboxes bind exactly that root for writes. Reads work in every root; under `workspace-write` a write under an additional root is denied first and needs escalation/approval, while `danger-full-access` writes everywhere. True multi-root write enforcement belongs in dsh core (`dsh-sandbox-policy` / `dsh-sandbox-local` would need a root list instead of a single root). Agent presets take over the model-facing rows: the shipped `cordis.patch.yml` disables the dsh-base rows a preset owns (tool-bash/fs/subagent/todo/web/… — exactly the official dsh-web-app/tui list minus `hmr`, kept version-agnostic across generations: a row a given generation does not ship is warned and skipped by the patch applier) and mounts the `agent-presets` roster (`standard` default; `ptc`/`minimal`/`cordis` ship with the dsh CLI; your own presets are declared as `@deepseek-ai/dsh-agent-preset` rows from 0.1.7 on — see [Your own presets](#your-own-presets)). The bundle's own patch applies automatically (package.json `dsh.bundle.patch`) — do **not** copy it into the profile's user-layer `cordis.patch.yml`, or the loader rejects the duplicate entry ids at boot. When **upgrading** a profile that already carries a customized user-layer patch, keep only your custom row configs there (e.g. `includeAllProviders: true` on the acp-enhanced row, restating provider/model/preset since patch entries replace whole rows, they do not merge). A session resumes under the preset its own log records (the last `agent-preset/selected` event, else the creation header); only a log that recorded none falls back to the roster's default.