# Conflicts: # apps/web/tsconfig.json # docs/architecture.i18n.yaml # docs/event-producer-consumer.md # packages/client/runtime/README.i18n.yaml # packages/client/tsdown.client.ts # packages/client/ui-conversation/README.i18n.yaml # packages/core/agent-loop/README.i18n.yaml # packages/core/agent/README.i18n.yaml # packages/core/agent/README.zh.md # packages/host/apiproxy/README.i18n.yaml # tsconfig.host.json
tasks/ — background task capability family
English | 中文
The shared home for background-task ids, owner isolation, reads, cancellation, waiting, and completion notices. Bash, subagents, and future long-running tools use one model-facing protocol. See the background-task runtime Agent Note and the task-registry seam Agent Note.
| Package | ctx key | Role |
|---|---|---|
tasks (@deepseek-ai/dsh-tasks) |
ctx.tasks |
The registry seam: branded <kind>-N ids, the owner-fenced read/kill/wait/list contract, snapshot vocabulary, the attachSurface misconfiguration fence, and the snapshot invariant companion |
tasks-local (@deepseek-ai/dsh-tasks-local) |
— | The process-local registry implementation: in-memory records, first-wins settlement bookkeeping, and the awaited owner-cleanup and teardown paths |
tool-tasks (@deepseek-ai/dsh-tool-tasks) |
— | The model-facing control surface: task_output, task_list, task_kill, the completion-notice injection, and the background-habit prompt section |
The registry owns state across producer or surface reloads; the tool package owns presentation. Producers register execution hooks through ctx.tasks.start and own whether their config exposes run_in_background.