Files
deepseek-harness/packages/tasks
kingwl c97b1d025e Merge remote-tracking branch 'origin/master' into codex/web-queue-actions
# 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
2026-07-30 00:30:38 +08:00
..

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.