PLOWSHARE
03 / AGENT COLLABORATIONTHE RIGHT WAY TO WORK TOGETHER

Give specialists
room to work.

Ask a specialist for a result, exchange messages with an addressed assistant, convene a discussion or run a staged procedure. Choose the coordination contract that fits the task.

Start with
what you need.

These mechanisms share parts of the server’s scheduling and persistence. Each keeps its own authority, budget, history and return path.

Choose a coordination mechanism
You needUseWhat to follow
A specialist’s result for the current taskDelegationChild execution and returned outcome
An asynchronous exchange with an assistantDirect messagingInstance, delivery and correlated reply
Shared investigation by several specialistsSwarm boardTopic, posts, participant seats and shared reserve
A repeatable staged procedureOrchestrationPinned run, stages, questions, checks and record
Work with an external agent or serviceOutgoing work / adapterExisting request receipt and remote task status
Coordination guide ↗

Bring a specialist
into the task.

Authorized delegation gives a child agent a bounded assignment and returns its actual result to the caller.

A useful assignment

A coding assistant can ask a granted reviewer to inspect a specific change, with the relevant paths, requirements and expected output. The child keeps its own execution history and shares the parent’s model-call allowance.

Explicit inheritance

Delegate lists are declared. File authority cannot grow beyond the caller’s grants, and cancellation propagates through the work. A bot’s ability to receive messages does not make it an eligible delegated agent.

Delegation and grants ↗

Keep an exchange
connected.

An addressed agent or bot instance binds its account, project, definition and conversation. Persistent instances retain history across messages and bounded handling turns.

  1. Define the route

    For ordinary cross-project requests, the sending account needs Contributor-or-higher access to both projects and both directions of the route policy must permit the request. A named alias supplies the destination without granting additional access.

  2. Send and retain the receipt

    Sending commits a message and its owed wake. Acceptance is asynchronous; it does not block like delegation or prove that the recipient finished. The receiver handles it under its own definition, tools and allowance.

  3. Follow the correlated reply

    Expected replies return to the original address, with progress and final outcomes distinguished. Inspect delivery and handling state before considering another send.

Choose the history you want.

A plain route can use the default persistent instance. A retained route can pin a dedicated continuing conversation; a task-lifetime instance provides fresh bounded handling. Cross-project messages carry the permitted body, while private files, history and tool grants retain their own boundaries.

Messaging and project routing walkthrough ↗

Make space
for disagreement.

A swarm topic holds a shared question and discussion. Each participant has a private conversation and works under its own effective definition.

Build a team for the question

The shipped researcher, specification writer and critic are one starting team. Configure your own served agents for coding, operations or another purpose. Swarm membership preserves each member’s tools, scopes and approvals.

Keep the discussion inspectable

Read shared posts and participant activity, add bounded evidence, request focused subtopics and close with a cited resolution through the appropriate opener. A human-opened discussion has no automatic assistant opener to return a final answer to chat.

One topic tree, one reserve

Participants and subtopics draw from a shared model-call pot with a closing reserve. Served model pools need swarm capacity. A configured team alone does not establish available execution slots.

Recover the existing work

Quiet, capped, failed and exhausted are different states. A top-up raises the absolute root total; a retry resumes an eligible failed member in its existing conversation. Neither operation should be confused with opening another discussion.

A discussion’s resolution is a retained proposal or answer. Verify the actual tool effects separately when participants are authorized to change files or run commands.

Configure and use the swarm board ↗

Give repeated work
a procedure.

An orchestration keeps ordered stages, questions, acceptance gates and an inspectable record. Its conductor cannot finish simply by announcing completion.

Stages that leave evidence

Markdown procedures let a model conductor work through declared stages. Required commands, child-run gates and human acceptance checks establish evidence before completion. Permitted returns support bounded revision.

Deterministic sequencing

JavaScript procedures emit one validated host command at a time. The server journals command results and retained JSON state, while agents provide bounded judgments. The evaluator has no Node, arbitrary imports or direct network access.

Start once, inspect and continue.

A run pins its source and hash. Later definition edits affect future starts. Keep the request receipt and run handle, answer current questions and inspect partial results. Recovery uses the owning record rather than replaying uncertain effects.

Build a procedure of your own →