Files
deepseek-harness/packages/pty
Tianyi Cui afa38c4b2f Merge latest master into subagent policy inheritance
Retarget the feature branch to the current master tip without rewriting its existing review history. Keeping this as a dedicated merge checkpoint makes the later simplification diff attributable to the stacked child rather than mixing base movement with design changes.

Resolve the identified-message API drift in the feature tests by constructing complete user messages, reading the nested tool-result message shape, and adapting the prompt-submit listener signature. Preserve both sides of the user-approval conflict: master’s createUserMessage wrapper and the feature’s inherited-policy attribution.

Regenerate the Cordis and persistence catalogs, re-record the session README pair, and refresh the affected ACP/headless fixtures so derived artifacts describe the merged source rather than either parent in isolation.

Validated with the focused policy/session/persistence/query suites (430 tests), focused ACP/headless snapshots (3 tests), build, doc-sync (25 gates), lint, hygiene, and git diff checks.
2026-07-28 21:11:20 +08:00
..
2026-07-26 05:06:39 +08:00
2026-07-26 05:06:39 +08:00

pty/ — persistent PTY capability family

English | 中文

PTY stands for Pseudo-Terminal(伪终端). This capability provides persistent, owner-scoped terminal sessions for workflows that require state across tool calls or interactive stdin. PTY complements the one-shot bash and filesystem tools; it does not replace their stronger per-operation contracts.

Package Role ctx key
pty (@deepseek-ai/dsh-pty) Backend registry, branded ids, exact-Agent ownership, session operations, and awaited cleanup ctx.pty
pty-local (@deepseek-ai/dsh-pty-local) Local node-pty backend, readiness detection, bounded terminal state, sandboxing, and process-session supervision registers on ctx.pty
tool-pty (@deepseek-ai/dsh-tool-pty) Six model-facing tools and generic task integration for background sends registers on ctx.tools

The design and deferred boundaries live in the persistent PTY Agent Note.