Tianyi Cui 8d111161de Merge remote-tracking branch 'origin/master' into worktree-subagent-seam-pr1 4 月之前
..
src 1a81f2cccd Add subagent capability seam: interface, mock backend, model-facing tool 4 月之前
tests 25eccdaedc Fix review findings: lifecycle containment, configurable tool name, coverage, type catalog 4 月之前
README.md 1a81f2cccd Add subagent capability seam: interface, mock backend, model-facing tool 4 月之前
package.json 8d111161de Merge remote-tracking branch 'origin/master' into worktree-subagent-seam-pr1 4 月之前
tsconfig.json 8d111161de Merge remote-tracking branch 'origin/master' into worktree-subagent-seam-pr1 4 月之前

README.md

@deepseek-ai/dsh-subagent-mock

A scripted SubagentProvider for testing the subagent seam without a model or a real child agent — the subagent analog of dsh-llm-replay.

It lets a test drive ctx.subagents and the model-facing dsh-tool-subagent through the real cordis Loader / export path, exercising provider registration, start-time capability validation, the run lifecycle (result / cancel / dispose), and the structured-output branch — all deterministically and keylessly.

Usage

Load it as a plugin (functional shape: name/inject/Config/apply, no default). Config (all optional):

Key Default Meaning
name mock Registry name to register the provider under.
reply mock subagent reply The scripted child's final answer text.
stopReason completed The stop reason result settles with.
capabilities all true Which start-time capabilities (outputSchema/depthLimit/toolFilter) the provider advertises.
structured { reply } Structured value surfaced when a request carries an outputSchema and the capability is on.

A cancel() issued before result settles flips the stop reason to aborted, so the cancellation path is observable.