cd /news/ai-agents/hermes-agent-adds-asynchronous-subag… · home topics ai-agents article
[ARTICLE · art-29243] src=marktechpost.com ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

Hermes Agent Adds Asynchronous Subagents, So Delegated Work No Longer Blocks the Parent Chat

Nous Research has updated its open-source Hermes Agent to support asynchronous subagents, allowing delegated tasks to run in the background without blocking the parent chat. The update introduces a new async_delegation toolset that enables spawning, checking, steering, collecting, and canceling background agents. This change unblocks workflows where users need to run long tasks while continuing to interact with the parent agent.

read4 min views1 publishedJun 16, 2026

Nous Research has shipped a change to Hermes Agent. Its delegate tool can now run subagents asynchronously. Per the announcement, delegated work no longer blocks the parent chat.

Hermes Agent is an open-source personal agent from Nous Research. A parent agent can spawn child agents, called subagents, to fan out work. Until now, that delegation made you wait.

The update was announced on X by Nous Research and co-founder Teknium. Existing users enable it by running hermes update

.

What are Subagents

The delegation tool is delegate_task

. It spawns a subagent, which is an isolated child agent. Each child gets its own conversation, terminal session, and toolset.

Only the final summary returns to the parent. The parent’s context never sees the child’s intermediate tool calls or reasoning. That keeps the parent’s context window small.

Isolation is strict. Subagents start with a completely fresh conversation. They have no knowledge of the parent’s history. The parent must pass everything through the goal

and context

fields.

Subagents inherit the parent’s API key, provider configuration, and credential pool. That credential pool enables key rotation on rate limits. You can route subagents to a cheaper model through config.yaml

.

What Was Blocking, and What Changed

In source, delegate_task

is synchronous. The parent blocks inside the tool call until every child completes. Your chat stays frozen during that wait.

That design prevented several workflows. You could not start a long agent and keep working. You could not check in on a run or steer it mid-flight.

Nous built the non-blocking path in the open. Issue #5586 adds an async_delegation

toolset. It spawns a background agent and returns a task_id

immediately. The announcement confirms async subagents are now available.

The async tools cover the full lifecycle:

delegate_task_async

— spawn a background agent, return atask_id

check_task

— non-blocking status plus recent outputsteer_task

— inject a message into a running taskcollect_task

— block until done, then return the full resultcancel_task

— stop a running tasklist_tasks

— all async tasks in the session

Background agents run as in-process threads. They reuse the same AIAgent

machinery, credentials, and toolsets as delegate_task

.

Synchronous vs Asynchronous Delegation

Dimension Synchronous delegate_task Asynchronous delegation (async_delegation , #5586)
Parent chat Blocks until all children finish Returns a task_id immediately; chat stays free
Control while running None — you wait Check status, steer, collect, or cancel per task
Execution Parent waits inside the tool call Background in-process threads
Context cost Only the final summary returns Only the final summary returns
Isolation Fresh conversation per child Fresh conversation per child
Best for Quick fan-out you wait on Long tasks you run alongside the chat
Durability Not durable across turns Single-session; ACP (#4949) targets cross-turn

Code: Spawning and Steering

A synchronous batch spawns children in parallel and waits. Concurrency is capped by delegation.max_concurrent_children

, which defaults to 3.

delegate_task(tasks=[
    {"goal": "Research topic A", "toolsets": ["web"]},
    {"goal": "Fix the build",   "toolsets": ["terminal", "file"]},
])

The async toolset from issue #5586 returns control immediately.

t1 = delegate_task_async(goal="Research topic A")
t2 = delegate_task_async(goal="Research topic B")

check_task(t1["task_id"])                       # status, without blocking
steer_task(t2["task_id"], "Use post-2024 sources only")
results = [collect_task(t["task_id"]) for t in (t1, t2)]

Use Cases With Examples

  • Long research alongside work. Start a subagent on a market scan. Keep drafting in the main chat while it runs.
  • Parallel approach evaluation. Spawn three subagents to test three search backends. Each stays isolated, so evaluations do not cross-contaminate.
  • Background coding tasks. Delegate a multi-file refactor to a subagent. Review other files yourself while it works.
  • Monitoring runs. The TUI ships an /agents

overlay, aliased/tasks

. It shows a live tree of running and finished subagents.

Key Takeaways

  • Hermes Agent now supports asynchronous subagents; the delegate tool no longer blocks the parent chat.
  • Non-blocking delegation ships via the async_delegation

toolset, tracked in issue #5586. - Async tools cover the lifecycle: spawn, check, steer, collect, cancel, and list tasks.

  • Subagents stay isolated; only the final summary returns, keeping the parent context small.
  • It runs in-process and single-session; existing users enable it with hermes update

.

Sources

  • Teknium on X — announcement of asynchronous subagents: https://x.com/Teknium/status/2066619275989991861
  • Nous Research on X: https://x.com/NousResearch/status/2066619860852134384
  • Hermes Agent docs, Subagent Delegation: https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation
  • Hermes Agent docs, Delegation & Parallel Work: https://hermes-agent.nousresearch.com/docs/guides/delegation-patterns
  • GitHub issue #5586, non-blocking background agent delegation (async_delegation toolset): https://github.com/NousResearch/hermes-agent/issues/5586
  • GitHub issue #4949, persistent ACP background subagents (referenced in #5586)
  • NousResearch/hermes-agent repository: https://github.com/NousResearch/hermes-agent

Michal Sutter is a data science professional with a Master of Science in Data Science from the University of Padova. With a solid foundation in statistical analysis, machine learning, and data engineering, Michal excels at transforming complex datasets into actionable insights.

  • Michal Sutter
  • Michal Sutter
  • Michal Sutter
  • Michal Sutter
  • Michal Sutter
── more in #ai-agents 4 stories · sorted by recency
── more on @nous research 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/hermes-agent-adds-as…] indexed:0 read:4min 2026-06-16 ·