deepseek-harness/packages/support/subagent-mock
2026-07-13 23:27:00 +08:00
..
src docs: rebalance prose cleanup and add trimming skill 2026-07-13 23:27:00 +08:00
tests docs: rebalance prose cleanup and add trimming skill 2026-07-13 23:27:00 +08:00
package.json Merge remote-tracking branch 'origin/master' into worktree-subagent-seam-pr1 2026-06-22 14:35:35 +08:00
README.md refactor(subagent): unify async readiness and cancellation 2026-07-12 22:41:59 +08:00
tsconfig.json Merge remote-tracking branch 'origin/master' into worktree-subagent-seam-pr1 2026-06-22 14:35:35 +08:00

@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, async start, start-time capability validation, required-signal cancellation, result, dispose, and structured output 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, and persona) the provider advertises.
inheritsParentContext false Conversation-history descriptor: false means fresh, while true exercises seeded/fork wording. It says nothing about tool, service, scope, or authority inheritance.
structured { reply } Structured value surfaced when a request carries an outputSchema and the capability is on.

Aborting the required request signal or disposing before result settles flips the stop reason to aborted, so both holder-facing cancellation paths are observable.