The architectural foundation reveals each project's priorities. Symphony is built on Elixir and the Erlang OTP platform, leveraging fault-tolerant supervision trees and lightweight BEAM processes designed for telecom-grade reliability. Each coding agent runs as a supervised process that automatically restarts on failure without affecting peers. Agent Orchestrator is written in TypeScript with 17 plugins and 3,200+ tests, designed as an extensible platform where the orchestrator itself is an AI agent making dynamic decisions about task routing and conflict resolution.
Workflow initiation follows opposite models. Symphony operates as a background daemon that continuously polls issue trackers — currently Linear — for new work items, automatically spawning coding agents when tickets appear. This pull-based model means Symphony runs autonomously without developer intervention once configured. Agent Orchestrator uses a push-based model initiated by the ao start command, which reads the codebase and backlog to decompose work into parallelizable tasks on demand.
Agent isolation strategies differ in granularity. Symphony assigns one agent per issue with a dedicated working directory, git branch, and context window, following a strict lifecycle from Todo through In Progress, Human Review, Merging, to Done. Agent Orchestrator creates isolated git worktrees for each parallel agent, enabling up to 30+ concurrent agents working on different aspects of the same feature with coordinated merge conflict resolution.
CI integration reveals different maturity levels. Agent Orchestrator has deep CI awareness — when a build fails, it injects failure logs directly into the relevant agent session for autonomous fixing, and when code review comments arrive, it routes them to the appropriate agent with full context. Symphony generates proof-of-work artifacts before landing code but relies on the standard PR review process rather than autonomous CI remediation.
The supervision and fault tolerance models reflect their language ecosystems. Symphony's OTP supervisors provide automatic crash recovery with configurable restart strategies, hot code reloading for updating orchestration logic without stopping agents, and built-in distributed computing support for multi-node deployments. Agent Orchestrator relies on JavaScript's event loop and plugin architecture for reliability, with process monitoring handled at the application level.
Scalability characteristics favor different team sizes. Agent Orchestrator is designed for maximum parallelism on a single machine, with benchmarks showing 30+ concurrent agents working on a shared codebase. Symphony's BEAM VM is designed for massive concurrency with thousands of lightweight processes, but its current implementation focuses on one-agent-per-issue rather than fine-grained task decomposition within a single feature.