Files
deepseek-harness/packages/subprocess
imccyu 8c1e8d9890 build(release): publish the dsh family publicly
Every release member now declares publishConfig.access: public, so the scope no
longer mixes levels: the 221 packages/*/* and apps/* manifests join the vendored
framework and the native packages.

check-workspace-constraints drops the per-sequence expectation and holds every
release member to public, which is what stops a member from drifting back.

Access is a property of the package, not of a version: the dsh packages already
published as restricted become world-readable at their next publication.
2026-08-13 18:49:32 +08:00
..

subprocess/ — subprocess capability family

English | 中文

The shared process substrate for one execution world: executable lookup, fully-specified managed child-process trees with raw or collected stdio, and one deep terminal-process primitive that owns PTY allocation, foreground groups, and provider-observable session cleanup. Command defaulting, shell semantics, deadlines, protocol framing, readiness, and presentation stay with consumers — the bash executors, LSP host, PTY shell backend, and ACP subagent backend. See the subprocess seam Agent Note.

Package ctx key Role
subprocess (@deepseek-ai/dsh-subprocess) ctx.subprocess Service Definition: executable lookup, ordinary managed spawns, the terminal-process primitive, handle lifecycles, and shared environment/output vocabulary
subprocess-local (@deepseek-ai/dsh-subprocess-local) Local Service Provider: detached process trees, bounded collection/spill, node-pty, foreground/session inspection, tree signalling, and terminate-and-join disposal

The service owns process lifetime across consumer reloads; consumers own what a process means (a bash command, a future non-shell runner) and every default that shapes one.

The subsystem reference — spawn specs, output readers, outcomes, the DSH_* environment — is docs/subsystems/subprocess.md; the seam decision in the subprocess seam Agent Note.