PerryLink/dsh-background-agents13

dsh-background-agents

Interactive long-session background agents plus persistent multi-agent team rooms for DeepSeek Harness: durable continuable child agents with progress, steering and interruption, and cross-session team rooms with a message bus, shared task board, approval-gated handoffs and a shared timeline that survive DSH restarts.

AI Analysis

适合需要运行跨会话、可中断及持续跟进的复杂多智能体协同任务的用户。

Package
dsh-background-agents
Version
0.9.7
License
Apache-2.0
Last updated
Sep 12, 2026

Install

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:PerryLink/dsh-background-agents

Configuration

Every tunable is a validated Schemastery Config field — change it in cordis.yml, never in code. Only provider is required.

KeyDefaultMeaning
provider(required)ctx.subagents provider name for continuable starts (spawn)
autoReporttrueInject one progress line into the parent after each child turn
reportDeliveryquietquiet appends the line to the next model request; wakeup starts a parent turn when idle
reportThrottleMs15000Minimum gap between two progress injections for one child
reportSummaryMaxChars300Hard cap on the injected progress-line text (ellipsized)
resultMaxChars4000Hard cap on the bg_result text (ellipsized, flagged truncated)
maxBackgroundAgents4Hard cap on non-archived background agents per parent session
autoArchivetrueIdle-archive toggle; when false, the sweep never archives quiet children
idleTimeoutMinutes120Idle window after which a quiet child is archived (>= 1)
idleSweepIntervalMs60000Archive sweep period
maxLabelChars120Display-label cap (ellipsized)
childProvider(inherit)Provider route for child model requests
childModel(inherit)Model id for child model requests
maxChildDepth(none)Config ceiling for a start's max_depth argument
allowedChildTools(none)Allowlist for tool_filter names; empty/absent = no limit
maxRooms16Hard cap on team rooms across the profile
maxMembersPerRoom8Hard cap on members per room
maxRoomsPerMember4Hard cap on rooms one member session may join
busRetention200Bus messages kept per room
timelineRetention500Timeline events kept per room
taskRetention50Completed tasks kept per room
maxMessageChars4000Hard cap on one room message's text (rejected above, never truncated)
injectRoomBrieftrueInject the short room brief into member sessions (join + resume)
roomOpenTimeoutMs15000How long the team_rooms storage-domain open may take before every room operation fails loud (store-unavailable) instead of hanging
allowUnmarkedFactsfalseForce log-only fact events on hosts that drop the ignorable marker (dangerous: unmarked facts make sessions unresumable elsewhere); default is detect-and-skip
observabilitytruePer-agent cost/status observability toggle: capture one metrics fact per child turn (tokens, turn wall time, error flag) and aggregate them into each row's metrics totals for the cost panel; false disables the capture (the panel renders metrics as unavailable)
inbound.enabledfalseEnable the stdio JSON-RPC inbound bridge for external agent runtimes (OpenAI Agents SDK / CrewAI). Disabled by default (fail-closed).
inbound.command(none)External runtime launch command; when enabled and present, the plugin spawns it and listens for newline-delimited JSON-RPC notifications. Absent/unspawnable = the bridge stays dormant (logged).