Why OpenAI Built Symphony and Gave It Away for Free
Key Takeaway
Symphony solves the human-attention bottleneck by delegating agent orchestration to issue trackers like Linear, allowing OpenAI engineers to manage more than 5 concurrent Codex sessions without manual supervision.
Highlights
OpenAI engineers hit a human-attention bottleneck where supervising more than 3 to 5 Codex sessions concurrently caused productivity-killing context switching.
Symphony automates the agent-human workflow by using Linear issue statuses to trigger autonomous task execution and human review only when necessary.
The tool offers a non-traditional installation method where users provide a 2,000-line spec file to a coding agent to generate a custom version of the software.
Symphony supports custom hooks such as create-after for cloning repositories and run-after for staging files and pushing pull requests automatically.
A workflow configuration file uses YAML front matter to define API keys, active issue states, and the specific shell commands used to launch coding agents.
Timeline
Solving the human-attention bottleneck
The rapid pace of AI agents creates a fast-agent-slow-human problem where the human becomes the scaling limit. Symphony acts as an orchestration layer that monitors Linear boards for new issues. When a task status changes to To-Do, the system automatically initializes an agent to resolve the specific issue ID without manual hand-holding.
- Productivity drops significantly when a single engineer attempts to supervise more than 5 Codex sessions simultaneously.
- Symphony eliminates the need for constant human management by spinning up agents based on task board updates.
- Human intervention is reserved exclusively for the final review stage of a completed task.
Automated task execution and workspace management
In a live demonstration, the system identifies issue SYN7 in Linear and resolves a GraphQL validation error independently. It creates a dedicated directory for the project and populates the source folder with the requested files. This workflow ensures that every task has a traceable local footprint and an updated status on the project management board.
- Symphony polls Linear for tasks and creates local workspace directories matching the issue ID.
- The system successfully generates code for specific requests like a TypeScript and BUN Hello World app.
- Agents automatically update the status of Linear issues from To-Do to Done upon completion.
The agent-led installation process
The primary installation method involves an agent reading a 2,000-line specification to reconstruct the tool, which encourages users to take ownership of the code they generated. Examples include a version running on Charm CLI and another powered by the Claude SDK. The work profile serves as the instruction manual, defining the workspace root and the exact markdown prompt sent to the agent for every new issue.
- Users can build Symphony by feeding a massive spec file to a coding agent rather than using traditional build tools.
- This installation method results in unique versions of Symphony tailored to different languages and SDKs like Go, Python, or Claude.
- Configuration requires a Linear personal API key and a work profile file containing YAML front matter.
Custom hooks and production workflows
To make Symphony viable for real-world projects, users must implement hooks that handle version control tasks. A film emulation app example demonstrates how the system clones a repo, updates a readme file using wildcard characters, and submits a PR with a direct link to the Linear ticket. This automation covers the entire lifecycle from issue identification to the final pull request.
- Create-after hooks allow the system to clone existing repositories and check out new branches before work begins.
- Run-after hooks automate the staging, committing, and pushing of code to create pull requests.
- Integration with the UV package manager facilitates the polling of new issues for existing projects.
Centralized agent orchestration for teams
The vision for Symphony is a unified agent infrastructure where developers avoid isolated workflows. By centralizing the AI harness, teams can monitor how different features interact and avoid overlapping code changes. While competitors like Multica or Conductor offer more out-of-the-box scheduling and ease of use, Symphony is designed for those who need a modular, 'Pi-harness' style foundation to build their own specific features.
- Symphony provides a central harness for teams to share skills, tools, and plugins across multiple developers.
- The platform allows team members to see which prompts and features others are using in real-time.
- Compared to tools like Multica, Symphony functions as a bare-bones framework for building highly customized orchestration environments.
Description
OpenAI just open-sourced Symphony, a tool that orchestrates long-running coding agents by connecting them to your issue tracker like Linear. Instead of engineers manually supervising 3-5 Codex sessions at a time, Symphony lets agents autonomously claim tasks, spin up isolated workspaces, and only flag a human when there's something to review. The wildest part? The recommended installation method isn't cloning a repo, it's giving your coding agent a 2,000+ line spec and letting it build Symphony from scratch in whatever language it wants. In this video, we walk through what Symphony does, how to set it up, the bizarre-but-genius spec-driven install process, and whether it's actually ready for real projects. 🔗 Relevant Links Announcement article - https://openai.com/index/open-source-codex-orchestration-symphony/ GitHub repo - https://github.com/openai/symphony ❤️ More about us Radically better observability stack: https://betterstack.com/ Written tutorials: https://betterstack.com/community/ Example projects: https://github.com/BetterStackHQ 📱 Socials Twitter: https://twitter.com/betterstackhq Instagram: https://www.instagram.com/betterstackhq/ TikTok: https://www.tiktok.com/@betterstack LinkedIn: https://www.linkedin.com/company/betterstack
