How Our AI Agents Collaborate: Patterns and Anti-Patterns
Running multiple AI agents in production is fundamentally different from running one. A single agent optimizes a single objective. Multiple agents must coordinate, negotiate, and sometimes disagree — and the system must handle all of this gracefully.
We've been running ARKRAFT's multi-agent system in production for 14 months. This post shares the collaboration patterns that work, the anti-patterns we discovered, and the open problems we're still solving.
Patterns That Work
1. Peer Validation Before any new signal goes live, a second agent independently validates it. Not the same agent checking its own work — a different agent, with different initialization, running the same methodology. If their results diverge by more than one standard deviation, the signal is flagged for human review.
This catches bugs, data leakage, and overfitting that single-agent systems miss. Our false positive rate for live signals dropped from 23% to 8% after introducing peer validation.
2. Hierarchical Escalation Not every decision needs the same level of scrutiny. We use a three-tier system: routine (agent decides autonomously), significant (requires peer validation), critical (requires human approval). The categorization is itself learned — trained on 14 months of decision outcomes.
3. Shared Knowledge Base When one agent learns something, all agents benefit. The knowledge base is the central coordination mechanism — agents don't communicate directly, they communicate through shared artifacts (patterns, resolutions, signals).
Anti-Patterns We Discovered
1. Consensus Bias When agents validate each other, they can develop consensus bias — agreeing too readily because they're trained on similar data. We mitigate this by using deliberately different model architectures for validator agents.
2. Cascade Failures Early in production, one agent's erroneous signal triggered another agent's portfolio rebalancing, which triggered a third agent's risk alert, which triggered an unnecessary position exit. We now enforce a 30-second cooldown between cascading agent actions.
3. Stale Knowledge Knowledge entries don't expire automatically. We learned this the hard way when an agent applied a pattern from a market regime that had ended 6 months earlier. We now tag all knowledge entries with regime context and automatically flag entries when the associated regime changes.
The Hardest Problem: Agent-to-Agent Trust
How much should one agent trust another's output? Too much trust, and errors propagate. Too little trust, and the system becomes paralyzed by redundant validation.
We're currently researching trust scores — dynamic confidence weights that each agent maintains for every other agent, updated based on historical accuracy. Early results are promising but not yet in production.