deepseek-harness/packages/subagent
2026-07-28 14:41:51 +08:00
..
subagent refactor: rename the backend to dsh-subagent-dsh-sdk 2026-07-27 22:17:10 +08:00
subagent-acp Merge remote-tracking branch 'origin/worktree-process-service-seam' into subprocess-simpl/d-one-env-channel 2026-07-27 11:31:38 +08:00
subagent-dsh-sdk fix(subagent): align SDK stop reasons after master merge 2026-07-27 23:08:16 +08:00
subagent-fork Merge remote-tracking branch 'origin/master' into xtr/agent-loop-message-machine 2026-07-26 16:45:27 +08:00
subagent-inprocess refactor(session): remove synthetic log-only turns 2026-07-28 14:41:51 +08:00
subagent-spawn Merge remote-tracking branch 'origin/master' into xtr/agent-loop-message-machine 2026-07-27 19:55:55 +08:00
tool-subagent Merge remote-tracking branch 'origin/master' into worktree-tasks-service-seam 2026-07-26 20:28:37 +08:00
README.i18n.yaml refactor: rename the backend to dsh-subagent-dsh-sdk 2026-07-27 22:17:10 +08:00
README.md refactor: rename the backend to dsh-subagent-dsh-sdk 2026-07-27 22:17:10 +08:00
README.zh.md refactor: rename the backend to dsh-subagent-dsh-sdk 2026-07-27 22:17:10 +08:00

subagent/ — subagent capability family

English | 中文

The subagent seam: an agent delegating work to a child agent. Like the bash and llm families this is a capability seam (see capability seams) — but with one defining difference: multiple provider implementations coexist in one context, registered by name, rather than the single-implementation bash shape. The registry mirrors the LLM adapter registry.

Package Role ctx key
subagent/ Abstract subagent seam: named-provider registry + vocabulary ctx.subagents
subagent-inprocess/ Shared in-process run driver (no provider; one cleanup effect per run) —
subagent-spawn/ In-process backend: a fresh child agent (registers on ctx.subagents)
subagent-fork/ In-process backend: a child seeded with the parent's completed-turn prefix (registers on ctx.subagents)
subagent-acp/ Out-of-process backend: a child agent in a spawned subprocess, driven over ACP (registers on ctx.subagents)
subagent-dsh-sdk/ Out-of-process backend: a child harness runtime in a spawned subprocess, driven over stdio JSON-RPC through the TypeScript SDK client (registers on ctx.subagents)
tool-subagent/ Model-facing subagent delegation tool over ctx.subagents (registers on ctx.tools)

The interface lives at subagent/subagent/. The in-process subagent-spawn / subagent-fork backends share the subagent-inprocess driver (a library with no provider of its own — both depend on it, neither on the other), and the out-of-process subagent-acp / subagent-dsh-sdk backends spawn their children through the subprocess/ seam (the shared credential scrub, tree-scoped teardown, and dispose ladder). Tests replace only the child boundary with package-local fixtures.

The proposal and design rationale: .agents/notes/implemented/feature/2026-06-21-subagent-capability-seam.md.