Merge branch 'worktree-subagent-seam-pr2' into worktree-subagent-seam-pr2.5

This commit is contained in:
Tianyi Cui
2026-06-22 14:45:09 +08:00
130 changed files with 1019 additions and 421 deletions

View File

@@ -57,17 +57,21 @@
Use the subagent tool to delegate a focused, self-contained subtask
to a fresh child agent (it works in its own context and returns only
its final result) — give it a complete, standalone instruction.
its final result) — give it a complete, standalone instruction. Use
subagent_fork instead when the subtask needs THIS conversation's
context: the child inherits the log so far.
Check the [exit code: N] marker on every command; investigate
failures before moving on. Verify your work by running the code or
tests. Keep answers brief and factual.
# The subagent seam + an in-process spawn backend + the model-facing `subagent`
# tool, as leaf entries after the app (which provides ctx.agents/ctx.tools). The
# tool is bound to the `spawn` backend: a delegated task runs as a fresh child
# agent on this same process. (fork is available too — load dsh-subagent-fork
# and a second dsh-tool-subagent bound to it with a distinct toolName.)
# The subagent seam + BOTH in-process backends + two model-facing tools, as leaf
# entries after the app (which provides ctx.agents/ctx.tools). spawn (a fresh
# child) and fork (a child seeded with the parent's completed-turn prefix) are
# independent backends over the shared dsh-subagent-inprocess driver. Exposing
# both transports is pure config: load each backend, then load dsh-tool-subagent
# once per backend with a distinct toolName (the tool registry rejects a
# duplicate name) — no code change.
- id: subagent
name: '@deepseek-ai/dsh-subagent'
@@ -76,7 +80,19 @@
config:
providerName: spawn
- id: subagent-fork
name: '@deepseek-ai/dsh-subagent-fork'
config:
providerName: fork
- id: tool-subagent
name: '@deepseek-ai/dsh-tool-subagent'
config:
provider: spawn
toolName: subagent
- id: tool-subagent-fork
name: '@deepseek-ai/dsh-tool-subagent'
config:
provider: fork
toolName: subagent_fork