mirror of
https://github.com/deepseek-ai/deepseek-harness.git
synced 2026-08-29 04:26:38 +00:00
Replace the standalone @deepseek-ai/dsh-acp-demo application with dsh --profile acp plus ordered example patches. The shipped acp-app bundle owns only the protocol bridge; every example overlay now targets shared dsh-base rows instead of copying a complete application tree. Move launcher responsibilities into the ACP snapshot harness: it materializes profile patches, links required packages, reserves stdout for JSON-RPC, observes spawn and drain failures, and escalates process teardown deterministically. The relocated control-surface fixture and the ACP/subagent integration tests now exercise the real CLI/profile path. This commit contains authored runtime, configuration, and test changes only. Generated transcript and projection churn is deliberately left for the next commit so reviewers can inspect the migration logic without hundreds of expected-output edits.
bundle/ — profile plugin bundles
English | 中文
Profile bundles: npm packages whose manifest declares "dsh": { "bundle": { "patch": "./cordis.patch.yml" } }, making them installable patch layers for dsh --profile compositions (profile contract). A bundle's substance is its patch list; some also ship runtime glue plugins their patch mounts.
The manifest declaration, not this directory, defines Bundle identity. Domain packages can carry their own optional Profile layer; the Codex and Claude Code subagent packages are directly installable examples.
| Package | Role | ctx key |
|---|---|---|
base/ |
The shared dsh core every profile applies first | — (patch only) |
acp-app/ |
Automation-only ACP stdio application over base | mounts the ACP bridge |
web-app/ |
Browser surface: web patch layer + runtime glue plugin | mounts rows |
headless/ |
Direct one-shot task mode over base, with no Host or Web layer | mounts headless-runner |
sdk-app/ |
SDK stdio JSON-RPC application over base | mounts the SDK server |
In-box bundles resolve from the dsh installation; out-of-tree bundles install into a profile through dsh plugin --profile <name> add <package>.