In multi-agent systems—or in workflows where humans and agents collaborate—conflict is inevitable. Two agents propose different implementations. The agent says “ship it”; the human says “this is wrong.” The design agent and the code agent produce outputs that don’t align.

How you resolve those conflicts determines whether the system is usable or chaotic. The patterns that work borrow from human conflict resolution—with adaptations for the agent context.

Types of Conflict

Agent vs. agent.
Two agents produce incompatible outputs. Different architectures, different approaches, different interpretations of the same input. One may be right; both may be wrong; they may be optimizing for different things.

Agent vs. human.
The agent is confident; the human disagrees. Or the human wants X and the agent keeps producing Y. The tension between automation and human judgment surfaces here.

Agent vs. constraints.
The agent’s output violates a rule—security, compliance, style guide. The agent “wanted” to do something; the system says no. Conflict between agent intent and guardrails.

Resolution Patterns

1. Human as arbiter.
When agents disagree, a human decides. The human sees both outputs, applies judgment, and picks (or synthesizes). This works when the decision frequency is low. When it’s high, the human becomes the bottleneck. Use for high-stakes or rare conflicts.

2. Rules and precedence.
Define ahead of time: “Agent A wins on architecture; Agent B wins on implementation details.” Or “human overrides agent on security.” Explicit precedence reduces ambiguity but can feel rigid. Use when the hierarchy is clear and stable.

3. Voting and consensus.
Multiple agents (or agent + human) vote. Majority wins. Works for some decisions; fails for others where the right answer isn’t democratic. Use cautiously—often a poor fit for technical decisions.

4. Escalation and iteration.
Conflict triggers a retry: “agents disagreed; human provides clarification; agents try again with refined input.” The loop continues until resolution. Good when the conflict is resolvable with better context. Bad when it’s fundamental (e.g., genuinely incompatible goals).

5. Fallback to human execution.
When conflict can’t be resolved by the agents, the human does the work. The agent steps back. Use when the cost of wrong automation exceeds the cost of manual work.

Designing for Conflict

Don’t assume conflicts won’t happen. Design the resolution protocol ahead of time: who decides what, when, and how. Document it. Practice it. The teams that handle agent conflict well are the ones that expected it and built for it.