---
schema: formation.domain/v0.1
kind: domain
visibility: public
canonical_url: https://topologyindex.com/domains/operations.md
community_ranking: null
description: 'Task shapes common in operations, the published findings tagged with the domain and the starters in it. Hypotheses and attributed findings, never a ranking.'
domain: operations
domain_index: /domains/index.md
evaluable_here: []
findings:
  - citations:
      - compared_against: 'Multi-agent coordination under matched tools, prompts and compute'
        direction: mixed
        pattern: single_agent
      - compared_against: 'Single-agent systems and centralized, decentralized and hybrid multi-agent architectures'
        direction: mixed
        pattern: independent_workers
      - compared_against: 'Single-agent systems and independent, decentralized and hybrid multi-agent architectures'
        direction: mixed
        pattern: supervisor
      - compared_against: 'A single agent and centralized, independent and hybrid multi-agent architectures'
        direction: mixed
        pattern: mailbox_network
      - compared_against: 'A single agent under matched tools, prompts and compute'
        direction: mixed
        pattern: null
    source_id: arxiv:2512.08296
    url: https://arxiv.org/abs/2512.08296
  - citations:
      - compared_against: 'Single-agent solo setups'
        direction: mixed
        pattern: lane_swarm
      - compared_against: 'A single agent'
        direction: mixed
        pattern: dynamic_spawning
    source_id: arxiv:2308.10848
    url: https://arxiv.org/abs/2308.10848
  - citations:
      - compared_against: 'Published state-of-the-art agent systems on each benchmark'
        direction: no_clear_gain
        pattern: supervisor
      - compared_against: 'The full Magentic-One orchestrator with task and progress ledgers'
        direction: hurt
        pattern: blackboard
      - compared_against: 'The same agents coordinated by a basic group chat without ledgers'
        direction: helped
        pattern: shared_ledger
    source_id: arxiv:2411.04468
    url: https://arxiv.org/abs/2411.04468
  - citations:
      - compared_against: 'Single-agent approaches'
        direction: helped
        pattern: supervisor
    source_id: arxiv:2412.05449
    url: https://arxiv.org/abs/2412.05449
  - citations:
      - compared_against: 'ReAct-style sequential function calling'
        direction: helped
        pattern: planner_worker
    source_id: arxiv:2312.04511
    url: https://arxiv.org/abs/2312.04511
  - citations:
      - compared_against: 'Executor-only agents and planners without targeted training'
        direction: mixed
        pattern: planner_worker
    source_id: arxiv:2503.09572
    url: https://arxiv.org/abs/2503.09572
  - citations:
      - compared_against: 'ReAct, Reflexion, and the tree-search methods Tree of Thoughts and RAP'
        direction: helped
        pattern: tree_search
    source_id: arxiv:2310.04406
    url: https://arxiv.org/abs/2310.04406
  - citations:
      - compared_against: 'The same web agent without search'
        direction: helped
        pattern: tree_search
    source_id: arxiv:2407.01476
    url: https://arxiv.org/abs/2407.01476
  - citations:
      - compared_against: 'Handcrafted and automated multi-agent systems'
        direction: helped
        pattern: architecture_search
    source_id: arxiv:2502.04180
    url: https://arxiv.org/abs/2502.04180
findings_page: /domains/operations/findings.md
path: /domains/operations.md
pattern_index: /patterns/index.md
product_api_version: v1
schema_version: v0.1
shapes:
  - example: 'a workflow whose steps can be planned before acting'
    shape: needs_plan_before_editing
  - example: 'multi-step tool use whose next step depends on what the last one returned'
    shape: subtasks_unknown_until_started
  - example: 'requests that need different tools, such as a browser, files or a terminal'
    shape: specialist_per_input
  - example: 'a long-running operation that continues across sessions'
    shape: outlasts_one_context
starters:
  - name: board-coordinated-collective
    path: /starters/board-coordinated-collective/0.1.0.md
    task_classes:
      - operations.shared_project
    version: '0.1.0'
  - name: operations-specialist-router
    path: /starters/operations-specialist-router/0.1.0.md
    task_classes:
      - operations.tool_workflow
    version: '0.1.0'
task_class_prefix: operations.
title: 'Which multi-agent pattern for tool use and operations?'
---

# Which multi-agent pattern for tool use and operations?

**Short answer:** for a workflow whose steps can be planned before acting, start with [planner_worker](/patterns/planner_worker.md); avoid it when the plan cannot be written without touching the work.
Other shapes of operations start as the table below says.
Hypotheses from the [decision guide](/patterns/index.md), not a ranking, and nothing here is
measured; [published findings](/domains/operations/findings.md) keep the unfavourable ones.

Acting on an environment through tools: web navigation, desktop and terminal work, workplace tools and function calling.

The `operations` domain of the [task domains](/domains/index.md): task classes that start
with `operations.`.

## Task shapes common in this domain

Hypotheses about the work, each a row of the decision guide. Choose by the shape of your task,
not by the domain.

- `needs_plan_before_editing`: a workflow whose steps can be planned before acting
- `subtasks_unknown_until_started`: multi-step tool use whose next step depends on what the last one returned
- `specialist_per_input`: requests that need different tools, such as a browser, files or a terminal
- `outlasts_one_context`: a long-running operation that continues across sessions

Where to start by the shape of the task. Every row is a hypothesis to test against a strong
single-agent configuration, not a ranking: nothing in this table has been measured here.

| If the task… | Start with | Consider next | Avoid when |
| --- | --- | --- | --- |
| needs a plan before editing | [planner_worker](/patterns/planner_worker.md) | [supervisor](/patterns/supervisor.md) | the plan cannot be written without touching the work |
| has subtasks unknown until it starts | [supervisor](/patterns/supervisor.md) | [dynamic_spawning](/patterns/dynamic_spawning.md) | a fixed plan would do |
| needs a different specialist per input | [adaptive_routing](/patterns/adaptive_routing.md) | [supervisor](/patterns/supervisor.md) | the routing condition is not observable |
| outlasts one context window or session | [successor_handoff](/patterns/successor_handoff.md) | [shared_ledger](/patterns/shared_ledger.md) | rediscovery is cheaper than a handover |

## Published findings in this domain

Typed in the `findings` frontmatter: each study tagged with this domain once, in pattern
vocabulary order (never by direction), with every pattern page that cites it, how that
pattern fared ([`direction`](/docs/schemas/pattern/v0.1.md)) and what it was compared with.
Unfavourable results are included on purpose; none of this is evidence produced here. Each
finding in words, with its caveat and source: [/domains/operations/findings.md](/domains/operations/findings.md).

## Starters

Unvalidated starting points that declare a task class in this domain; nobody has run them
here.

- [board-coordinated-collective](/starters/board-coordinated-collective/0.1.0.md): A coordinator assigns lanes on a shared board, with mailboxes, signed control messages and a successor hand-off. Task classes: `operations.shared_project`.
- [operations-specialist-router](/starters/operations-specialist-router/0.1.0.md): A router classifies each incoming operation and hands it to the specialist with the matching tool or procedure. Task classes: `operations.tool_workflow`.

## What can be evaluated here

Nothing in this domain yet. This deployment evaluates only `coding.bugfix`; an empty domain is a valid state, not a gap to fill with claims.

## To find out for your workload

Nothing on this page says which arrangement will work for your task. The private
recommendation and evaluation routes compare complete configurations on your own workload;
the [integration guide](/docs/api/integration.md) says how to reach them.

[Reporting outcomes (limited rollout)](/docs/api/contributing.md): only for a pattern, starter or formation fetch that carried a `Use-Ticket` (or a "Report back" note at the end of the page), which invited credentials and some selected visiting agents receive; without one there is nothing to report and nothing else changes.
