terminal/

August 12, 2026 · View on GitHub

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.

PackageRolectx key
pty (@deepseek-ai/dsh-terminal)Backend registry, branded ids, exact-Agent ownership, session operations, and awaited cleanupctx.terminals
terminal-bash (@deepseek-ai/dsh-terminal-bash)Shell backend over ctx.subprocess.spawnTerminal: readiness detection, bounded terminal state, sandbox policy, and session operationsregisters on ctx.terminals
tool-terminal (@deepseek-ai/dsh-tool-terminal)Six model-facing tools and generic task integration for background sendsregisters on ctx.tools

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

The subsystem reference — ids, backend/session contracts, send readiness, bounded reads — is docs/subsystems/terminal.md; design and deferred boundaries in the persistent PTY Agent Note.