Docs / Agents/ Agent Delegation

Agent Delegation

How agents delegate tasks to other agents in CRHQ — multi-agent collaboration for complex work.

Agents in CRHQ can delegate tasks to other agents. This enables multi-agent workflows where specialized agents handle what they're best at.

How Delegation Works

When an agent encounters a task that another agent is better suited for, it can:

  1. Create a child session with the target agent
  2. Send instructions describing what needs to be done
  3. Wait for results or continue working on other parts
  4. Receive the output when the delegated task completes

Delegation Types

Synchronous

The parent agent sends a task and waits for the result before continuing. Best for tasks where the parent needs the output to proceed.

Asynchronous

The parent agent sends a task and continues working. It receives a notification when the child agent completes. Best for independent subtasks.

When Delegation Happens

Agents decide to delegate based on their instructions and the skills assigned to them. Common patterns:

  • A General Assistant delegates coding tasks to a Developer agent
  • A Project Manager agent delegates research to a Researcher and writing to a Content Writer
  • A Developer delegates browser testing to an agent with browser automation skills

Parent-Child Sessions

Delegated tasks create child sessions linked to the parent. You can see:

  • Which session spawned the delegation
  • The status of the child task
  • Results passed back to the parent

Child sessions appear in your session list and can be viewed independently.

Configuring Delegation

Delegation is handled by the Delegation skill. Agents with this skill can create and manage delegated tasks. The skill instructions define how delegation works, including:

  • Which agents can be delegated to
  • How to format delegation requests
  • How results are returned
  • Async callback handling