What delegation is
Delegation lets Hermes hand part of a job to a child agent through the delegate_task tool. A child starts with a fresh conversation: it receives only the goal and context the parent writes for it, plus the project's context files such as AGENTS.md (but not SOUL.md). It works through the task with its own tool calls and returns a result. Only that result comes back to your main conversation, which is why the official tips recommend delegation for parallel subtasks: the parent's context stays clean.
You can give one task, or a batch of tasks that run in parallel and come back as one consolidated message. Each batched task can carry its own goal, context, up to eight images and an optional output_schema, a JSON Schema the child's final answer must match. That last option is handy when you want structured results you can compare side by side.
What children can't do
Children inherit the parent's enabled toolsets, but a few tools are always blocked for them: clarify, memory, send_message and cronjob. In plain terms, a child cannot stop to ask you a question, cannot write to shared persistent memory, cannot message people and cannot schedule jobs. Write the goal and context as if briefing a contractor who can't call you back: include the file paths, constraints and what a good answer looks like.
By default children are leaf agents and cannot delegate further. delegation.max_spawn_depth is 1, so delegation is flat unless you raise it.
The settings that matter
All of these live under delegation: in config.yaml.
- max_concurrent_children: how many children run in parallel per batch (default 10). A batch larger than this returns an error rather than being silently truncated.
- max_spawn_depth: default 1. Raising it allows orchestrator children that spawn their own workers.
- max_iterations: tool-call budget per child (default 250). A child that hits it returns exit_reason: max_iterations and truncated: true.
- child_timeout_seconds: default 0, meaning no wall-clock cap; a positive value caps inactivity, not total runtime.
- model / provider: an optional cheaper or different model for every child in the batch.
- worktree_isolation: when true, each child working in a git repo gets its own worktree and branch, so parallel edits don't collide.
Keeping costs predictable
Parallel work multiplies tokens. The docs note that parallel batches typically account for most of a run's tokens, and warn that depth multiplies too: a depth of 3 with concurrency 3 can reach 27 concurrent leaf agents. Two practical levers: set delegation.model to a cheaper worker model while the main model handles planning, and keep max_spawn_depth at 1 unless you have a clear reason. Because delegate_task has no per-task model parameter, the delegation model applies to every child in a batch.
In one-shot runs (hermes chat -q with --oneshot), delegation.oneshot_max_children caps total spawns at 2 by default.
Watching and stopping children
Top-level delegations run in the background by default and return a handle immediately, and each task writes a live transcript you can follow. The parent can list, steer or stop its own children, though steering is queued rather than guaranteed.
Ordinary follow-up messages do not cancel background children. /stop, a Stop button, or closing or resetting the owning session does, and stopped children return status interrupted with their partial output. Note that a Hermes restart does not resume running children; their attempts are recorded as unknown, so rerun anything important.
When not to delegate
Delegation shines for independent, well-specified chunks: researching five vendors, reviewing several files, drafting variants. It is a poor fit for work that needs your input midway, work that must update memory, or tightly sequential steps where each depends on the last. For those, keep the work in the main session, or use /bg to run a single long task in a separate session without blocking your chat.
Related guides
- How to keep Hermes Agent costs down
- Hermes Agent stuck in a tool loop
- Turn a Hermes Agent use case into a repeatable workflow
Primary sources
Spotted something wrong or out of date? Tell us on X at @HermesWatcher (opens in a new tab) and we will fix it.
New Hermes Agent updates every day on X. Follow @HermesWatcher