Agent task specifications — one per concurrent agent
Tool registry mapping tool names to Tool instances.
This is the execution registry — it determines which tools can be
dispatched at runtime. It is distinct from the per-task task.tools
JSON schema that tells the model which tools are available.
The registry also controls terminalTool gating: if the registry contains only the terminal tool, agents are allowed to call it as their first action (e.g. reporter sub-agents). If the registry contains other tools, the first call must be non-terminal to prevent agents from reporting without doing work.
OptionalmaxMaximum tool-call turns per agent before forced termination
OptionalparamsSampling parameters applied to all agents
OptionalpressureKV pressure thresholds — tune per pool. Reporter pools typically use lower thresholds than research pools since they complete in a single terminal tool call. See PressureThresholds for tuning guidance.
OptionalterminalTool name that signals agent completion. When the model calls this tool, findings are extracted from arguments and the agent is marked done. The tool is intercepted — never dispatched to execute(). If omitted, agents complete only via stop token or hard-cut.
OptionaltraceEnable per-token entropy/surprisal on agent:produce events
Configuration for useAgentPool and runAgents